[GUIDE] Cloning or Migrating SSD/HDD (Windows)

This guide is for anyone who needs to migrate from an HDD to a SSD, or vice-versa… You can also clone the drive to move it to a bigger drive. Currently I only have Windows instructions. So if anyone would like to make instructions for Linux, or Mac, feel free to do so.

TL;DR: version – scroll all the way down.

Things needed:
Windows PC (of course.)
2 USB 3.0 enclosures or whatever interfaces/enclosures you use for your drives.
The drive you’re migrating/cloning from (any size)
The drive you’re migrating/cloning towards (any size, as long it is identical or bigger than the “from” drive)

===== Windows instructions ======
Backup your 24 secret words and the lightning channels, if you haven’t done so! Better safe than sorry!

I am assuming you have already shutdown your Umbrel node, if not – you have 2 choices: via the Web UI: Dashboard > Settings > ‘System’ Shutdown
-or-
SSH: sudo shutdown -h now

  1. Install Macurim Reflect
    Macrium Reflect Free Trials

  2. Installing Macrium Reflect Free:
    2a) When it prompts you this message: “What Free edition licence do you require?” Choose “Home”
    2b) When it prompts if you’d like to register the installation, uncheck that.
    2c) Continue as you want (choose the installation directory, or leave at default)
    2d) It gives you the option to launch the program.

  3. Choose the drive you want to clone/migrate by checkmarking it.

  4. You will see the option to “Clone this disk…” as soon you checkmark the drive. Click that.

  5. It will prompt you to choose the disk you’d want to clone/migrate towards. BE SURE THAT YOU SELECT THE CORRECT DISK! (This disk should be left unformatted and having NO file system!)

  6. It will ask you if you’d like to schedule it, just click on Next >

  7. It will give you a summary of what it will do, be sure that if you’re migrating/cloning from HDD to a SSD that “SSD Trim” is showing a “Y”, otherwise cancel the clone. Click on Finish.

  8. Now it will ask if you’d want to save the backup options, uncheck “Save backup and schedules as an XML Backup Defintion File”. Then click on OK.

  9. The process will begin, and may take a while. Maybe clean up your desk while you’re at it? heheh

  10. If the drives are the same size, then you’re all done! You should now be able to plug in the new drive on your Umbrel node. Otherwise continue on.

  11. If the drives are different sizes (such as 500GB–>750GB,1TB,2TB, etc.). You will need to start a SSH session on your Umbrel node after you plug in the new drive.

  12. When you have the SSH session up, install ‘cloud-init’ (as we need the “growpart” module from it.)
    sudo apt install cloud-init -y

  13. When that is installed, check to see where your drive is mounted at by doing:
    df -h

I am assuming that you have connected it via USB 3.0, so the instructions will be for sda1. And the best part is that you can do this all live! So you do not have to unmount the drive, how nice is that?!

sudo growpart /dev/sda1 1

It will take a minute or so, don’t panic.

  1. Then we need to resize the filesystem (if you run ‘df -h’ again, you’ll see the drive still showing the old filesystem size!)
    sudo resize2fs /dev/sda1

This will take a while, so again, don’t panic.

  1. Now run df -h again, and see the drive is now the correct size.

  2. Reboot the node for a good measure, sudo reboot

  3. All done!

===== TL;DR: version =====

Backup 24 secret words and lightning channels.
Gracefully shutdown your Umbrel node. (sudo shutdown -h now)
Install Macrium Reflect Free. Macrium Reflect Free Trials
Choose drive being cloned/migrated - Clone this disk… Select From, and Towards drive.
Wait a while.
If the size of the FROM_DRIVE is the same as the TOWARDS_DRIVE, you’re done, otherwise continue…
SSH session to Umbrel node:
sudo apt install cloud-init -y
sudo growpart /dev/sda1 1
sudo resize2fs /dev/sda1
sudo reboot
Done.

14 Likes

Wow, thanks for the comprehensive guide, @DHD — it will help a lot of people! :pray:

When you clone the drive using Macurim, does it also automatically format the other drive (the one you’re migrating to) as EXT4?

1 Like

Macurim is filesystem agnostic, so it doesn’t care what you have on the drive you’re migrating to, it’ll overwrite the filesystem on the destination drive. You could have it originally formatted as NTFS, and Macurim will change it to EXT4 for you. So it would be optimal if you had no filesystem on the destination drive, so it doesn’t cause a conflict when you’re migrating/cloning.

2 Likes

Thank you! I’ve always been wondering what we’d do when the blockchain got bigger than 900gb or so, as most of us have 1tb drives.

3 Likes

