Provided your NAS are linux-based (most if not all are), and you are able to use ssh on your NAS, I recommend to use tar
and scp
for the fastest possible data transfer.
I had to transfer Time Machine backups from one WD NAS to another. I tried the rsync
approach, but transferring 1.4 TB of data with rsync would run for days and was still far from finishing. I think that's due to the fact that Time Machine backups consist of thousands of smaller files. If you have fewer and larger files, rsync
might be okay.
For me, a combination of tar
and scp
worked best. This is how you do it:
Activate ssh on both devices if not available already
ssh into the old device
ssh user@new-device-name
- cd to the data folder, for example
cd /shares/TimeMachineBackup
- Create a tar archive of the files and directories that you want to transfer. Use nohup, so you can logout and let tar keep running
nohup tar -cvf archive.tar file1 file2 directory1 >tar.log &
Note that I don't use compression, because most files do not compress well, and tar turned out to be significantly faster without compression.
- Wait till tar has finished. This can take hours. You can check if it is still running using
ps aux | grep tar
ssh into the new device
Copy the archive over, again using nohup to keep it running
nohup scp user@new-device-name:/shares/TimeMachineBackup/archive.tar /shares/TimeMachineBackup/ >scp.log &
- Wait till scp has finished. This again can take hours, depending on the file size. You can check if it is still running using
ps aux | grep scp
or you simply check the file size on the new device using
ls -alh archive.tar
- Now unpack the archive, again you might want to use nohup, because it takes a while.
nohup tar -xvf archive.tar >tar.log &
- Finished.
You're ready to use the new device.
robocopy
on Windows,rsync
for BSD/Linux), versus a GUI program, will always be faster