logoalt Hacker News

Migrating a Synology NAS to a UniFi UNAS Pro 8 with Robocopy, SMB Multichannel

57 pointsby soheilprotoday at 1:33 AM45 commentsview on HN

Comments

internet2000today at 4:07 AM

Starting with robocopy is nuts. I'd have started with rsync and just let it run overnight. The peace of mind that it'd do the right thing and not needing to research flags are more than worth any speed tradeoffs.

walrus01today at 8:52 AM

Given Ubiquiti's history of abandoning entire product lines, I cannot ever imagine trusting a ubiquiti closed-source NAS product with my data. No thank you. Not when TrueNAS exists.

show 2 replies
throwaway270925today at 7:47 AM

I agree with Scott, no need to use rsync - he should have used rclone instead! It can be easily installed in the package manager, and with 4 threads (or multiples of 4) it fully uses/saturates the 4 1GbE links.

Also a hint for anyone planning something similar: if you use Synologys SHR format (based on mdraid+btrfs) and your new destination supports or uses BTRFS too, you can just btrfs send your whole pool to the new NAS!

(Since its a single process it wont saturate any LAG though)

8fingerlouietoday at 8:18 AM

I'm aware of the comments saying rsync or rclone, and I absolutely also use those, but for initial migrations I often find myself simply using tar instead.

Something like :

    (cd /src/dir && tar cf -) | ssh user@host "(cd /dst/dir && tar xvf -)" 
will do nicely.

It won't saturate 4 multichannel links, you'll most likely need rclone or rsync for that (or robocopy it appears), but it's much faster than rsync on initial copies.

Then for good measure, once the tar copy finishes, I run a single rsync verification between the two targets.

That being said, my latest storage migration was performed using either ChronoSync or Carbon Copy Cloner from my Mac mini server. They won't do anything rsync cannot already do, except present data and copy history in a graphical environment.

show 1 reply
Neywinytoday at 2:58 AM

Sometimes when we Linux for a long time, we run into decades old friends: grep, sh, bc, whatever. Not uncommon to run a command that first released 50 years ago. Rarely on Windows do we get that. As much hate as windows gets, at least they left in more than just explorer drag and drop.

If the author is reading, it would be nice to clarify that the 10g network comment is irrelevant. I was under the impression at least 1 of the devices would have a 10g link, but at least 2 of the 3 didn't. It was a bit confusing, but it's also very late where I am.

show 1 reply
kallebootoday at 3:17 AM

The Synology web UI lets you mount a remote SMB share and copy files directly in their file manager without making the round-trip via your PC, I imagine this would have been the fastest method without getting bogged down in command-line tools.

show 1 reply
c0nsumertoday at 2:55 AM

I love this kind of step-by-step solving post, but it bothers me that the author didn't track down what the JPEG in the Alternate Data Stream (ADS) was for. Something put it there... Might it be a surprise when it ends up not being there later?

Also, it kinda sounds like the UNAS might not be supporting ADS' for some reason? That alone could be a problem later on...

show 1 reply
bananamogultoday at 2:46 AM

"Ideally you'll find more value in the comments as Hacker News folks and Windows experts will drop in with better tools and strategies."

I don't know if this is better, but...an alternative is rclone, which uses rsync under the hood. It can also do parallel jobs and is restartable on any failed partial copy.

When I've had to do large Synology-to-Synology moves, that's what I've used. The multiple rsyncs in parallel really helps if you've got a lot of small files.

show 3 replies
mmetzgertoday at 3:44 AM

The moment the /Z option showed up I figured there'd be an issue. I have to copy multi-TB files often using Robocopy. We originally used /Z because "Well, if it gets interrupted, I'd obviously want to restart from where I left off..." I accidentally left the switch off one day and noted it completed in less than half the normal time (of using the /Z flag).

In other words, yes, it may be restartable, but if it takes more than twice as long, just recopy the file(s) if needed.

para_parolutoday at 3:37 AM

Has anyone found a solution to lack of encryption in unas?

show 1 reply
abcd_ftoday at 6:14 AM

He should've given bvckup2 a try.

Asynchronous IO, multithreaded for smaller files, serialized when they are big, block-level delta copying on subsequent runs. Pretty much as fast as it gets on Windows.

mmastractoday at 2:49 AM

rsync tends to be a bit tougher on smaller CPUs. scp is generally better for those cases if you don't mind hashing afterwards to confirm everything made it without bit flips (in theory it shouldn't happen, but I've definitely had corruption during transfers like these). I personally prefer that method because you check files that are out of page cache and at rest on the filesystem.

If you want to get the advantage of SMB multi stream copies (in rsync*), look for LACP or other options. Not sure if Synology does that though.

I'm honestly surprised that SMB was faster here. I've never had luck getting it to perform well, so this is a bit of a shock.

show 2 replies
tuananhtoday at 3:11 AM

i recently went from synology to truenas all flash. i do not miss synology one bit. the opensource ecosystem is already there.

for example, Immich is a huge upgrade to Synology photos. I didn't know how much i was missing out.

show 1 reply
joshkatoday at 3:18 AM

It really feels like rsync should have a multi-path setting that would have sped this up across multiple links (but doesn't because noone has made it yet).

show 1 reply
TiredOfLifetoday at 5:07 AM

If both devices are capable of running Syncthing, I would just use that.

PeterStuertoday at 6:01 AM

Claude is quite good at producing an optimal robocopy command for your particular machines and target network use (you do not want 100% when copying dozens of TB over the LAN unless you want to annoy your family).