Data Troubleshooting
How to salvage your data
Section titled “How to salvage your data”In most cases of device malfunction your data is safe. Many problems can be easily resolved by doing a reflash of the microSD card, and the RoninDojo software will take care of the rest.
This means you most likely will not need to redownload the entire bitcoin blockchain.
How to use a backup drive
Section titled “How to use a backup drive”By following the guide below, you will be able to use a secondary drive to store a copy of the blockchain from your RoninDojo. This method can be used to transfer data between two different RoninDojos. Also if RoninDojo ever has a massive failure, having this data on hand will reduce your setup time when starting over.
If done correctly, you could reduce setup time from days to just a few hours. This is because the blockchain takes such a long time to download when starting over.
How to setup new backup drive
Section titled “How to setup new backup drive”-
Connect your new backup SSD to your RoninDojo. Go to the RoninCLI command line menu and select the format new backup drive option.
System→Disk Storage→Format & Mount New Backup Drive -
Your new backup drive is now formatted and ready. Please proceed to the steps below.
How to send data to backup drive
Section titled “How to send data to backup drive”-
Connect your backup SSD or HDD to your RoninDojo. Go to the RoninCLI and select the option to send data to the backup drive.
Dojo→Next Page→Send Block Data to Backup -
After the data has finished sending your drive will be unmounted and it is safe to disconnect.
-
You can also use this option anytime to add new blockchain data to an already existing backup drive, as the blockchain grows in size over time.
How to receive data from backup drive
Section titled “How to receive data from backup drive”-
Connect your backup SSD or HDD to your RoninDojo. Go back to the RoninCLI and select the option to receive data from the backup drive.
Dojo→Next Page→Receive Block Data from Backup -
Please note that your node will not be fully functional until the indexer compaction is complete. This takes about 10 hours after the Blockchain Data is finished syncing.
How to use backup drive for recovery
Section titled “How to use backup drive for recovery”If you plug in your secondary backup drive that contains your data while setting up a device that has a wiped SSD or new SSD, then your backup drive will automatically be detected and used to salvage your RoninDojo data. Expect the data transfer to take a long time — come back later to check the RoninUI and see if it has completed.
How to copy data from other nodes to RoninDojo
Section titled “How to copy data from other nodes to RoninDojo”Want to copy the blockchain data from an existing bitcoin node to your RoninDojo bitcoin node?
We will show you how to use the rsync command plus a few others so you can avoid redownloading the chain. Advanced users should be able to adapt these commands to meet their needs.
-
RoninDojo: SSH remote login into your RoninCLI. Record the IP address for your RoninDojo bitcoin node and save it for later in this guide.
-
RoninDojo: Make sure to stop Dojo before progressing, otherwise there can be errors.
-
Other Node: SSH remote login into your other node. In this example the user has a Mynode which will be called “other node”.
-
Other Node: Make sure to stop bitcoind on your other node before progressing, otherwise there can be errors.
-
Other Node: Locate the block data directory using the
findcommand.Terminal window find / -name blocks -
Other Node: For example if you are using Mynode, then you might get an output like this.
Terminal window /mnt/hdd/mynode/bitcoin/blocks -
RoninDojo: Run the following command on your RoninDojo to delete any existing block data just in case.
Terminal window sudo rm -rf /mnt/ssd/docker/volumes/my-dojo_data-bitcoind/_data/{blocks,chainstate,indexes} -
RoninDojo: Verify the backup directory exists, and if it is not found the
mkdircommand is used to create it.Terminal window ls /mnt/ssd/backup || sudo mkdir /mnt/ssd/backup -
RoninDojo: Change the backup directory to be temporarily owned by user ronin.
Terminal window sudo chown ronin:ronin /mnt/ssd/backup -
Other Node: Run the
rsynccommand which has been adapted with the proper file paths, username, and IP address of your RoninDojo.Terminal window sudo rsync -av /mnt/hdd/mynode/bitcoin/{blocks,chainstate,indexes} ronin@192.168.X.X:/mnt/ssd/backup -
Other Node: The
rsyncwill take a while to run so please be patient until the transfer completes. Once the transfer is complete you can restore your other node to usual operations. -
RoninDojo: Once the transfer is complete, run the move command to get the
blockschainstateindexesrelocated to the bitcoind data directory.Terminal window sudo mv /mnt/ssd/backup/{blocks,chainstate,indexes} /mnt/ssd/docker/volumes/my-dojo_data-bitcoind/_data/ -
RoninDojo: Change the permissions for the
blockschainstateindexesdirectories.Terminal window sudo chown -R 1105:1108 /mnt/ssd/docker/volumes/my-dojo_data-bitcoind/_data/{blocks,chainstate,indexes} -
RoninDojo: Restore ownership of the
backupdirectory to the root user.Terminal window sudo chown root:root /mnt/ssd/backup -
RoninDojo: Start your RoninDojo from the RoninCLI menu, and check on the logs to make sure everything looks healthy.
Want to download a copy of the blockchain on that speedy Windows gaming computer and transfer it to your RoninDojo on the same local network?
We know the blockchain takes a while to download when starting fresh without a backup copy, and want to give power users with high performance computers other options.
-
Windows 11: Download Bitcoin Core, sync the blockchain, and download WinSCP. The blockchain will take a few hours to sync.
-
Windows 11: Once synchronized, make sure to close Bitcoin Core before progressing, otherwise there can be errors.
-
Windows 11: SSH remote login into your RoninCLI device using the Windows command prompt.
-
RoninDojo: Make sure to stop RoninDojo before progressing, otherwise there can be errors.
-
RoninDojo: Verify the backup directory exists. If it is not found an error will appear, and the
mkdircommand will create it.Terminal window ls /mnt/ssd/backup || sudo mkdir /mnt/ssd/backup -
RoninDojo: Change the backup directory to be temporarily owned by user ronin.
Terminal window sudo chown ronin:ronin /mnt/ssd/backup -
Windows 11: Open WinSCP and type in the hostname of your RoninDojo (local IP address), username (usually ronin), and password (same as your SSH password).
-
Windows 11: Go to
C:\Users\Username\Appdata\Roaming\Bitcoinin Windows file explorer. -
Windows 11: In WinSCP, go to
/mnt/ssd/backupon your RoninDojo device, then copy over theblockschainstateindexesdirectories from Windows to the RoninDojo device. Wait a couple hours for the transfer to finish. -
Windows 11: Once the transfer is finished you can exit WinSCP.
-
RoninDojo: Delete any existing block data just in case.
Terminal window sudo rm -rf /mnt/ssd/docker/volumes/my-dojo_data-bitcoind/_data/{blocks,chainstate,indexes} -
RoninDojo: Run the move command to get the
blockschainstateindexesrelocated to the bitcoind data directory.Terminal window sudo mv /mnt/ssd/backup/{blocks,chainstate,indexes} /mnt/ssd/docker/volumes/my-dojo_data-bitcoind/_data/ -
RoninDojo: Change the permissions for the
blockschainstateindexesdirectories.Terminal window sudo chown -R 1105:1108 /mnt/ssd/docker/volumes/my-dojo_data-bitcoind/_data/{blocks,chainstate,indexes} -
RoninDojo: Check if permissions are set properly.
Terminal window sudo ls -la /mnt/ssd/docker/volumes/my-dojo_data-bitcoind/_data/ | egrep '(blocks|chainstate|indexes)'You should see something similar to the following if permissions are correct:
Terminal window drwx------ 3 1105 1108 135168 Jul 10 04:20 blocksdrwx------ 2 1105 1108 94208 Jul 10 04:20 chainstatedrwx------ 3 1105 1108 4096 Jul 10 04:20 indexes -
RoninDojo: Restore ownership of the
backupdirectory to the root user.Terminal window sudo chown root:root /mnt/ssd/backup -
RoninDojo: Start your RoninDojo from the RoninCLI menu, and check on the logs to make sure everything looks healthy.