Copying File Shares from One Windows Server to Another Using Syncovery

Migrating file shares from one Windows server to another involves careful planning and execution to ensure data integrity, minimize downtime, and preserve NTFS security settings. This guide will walk you through the steps of file server migration using Syncovery, including copying files, preserving NTFS permissions, creating the file shares on the new server, and planning and implementing a possible transition phase as well as the final cutover.

File Server Migration Prerequisites

Be sure that the following requirements are met to be able to perform the server migration:

  • Access to both source and destination Windows servers with administrative privileges
  • Syncovery installed on either the source or destination server (installing on a third machine is possible but less efficient and not recommended)
  • Adequate storage space on the destination server.
  • Knowledge of the current shares and NTFS permissions setup.
  • Servers should be in the same Windows domain (if not, special steps may be necessary)
  • You can start off with our free demo version of Syncovery and order a Syncovery Premium Edition license if you decide to use it.
  • Determine if there will be a transition period where files need to be updated on the destination server. Or, in a more difficult case, there could be a period where your co-workers or clients might be working on both the old and the new server. Although this should be avoided, it is possible to set Syncovery up to handle such a case.
  • Be aware of your timing requirements and the final cutover for your file server migration.

Key Decisions Before Starting the Migration

Before the migration can start, you should make the following decisions:

Installing Syncovery on the source or destination server

You can install Syncovery on either the source or destination server, or even on a third machine. For efficiency reasons, to increase speed and use less network bandwidth, it is recommended to install Syncovery on either the old or the new server, rather than in independent third machine.

Advantages of installing Syncovery on the source server:

  • Initial folder scanning will be extremely fast
  • Real-Time mirroring during a transition period may be more efficient and reliable
  • Folder scanning performance for repeated synchronizations can be increased using the option “Cache Destination File List”

Advantages of installing Syncovery on the destination server:

  • Setting file metadata and NTFS security settings on the destination folders can be faster
  • The new server usually has more CPU power and memory (RAM), allowing Syncovery to run faster

Installing Syncovery on an independent third server, such as a VM, would make it necessary to connect to both source and destination over the network (LAN). You would not benefit from any of the aforementioned advantages. Network traffic would be doubled, as all data needs to be transferred over the network to the machine that Syncovery runs on, and then again be copied to the destination machine. While not using any TEMP space on the Syncovery machine, it is still considered inefficient and not recommended (though entirely possible).

Copying Individual File Shares or Entire Drives

If you have multiple file shares on a server hard drive, you can decide between copying the whole drive (or selected folders on the whole drive), or copying individual file shares. Copying the whole drive has the advantage of needing fewer profiles, but the potential disadvantage is that you need to use a file share that exposes the whole drive (such as an administrative file share like D$).

If you have many file shares, Syncovery can create them on the destination server for you. The setting to create file shares is on the same “Process Security and Shares” dialog where you choose to copy NTFS permissions.

Here’s an example for the profile’s base paths when copying a whole drive:
D:\   →   \\DESTSERVER\D$

Copying file shares separately may be necessary if the drive layout on the new server will be different from the old one. When copying file shares separately, it could look like this:

\\SOURCESERVER\Data   →   D:\Data
\\SOURCESERVER\Archive   →   D:\Archive
\\SOURCESERVER\Documentation   →   D:\Documentation

D:\Data   →   \\DESTSERVER\Data

A third possibility is to use the base paths shown below. Specifying simply “\\SOURCESERVER” on the left-hand side will allow you to select the shares to copy using the subfolder selection dialog in Syncovery:

Creating and Running the Syncovery Profiles

After determining which source and destination paths you want to use, you can proceed with the profile creation in Syncovery. You may need to create one or several profiles. Make sure you are using Syncovery in Advanced Mode and choose the following settings for a file server migration. Not many of the default settings need to be changed.

Sync Operation Mode: Exact Mirror

Files → Number of Files to Copy In Parallel: The default of 3 copying threads should be increased if you have many smaller files. You can easily increase it to 10 or 20 if you have a fast network connection between the servers and aren’t mostly copying huge files (such as video). The number you choose also depends on how much network and server load you can use and how fast you have to complete the file server migration.

Job → File List Threads: The number of File List Threads (= folder scanning threads) can be set to between 10 and 30 if you have fast drives, servers, and a fast and stable network connection. If you need to be careful with CPU usage and general server load, and your folder and file count isn’t extreme, you can keep the default setting.

Special → Process Security and Shares: If NTFS Security Settings (aka Permissions) need to be copied, please choose the security copying settings according to this guide.

Selective Synchronization: Subfolders, Masks, and Filters

By default, Syncovery copies all folders and files except for the Global Exclusion Masks. You will find these on the Program Settings dialog, tab sheet “Types, Limits”. The Global Exclusion Masks are pre-filled with some default masks when Syncovery runs for the first time. For example, the files named Thumbs.db are excluded by default. Please take a look at the masks and decide if you want to keep them. You can also set individual profiles to ignore the Global Exclusion Masks. This is done under “Masks & Filters”->”Exclusions” in each profile.

If you need to do a selective synchronization, you can use the subfolder selection dialog as well as masks and filters. For example, you could exclude folders named Cache;Caches;Temp by simply typing this into the Exclusion Masks. You can use filters to copy only files from a specific date range, or copy only files within a range of file sizes.

Folder and File Security Settings (aka Permissions)

