Solved

Move the files from one server to another and retain the NTFS / Share permissions

Posted on 2006-06-29
8
488 Views
Last Modified: 2010-07-26
I have to migrate a file & print server from an old 2000 server to a brand new 2003 server.


My question is,

any idea how to move the files and retain the NTFS / Share permissions?


Cheers
Phil
0
Comment
Question by:detox1978
  • 4
  • 3
8 Comments
 
LVL 9

Accepted Solution

by:
SamuraiCrow earned 500 total points
ID: 17012069
Download Robocopy Here:

http://www.microsoft.com/downloads/details.aspx?FamilyID=9D467A69-57FF-4AE7-96EE-B18C4790CFFD&displaylang=en

It is in the Windows 2003 Resource Kit.  Here is a basic example of the syntax:

robocopy "source" "destination" *.* /E /Copyall /R:1 /W:1 /IS

This will copy everything and keep the NTFS permissions.  If you need help working out the syntax let me know.

Crow
0
 
LVL 9

Expert Comment

by:rpartington
ID: 17012459
You may well get a lot of recommendations here for what your looking for, but for a pure freebie that works perfectly go with crows recommendation ROBOCOPY works spot on and can easily be run from a floppy disk.
0
 
LVL 2

Author Comment

by:detox1978
ID: 17013836
cheers guys, ROBOCOPY seems to do the trick....

A couple of quick questions,

1. Can this be configured to create a log of file copied / skipped etc...?
2. How does it handle open files / locked files / files it cant copy...?
3. Can it be configured to continue if it cant copy a file?
4. Can it verify the data after the copy?


also, is there anything else i should think about... :O)
0
Independent Software Vendors: We Want Your Opinion

We value your feedback.

Take our survey and automatically be enter to win anyone of the following:
Yeti Cooler, Amazon eGift Card, and Movie eGift Card!

 
LVL 9

Expert Comment

by:SamuraiCrow
ID: 17014651
1. Can this be configured to create a log of file copied / skipped etc...?

If you have a few megs to spare you could modify the script to do this:
robocopy "source" "destination" *.* /E /Copyall /R:1 /W:1 /IS > c:\Results.txt
This basically pipes the output of the batch file to a text file on the C:\ drive called results.txt.  I do it all the time.


2. How does it handle open files / locked files / files it cant copy...?

It will keep going and you'll see the missed file in the error log discussed in question #1


3. Can it be configured to continue if it cant copy a file?

The /R:1 and /W:1 Basically tell it to wait one second and retry one time on a failure.  This will keep it going even if it can't copy a particular file.


4. Can it verify the data after the copy?

There is no verify method persay although In 5 years of using it I have never had a corrupt file issue.  One nice feature it does have is that if you copy the source to the destination again it will skip over identical files (making the process much faster).  I often do this with my file server migrations to "verify" that I have the all of the files.  Of course it goes without saying that you should have a current tested backup before any major migration (Backup Exec has a verify option :)
0
 
LVL 9

Expert Comment

by:SamuraiCrow
ID: 17014663
One more quick note:

To have the fewest number of locked files modify the share permissions so that only the account being used to run robocopy has access.  This helps on items like databases and PST files.  Once the copy is done you can restore user access to the new server.
0
 
LVL 2

Author Comment

by:detox1978
ID: 17018150
>> To have the fewest number of locked files modify the share permissions so that only the account being used to run robocopy has access
How do i do this?

Should i disconnect any users from the server before i run the script?




Thanks again for your time.

D

0
 
LVL 9

Expert Comment

by:SamuraiCrow
ID: 17021981
Most file servers have two sets of permissions:

NTFS Level Permissions
Share Level Permissions

You can access the share level permissions on a shared folder by right clicking on it and going to the sharing tab.  From here click the permissions button and you will see what groups have access (By default the everyone group is there unless explicitly removed).  Add whatever account you'll be running the script under (I always add domain admins) and give them full control.  Once they have full control remove the permissions for the everyone group on the share/s.  This will keep people from accessing these files (unless they are a domain admin) while you arìpying them.  

Crow
0
 
LVL 2

Author Comment

by:detox1978
ID: 17023782
thanks for all the help, i've now migrated the server, and everything seems to work ok.


For anyone who reads this this is what i ended up doing / using.


Printer migration - Print Mig (a microsoft wizard)
Files and NTFS permissions migration - Robocopy (a microsoft wizard)
Shares migration - I exported the registry hive from [HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\lanmanserver\Shares] this includes the permissions :o)


Thanks again

D
0

Featured Post

NFR key for Veeam Backup for Microsoft Office 365

Veeam is happy to provide a free NFR license (for 1 year, up to 10 users). This license allows for the non‑production use of Veeam Backup for Microsoft Office 365 in your home lab without any feature limitations.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

Suggested Solutions

by Batuhan Cetin Within the dynamic life of an IT administrator, we hold many information in our minds like user names, passwords, IDs, phone numbers, incomes, service tags, bills and the order from our wives to buy milk when coming back to home.…
Restoring deleted objects in Active Directory has been a standard feature in Active Directory for many years, yet some admins may not know what is available.
A short tutorial showing how to set up an email signature in Outlook on the Web (previously known as OWA). For free email signatures designs, visit https://www.mail-signatures.com/articles/signature-templates/?sts=6651 If you want to manage em…
Finds all prime numbers in a range requested and places them in a public primes() array. I've demostrated a template size of 30 (2 * 3 * 5) but larger templates can be built such 210  (2 * 3 * 5 * 7) or 2310  (2 * 3 * 5 * 7 * 11). The larger templa…

679 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question