Menu

Blockchain Migration

Warning

This is an advanced feature and should be used with caution. Start9 is not responsible for any damage you might cause through SSH access.

If you have already synced the Bitcoin blockchain to the tip on one Embassy, and would like to skip IBD on another Embassy, follow this guide.

Note

The following guide requires that you have already setup SSH on both Embassies. In this guide, we will refer to your synced Embassy as embassy-AAAAAAA.local and the Embassy with no Bitcoin synced as embassy-BBBBBBB.local. Of course, please replace AAAAAAA and BBBBBBB with your appropriate Embassies’ names.

Install but don’t start Bitcoin Core on the blockchain-less Embassy

  1. Log into https://embassy-BBBBBBB.local and install Bitcoin Core (Marketplace > Bitcoin > Bitcoin Core > Install). Do NOT yet CONFIGURE or START Bitcoin Core.

Prep your Embassy with the synced blockchain

  1. Stop the Bitcoin Core service on https://embassy-AAAAAAA.local (Services > Bitcoin Core > Stop)

  2. Open an ssh session to embassy-AAAAAAAA.local

  3. Once at the shell, perform the following commands

    sudo -i
    mkdir -m 0700 -p .ssh
    ssh-keygen -t ed25519 -N '' -f .ssh/embassy2.key
    chmod 600 .ssh/embassy2.key*
    cat .ssh/embassy2.key.pub
    
  4. Copy the output from the cat command into embassy-BBBBBBB’s Embassy > SSH > Add New Key text field:

    ../../../_images/ssh_key_add.jpg
  5. Back on the shell of embassy-AAAAAAA.local, do the following (don’t forget to replace embassy-BBBBBBB.local in the rsync command before you perform it):

    cd /embassy-data/package-data/volumes/bitcoind/data/main/
    rsync -e "ssh -i ~/.ssh/embassy2.key" -povgr --append-verify --rsync-path="sudo mkdir -p /embassy-data/package-data/volumes/bitcoind/data/main ; sudo rsync" ./{blocks,chainstate} start9@embassy-BBBBBBB.local:/embassy-data/package-data/volumes/bitcoind/data/main/
    
  6. Wait some hours until the copy is complete. On a gigabit network, the limiting factor will be the write speed of your SSD on the receiving Embassy. When it is complete, clean up a bit:

    rm .ssh/embassy2.key*
    exit
    
  7. Switch back to https://embassy-BBBBBBB.local, selecting Services > Bitcoin Core, CONFIGURE, configure it as desired, SAVE and then START your Bitcoin Core service. You should see it begin at 99%+ pre-synced.

  8. You can now restart your Bitcoin Core service on https://embassy-AAAAAAA.local (Services > Bitcoin Core > Start)