In the previous step, you chose whether to copy folder and file security settings. These include the Owner, Group, and Access Control Lists (ACLs) with separate permissions for additional users or groups. If the two servers are in the same domain, copying the permissions should be straightforward. If they are not, and you do want to copy NTFS permissions, please make sure that the all users and groups exist on the destination server and choose “Translate Security IDs” on the Advanced tab sheet of the Security and Shares dialog box in the Syncovery profile. If the user names on the new server are not identical to the old one, Syncovery can translate user names. Please contact support for details on how to set up this rarely used feature.

Note that in addition to folder and file security, the network shares have ACLs, too. The permissions of a folder and its share are combined according to the Least Privilege Principle: The effective permission for a user is the most restrictive of the combined NTFS and share permissions. This means that if either the NTFS permission or the share permission is more restrictive, that will be the effective permission.

Data Verification

When copying between two servers in a stable and modern wired LAN, you can rely on the copies matching the source files exactly and don’t need to worry about data corruption. However, if you want Syncovery to verify each file after copying it, you can choose Files → Verify copied files. This will read the whole file back after copying it and compare it against the source byte-by-byte. Hashes are not used by default, but can be if you install the Syncovery Remote Service on the other server(s).

As an alternative to verifying each file after copying it, Syncovery can also compare the contents of all files that already exist on both sides. This is done during the folder scanning phase. To activate this verification, choose Comparison → More → Binary Comparison of Existing Files While Building Files List. Because this will slow down the folder scan, you will want to run it only once (or occasionally), and then remove the checkmark again. You can also use the checkmark “Remember Results”, causing Syncovery to remember which files it has already verified and skip future verifications for those.

Copying With Temporary Filenames

Syncovery can optionally use temporary filenames on the destination side while a file is being copied. When all bytes have been transferred, the interim filename is renamed to the actual original filename. The special naming of interim filenames allows Syncovery to resume broken transfers even if the profile is stopped and later started again. It also ensures that broken transfers can never be mistaken for valid files. In general, this feature is not needed for a file server migration, if the two servers are connected with a stable LAN. Nonetheless, it is something to be aware of and to consider. The option is on the “Files” tab sheet in the profile and the checkmark is called “Automatically resume (copy with temporary filenames, keep incomplete files when stopped)”.

Running the Migration Job

Note that Syncovery runs large jobs in parts by default, splitting the profile run after reaching 2 to 5 million files during the scanning phase. If your server has ample RAM, you can increase the splitting limit or remove it. Please look at the Program Settings dialog, tab sheet “Memory” before starting the profile.

Next, you can run the initial copying task for your file server migration. Make sure you are logged on as a domain Administrator and open Syncovery by (shift-)right-clicking its icon and choosing “Run As Administrator”. You can start the first profile execution in Attended Mode if you want to see the Sync Preview before starting the copying. If this is not necessary, you can run the job in Unattended Mode or in the background by right-clicking the profile and choosing the desired mode of operation.

Continuous Sync During Transition Phase

If you have the requirement to update the new server continuously during a transition phase, you can use Syncovery’s scheduler to run the job regularly. You can schedule regular syncs to occur multiple times per day, or once during the night. You can also choose Real-Time Synchronization to avoid complete folder scans and update only the folders with modifications in near real-time. Make sure to install the scheduler as a service so that it runs with Admin rights, and also runs when you log off. The scheduler must be set up and started on the “Scheduler” tab sheet.

To allow Syncovery to make the network connection to UNC paths automatically, it may be necessary to specify the network credentials in the profile via Job → Network Connections…. This is not necessary if Syncovery runs under a domain account.

To speed up the folder scanning for regular syncs, please install the Syncovery Remote Service on the other server so that it can build the file list quickly. Also see our page about speeding up folder scanning, which includes additional tips.

Ideally, nobody would be working on the new server yet, during the transition phase. This will ensure a smooth and reliable file server migration. For special cases, where both the old and the new server have to be used in parallel, please contact Syncovery support for additional instructions.

Synchronizing Deletions During Transition Phase

If there is a transition phase where files need to be updated on the destination server, you also need to decide if files should be deleted from the destination if they are deleted (or moved/renamed) from the source side. Exact Mirror mode was recommended above, which will process deletions. If this is not desired, you would choose Standard Copying instead. Please note: if the job is run in unattended mode or via scheduler or in real-time, you need to allow unattended deletions according to this documentation page.

Preparing For the Final Cutover

Even if you regularly keep the destination server updated, you should perform one final full comparison / sync on the cutover day. Ideally, this would be done during a few hours where nobody works with the files, either on the old or on the new server. Remember to increase the scanning threads and use the Remote Service to speed up the comparison phase. If you don’t have a sufficient period of scheduled downtime, you can switch to Standard Copying mode to prevent Syncovery from deleting any files from the destination, and also avoid newer versions of files being replaced with older ones from the old server. Run the final sync in Attended Mode and check the Sync Preview to see if any remaining copying actions need to be done. You can remove files from the Sync Preview that don’t need to be copied or deleted.

If you previously chose “Cache Destination File List”, you should turn it off for the final sync. The destination cache would only be beneficial if Syncovery is installed on the source system or another machine (not the destination itself). But it should be off for the final folder comparison.

Additional Thoughts and Questions

If you are going to merge the contents of several file servers into one, you may need to use some different settings. For example, you may not be able to use Exact Mirror mode, because that mode would possibly delete files which have been copied from one of the other servers. A PascalScript is available that would rename duplicate folders, if necessary.

Sometimes you’ll want to copy the smallest files first, or the most recent ones first. Different copying orders can be chosen on the “Special” tab sheet in the Syncovery profile.

If there are any remaining questions concerning your file server migration, feel free to write to or visit our support forum.