Can’t I just copy all content from one drive to another (assuming Unix machine, if you’re using Windows rethink your life choices)?

Thanks! Great guide @DHD . I am planning on cloning from existing SSD to new SSD this weekend. Any idea on how long it took you (ballpark) I just need to factor this into my scheduled downtime.

Since it is a SSD to SSD clone, it shouldn’t take more than 6 hours. In my case, it took my 1TB SSD about 3.5 hours to clone onto a new 2TB SSD.

Now the question is should I upgrade to 0.4.1 before I clone?

@DHD everything went really well. Took 1.5 hours to clone. The only issue I encountered was in the disk resizing step., It’s complaining that the partition has no label.

" umbrel@umbrel:~ $ sudo growpart /dev/sda1 1

WARN: unknown label

failed [sfd_dump:1] sfdisk --unit=S --dump /dev/sda1

sfdisk: /dev/sda1: does not contain a recognized partition table

FAILED: failed to dump sfdisk info for /dev/sda1"

Suggestions on Stack to head straight to resize2fs


From the Umbrel log:
Aug 21 04:03:22 umbrel external storage mounter[521]: no label, UUID=8cef8f6b-7bbd-46e1-916f-a8bbd21c5833

Hi, nice guide thanks for your work.

When i installed my umbrel node i had a 5tb hdd already at home. I now want to upgrade to a sdd, because of noice and form factor. Unfortunatelly i’ve not considered the programm forcing to clone to a bigger medium. is there a way to do this instead?

Thanks for your help, and have a nice day / Christmas

@Buent09 How big is the SSD in the disk space? You could shrink the partition on the 5TB HDD to about 100-200GB under the SSD size, for example, you have a 2TB SSD, so you can shrink the partition to 1800GB (1.8TB) so that way you can clone the shrunken partition to the SSD, and expand it after using the growpart command from the cloud-init tools as described in the guide.

As always, make a full backup of your 24 secret words (write it down on a piece of paper), your LN channels backup, and any settings for installed apps you may have before you do this.

1 Like

Thanks for that fast response…

I’ve got a 2tb drive and my old one is 5tb. Is it possible to shrink the partition with Macrium, I couldn’t find an option for that, if not what do you recommend?

I think you can use Gparted to resize partitions.
Disk Manager in Windows also resizes partitions, but I don’t know if it will have issues with Ext4 from Linux.

How long before a 1TB SSD isn’t enough space to contain the blockchain?

Calculate: max 2MB each 10 min + 10-15% more for LN db and electrs db

@Buent09 Sorry about that – I looked at Macrium, and realized that you’re right. Macrium Reflect doesn’t have partitioning options, so you will need to use a different program for that. I use MiniTool Partition Wizard (I have the Professional edition) you can search for a legit torrent of it from a reputable torrent website, I can’t really put the link here.

@LoboGuara Yeah, Gparted will work, but for @Buent09’s situation, I think they would prefer to use Windows. I just tested Windows’ Disk Manager and it can’t detect the ext4 partition.

@Crizzo I checked my storage space on Umbrel’s dashboard and saw that it’s currently using 865GB out of 8TB, so to answer your question, each block is on an average of 2MB, so at this rate 1TB isn’t recommended anymore, as you’d run out of space if you have a few apps running on it. You may get around 4-6 more months out of a 1TB SSD, but then you’d have to upgrade to a 2TB or bigger SSD down the road.

@DarthCoin Thanks for the calculation, that’s how I came up with an estimate of 4-6 more months before a 1TB SSD wouldn’t be sufficient to run Umbrel anymore.

That is quite a lot for a simple node. It should be around 550GB.
Something is wrong there. Check if you have Whirpool installed, that is making huge logs

I am not fully synced yet, but it looks like I’ll have about 500GB left, so about 4 years as long as I don’t fill it up with other stuff. I’m also curious what @DHD has that is using up all that extra space!

@DarthCoin Whoops, you’re right – I forgot that I added 385GB to the estimate for the blockchain backup I made for blocks 0-700,000. So it should be fine for a while if you only have a 1TB SSD then. Thanks for the heads up, I completely forgot about that one backup.

1 Like

Thanks @DHD

@Crizzo i think the Blockchain itself is about 400 GBs, I can view the usage on my node and the system uses 526. System is with BTC Core, LND and the Electrum server. This would be about 126 GBs. After over 12 years of Blocks i would say with a 2 tb storage sdd you would be fine for about 5-10 years, of course only if you don’t install many apps on your umbrel. I would not recommend for that reason a bigger SSD, if you don’t use a lot of other apps on your umbrel.