robocopy or powershel to migrate home folders

Posted on 2016-09-08
Last Modified: 2016-10-28
dear experts

I have over 100 home folders I need to migrate ( leave no copy behind) a new folder called "migrated_users" in a new folder in the same volume

is it possible to take ownership of users' home folders and putting them in a new folder with robocoy or powershell?

I have a list of users in a csv file with their samaccoutnames that script needs to look and   find their home folders  in a share (\\servername\sharename\home) and then place them in a new folder (\\servername\sharename\home\migrated_users)  

Question by:kuzum
Welcome to Experts Exchange

Add your voice to the tech community where 5M+ people just like you are talking about what matters.

  • Help others & share knowledge
  • Earn cash & points
  • Learn & ask questions
  • 4
  • 3
LVL 29

Expert Comment

ID: 41789897
You should be able to run robocopy in an elevated administrator command prompt:

robocopy \\servername\sharename\home \\servername\sharename\home\migrated_users /mir /copyall

Are you having access problems?

Author Comment

ID: 41789908
no access problems but would be better to avoid access problems if there are any folders that I don't have access but administrator is the owner of the folders and some owned by users themselves.

your script would copy everything in the share which I do not want. it needs to copy specified users
LVL 29

Expert Comment

ID: 41789935
foreach  %i in (userlist) do robocopy \\servername\sharename\home\%i \\servername\sharename\home\migrated_users\%i /mir /copyall
Free eBook: Backup on AWS

Everything you need to know about backup and disaster recovery with AWS, for FREE!

LVL 29

Assisted Solution

serialband earned 334 total points
ID: 41789938

Author Comment

ID: 41789981
Hi Serialband,

both scripts won't do what I am trying to achieve. it is looking for a source and destination locations to copy everything over.

with the Robocopy still not sure how it is importing userlist to search in a source location...

LVL 29

Accepted Solution

serialband earned 334 total points
ID: 41790033
For the scripts, you need to replace the sourcepath and destination paths with those of your system.

In the foreach loop, you need to replace userlist with a comma separated list of files.

If you want to load the list from a separate text file, you'll need to do the following:

for /F "tokens=*" %i in (userlist.txt) do robocopy \\servername\sharename\home\%i \\servername\sharename\home\migrated_users\%i /mir /copyall
LVL 20

Assisted Solution

compdigit44 earned 166 total points
ID: 41793512
Here is a thought.

1) On the current home folder directory use icacls.exe to export the ACL's of all folder and file permissions

2) Run robocopy to copy all data to new directory structure

3) update the icacls text file export to include the new directory path and import

****** Test everything before doing it in production******

Author Comment

ID: 41803666
resolved this using third party tools.

Featured Post

Windows Server 2016: All you need to know

Learn about Hyper-V features that increase functionality and usability of Microsoft Windows Server 2016. Also, throughout this eBook, you’ll find some basic PowerShell examples that will help you leverage the scripts in your environments!

Question has a verified solution.

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

The Nano Server Image Builder helps you create a custom Nano Server image and bootable USB media with the aid of a graphical interface. Based on the inputs you provide, it generates images for deployment and creates reusable PowerShell scripts that …
In threads here at EE, each comment has a unique Identifier (ID). It is easy to get the full path for an ID via the right-click context menu. However, we often want to post a short link within a thread rather than the full link. This article shows a…
This video shows how to use Hyena, from SystemTools Software, to bulk import 100 user accounts from an external text file. View in 1080p for best video quality.
Exchange organizations may use the Journaling Agent of the Transport Service to archive messages going through Exchange. However, if the Transport Service is integrated with some email content management application (such as an antispam), the admini…

740 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