Does anyone know what is the best way for CIFS data migration?
We are currently using IBM SAN as our CIFS server and we want to migrate its data into our new NetApp 2240 , these files have user map with different security access and etc, so what is the best way to migrate these files to NetApp and keep their security styles, user maps and etc.
Believe it or not, your best bet at this time is still good old Robocopy. We've had some issues with Robocopy not copying permissions correctly on the newer versions of the tool, but this is about your best bet. There are many tools available, both free and purchased. One of the better purchased tools we've found is called Beyond Compare, but it does not copy permissions. There is a free (i.e. unsupported) tool from Microsoft called RichCopy, but it sometimes has issues with permissions as well.
Long story short, there is no silver bullet. You just have to find what works for you.
Create a CIFS share on the new target, best case only for your sync user/tool initially
Copy the data initially
Keep the data incrementally sync'ed
Configure your usermappings in the /etc/usermap.cfg on your new NetApp Filer, make sure you use the same name services on the old and new NAS systems (or check and copy /etc/passwd and/or /etc/group entries)
Break (CIFS) access to the original data for all users / applications beside your sync-user/application
Final data sync
Remove original data or make sure it will not be accessible whatsoever
To copy and sync Windows data, I'd highly recommend the latest (W2k8+) ROBOCOPY. This one has many cool features, like multiple threads, "monitor" capabilities and so on.
You may want to make sure your "robocopy" server(s) is physically (network-wise) close to your NAS systems
Depending on your amount of data, LAN infrastructure and system load, you may want to use multiple "robocopy" servers (TCP/IP [round-trip] latency)
I wouldn't use rsync here for two reasons:
Depending on your data and environment, you may run into some Cygwin limitations (max. path/file length, unsupported characters, permissions, (rsync) memory usage, ...)
rsync and related tools are great if you want to compare changed files, compute the sometimes small changes within those (large) files and then transfer and apply only those small changes. All this is cool if your LAN or better WAN link is slow (high latency!). But the computation of the file differences may produce a high load on the rsync-server and take very very very long. With a hopefully fast LAN, it's most of the time quicker just to copy a hole file if it was changed before computing the difference for hours
To all folks who may read this question and yet looking for an answer I would say , securecopy is the best option since it copies all files and share folders along with security permissions. I did use it for this task and works 100 % for me.