We currently use a Linux based SAN (inherited from previous IT director) and want to migrate to a traditional Windows file server. We have a small amount (<600GB) of data stored and shared and we do not anticipate this growing more than 10-15% in the near future.

We have a server (hyper-V VM) ready to accept the data but I wanted to ask if anyone has any suggestions for migration apps, we will also need to keep the old and new shares synced for a while as we have remote users who do not come into an office very often so there will be people still using the old shared drives for a while.

the current shared drives are all SMB (no CIFS) and the new file server is a Server 2016 Standard VM. Our AD setup is a single domain currently running at 2012 R2 functional level which cannot be upgraded to 2016 until a key system is upgraded by the vendor, the system does not support the expanded 2016 schema currently

6 Spice ups

I just migrated 1.64 TB and used robocopy to move data from an older 2008 R2 machine to a new 2016 server. Initial file copy time was around 8.5 hours and the final pass took about 35 minutes so I’d call it a workable solution (I do have 10GB connections between these machines so YMMV). Make sure you use copyall and copysec (copysec may be redundant but it didn’t seem to harm anything) and then check your ACL’s and files to make sure you aren’t wasting any time. Its OK to cancel it after it starts, it picks back up fast. Very Fast, which is why I don’t recommend a copy and paste.

/COPYALL and /COPYSEC were used the first time around and then my final pass script was:

robocopy \sourcecomputer\E$ E:\ /XO /E /J /R:5 /W:5 /NP /V /ZB /MT:120 /LOG:C:\Support\E-TransferLog.log

/XO: Exclude Older
/E: copy subdirectories, including empty folders
/J: Unbuffered IO. You aren’t going to copy these again soon so buffering is pointless.
/R: Retry 5 times (default 1 million so you need this)
/W: Wait 5 seconds between tries (default 30 seconds)
/NP: No percent progress display (helps with log files or they look messed up and it takes CPU)
/V: Verbose output, shows skipped files
/ZB: use restartable mode; if access denied use Backup mode.
/MT: Multi Threaded. Default thread count is 8, it really screamed when I got up in the higher numbers. Uses more CPU obviously, helps with lots of small files.
/LOG: Outputs to log. 1.64 TB worth of files generated a 2GB log file which wasn’t viewable in the end but the other things I moved were.

If you want to keep it in sync, you will want to use /MIR but be careful because it gets deleted from one side it will get deleted from the other. I would probably avoid /MIR until you are 100% sure it’s doing what you want it to do and that you understand it.

2 Spice ups

So does this retain the permissions? Last time I used robocopy on data stored on a non windows SAN it lost all permissions. I need to have this retain what is already set

I don’t know of any way you are going to keep the permissions.

Keeping two shares “synced” can be a logistical nightmare. I’d just disable the old share and address those out of office when they return.

I know there is a way to retain permissions, my previous employer migrated over 60TB of data from an old SAN to a new one, I don’t know what was used but trying to rebuild ACLs for that much data would still be going on now, 4 years later.

You could try using xcopy.

Permissions when you copy and move files - Windows Client | Microsoft Learn.

1 Spice up

If your NAS is the read only and its pulling files then I wouldn’t think you’d have issues losing permissions. If you are already using your Samba server with windows ACL’s I think those same permissions would be transferred to the new location. If you managed to copy the data but the permissions are wonky, use the /SECFIX option and it will pull and fix them.

You lose nothing by trying, just don’t try /MIR or /PURGE yet. Let us know what you find.

Welcome to Spiceworks and its community.

Does this mean that the reason for using a SAN instead of a NAS or file server no longer exists? Or do you intend to reduce complexity of your infrastructure?

You didn’t desclose much about your current Linux based SAN. So we don’t know if it comes already with such tools or apps (for copying and for syncing). And I’m not sure what you mean by SAN as I don’t see any longer a clear frontier between NAS and SAN. (SANs may be configured as NAS and vice versa, with some limitations according to model and setup.) And these remote users are read-only users or are using also write access? (This question relates to the selection one-way sync or two-way sync.)

And I don’t understand why remote users imply that you keep old and new server for a while. There must be additional constraints applying like DMZ versus Intranet. If there are no additional constraints, you may reconfigure network names so that the server and shares will be located on new file server instead of old one and that some other names will be used for the previous SAN.

Didn’t see a copysec switch, only a sec switch in my version of robocopy. And the help switch reports that the sec switch corresponds to a specified subset of the copyall switch. (So yes, it is redundant and doesn’t hurt neither.) But I don’t have a 2008 R2 machine either.

To which permissions do you refer? And to which robocopy switches do you refer? And which file systems do you use on your SAN and your file server?

It is quiet some time that I used such a process (with much older Windows server). And to the extent that file permissions and ACL are supported and enabled on both file systems, robocopy /copyall included these permissions for files and directories but not for links, shares nor copy root directories as far as I remember.