Перенос настроек (профиля) пользователя

Все об администрировании рабочих станций Windows 95/98/NT/2000/XP/7/8. То, чего не найдешь в бескрайних просторах Интернета. Решения тех проблем, которые не решаются типовыми ответами, которые можно получить в техподдержке Майкрософта - а именно: переустановить продукт или купить какой-ть другой лицензионный диск.


Модератор: UncleFather

Аватара пользователя
UncleFather
Site Admin
Сообщения: 1505
Зарегистрирован: 17 авг 2004 16:20, Вт
Контактная информация:

Перенос настроек (профиля) пользователя

Сообщение UncleFather »

Небольшое вступление.

Для переноса папок профилей или переназначения пользователям различных папок с профилями в Microsoft Windows 7 и Microsoft Windows 8 существует замечательное Средство переноса данных. С его помощью мы сначала сохраняем на диске копию профиля старого пользователя, а потом восстанавливаем ее либо в новом месте, либо переназначаем ее другому пользователю. Это все можно сделать в дополнительных настройках по ходу восстановления сохраненных данных. Единственное требование - перед запуском Средства переноса данных на восстановление, новый пользователь уже должен быть создан в системе и под ним надо предварительно залогиниться хотя бы один раз (чтобы была создана папка его профиля).

Однако, помимо Windows 7 и Windows 8 существуют еще Windows 2000, XP, 2003 где такого средства не было. А в новой операционной системе Windows 8.1 средство переноса данных Windows перестало сохранять данные - их можно только восстанавливать, зато профиль пользователя можно копировать через SkyDrive, однако иногда профили бывают достаточно большими, и далеко не всегда мы связываем локальную учетную запись с учетной записью Microsoft.

Что же делать в случае, когда нет возможности применить Средство переноса данных?

Рассмотрим три случая. Советы, приведенные здесь универсальны для всех операционных систем Microsoft Windows (NT, 2000, XP, 2003, 2008, Vista, 7, 8, 8.1, 2012).

Задача 1:

Необходимо перенести папку с профилем пользователя в другое место.

Решение:

  1. Создаем временного пользователя с правами администратора.

  2. Предоставляем этому пользователю полный доступ к папке, подпапкам и файлам профиля пользователя.

  3. Перезагружаем компьютер и, не заходя под старым пользователем, логинимся под временным пользователем.

  4. Копируем папку профиля пользователя из старого места в новое командой robocopy от имени Администратора:

    Код: Выделить всё

    robocopy /copyall /mir /xj C:\Users\User D:\Users1\User1

    Здесь:
    /mir - полное зеркальное копирование директорий, файлов и разрешений.
    /xj - Для версии Windows Vista и старше - очень важно! Приказывает не следовать точкам соединения NTFS. Внутри старой папки профиля пользователя есть несколько символьных ссылок. Старые символьные ссылки нам не нужны, поэтому их не будем копировать, а в новой папке создадим позже новые символьные ссылки.
    Как правило, все файлы должны быть скопированы без ошибок (FAILED колонка = 0), хотя бывают критичные и некритичные исключения. При ошибках копирования каждый случай нужно рассматривать индивидуально.

  5. После окончания процесса копирования убеждаемся, что на новую папку пользователя установлены полные права для пользователя, чей профиль мы переносим, а так же полные права для пользователя «System». Эти права должны быть унаследованы для дочерних подпапок и файлов папки профиля пользователя.

  6. В реестре по адресу HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\ProfileList находим ветку нашего пользователя. Её можно найти по значению параметра «ProfileImagePath» - он будет равен пути к старому расположению папки профиля пользователя. Меняем этот параметр на путь до новой папки.

  7. Для версии Windows Vista и старше в новой папке создаем символические ссылки. Для этого напишем командный файл MakeProfileLinks.bat:

    MakeProfileLinks.bat:

    Код: Выделить всё

    cd %1
    mklink /J "Application Data" %1\AppData\Roaming
    mklink /J "Cookies" %1\AppData\Local\Microsoft\Windows\INetCookies
    mklink /J "Local Settings" %1\AppData\Local
    mklink /J "NetHood" %1"\AppData\Roaming\Microsoft\Windows\Network Shortcuts"
    mklink /J "PrintHood" %1"\AppData\Roaming\Microsoft\Windows\Printer Shortcuts"
    mklink /J "Recent" %1\AppData\Roaming\Microsoft\Windows\Recent
    mklink /J "SendTo" %1\AppData\Roaming\Microsoft\Windows\SendTo
    mklink /J "главное меню" %1\AppData\Roaming\Microsoft\Windows\StartMenu
    mklink /J "Мои документы" %1\Documents
    mklink /J "Шаблоны" %1\AppData\Roaming\Microsoft\Windows\Templates

    и запустим его от имени Администратора с параметром, который будет содержать полный путь к новой папке профиля:

    Код: Выделить всё

    MakeProfileLinks.bat D:\Users1\User1
  8. Перезагружаем компьютер и заходим под старым пользователем. Убеждаемся что все хорошо, все нормально работает и очищаем систему от ненужных теперь вещей:

    1. Удаляем временного пользователя

    2. Удаляем папку профиля временного пользователя

    3. Удаляем старую папку профиля нашего пользователя

    4. Удаляем права временного пользователя на новую папку профиля пользователя

Задача 2:

Компьютер был перенесен из рабочей группы в домен. Доменный пользователь включен в группу Администраторы локального компьютера. Необходимо для доменного пользователя сохранить все настройки пользователя рабочей группы. То есть переназначить профиль старого пользователя новому пользователю. Старый пользователь больше не будет использоваться.

Либо просто на компьютере создан новый пользователь с правами администратора и нужно все настройки старого пользователя перенести новому. Старый пользователь больше не будет использоваться. (Хотя, в этом случае проще переименовать учетную запись)

Решение:

  1. Работаем под логином старого пользователя. Если мы еще ни разу не загружались на компьютере от имени нового пользователя, то продолжаем выполнять первый шаг, иначе - переходим ко второму. Зажимаем клавишу Shift и кликаем правой кнопкой мыши любое приложение, выбираем «Запустить от имени другого пользователя». Вводим учетные данные нового пользователя.

    Это нужно для того, чтобы в реестре прописался этот новый пользователь. Закрываем открытое от имени нового пользователя приложение. (Вместо этого можно один раз выполнить вход в Windows от имени нового (доменного) пользователя, после чего перезагрузить компьютер).

  2. В реестре добавляем полные права на ветку HKEY_CURRENT_USER для нового доменного пользователя. Включаем наследование прав для дочерних ветвей ветки HKEY_CURRENT_USER. Можно даже сделать владельцем всей ветки и дочерних веток HKEY_CURRENT_USER нового доменного пользователя.

  3. В реестре по адресу HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\ProfileList находим ветку нового доменного пользователя. Её можно найти по значению параметра «ProfileImagePath» - он будет равен пути к старому расположению папки профиля доменного пользователя (как правило, имя папки такое же как имя пользователя). Меняем этот параметр на путь до папки профиля пользователя рабочей группы.

  4. Устанавливаем полные права на папку профиля для нового доменного пользователя. Включаем наследование для ее подпапок и файлов. Можно опять же сделать доменного пользователя владельцем папки профиля пользователя и ее подпапок и файлов.

  5. Перезагружаем компьютер и заходим под новым доменным пользователем. Убеждаемся что все хорошо, все нормально работает и блокируем старого пользователя рабочей группы (конечно, если он больше не нужен

Задача 3:

На локальном компьютере создан новый пользователь с правами локального администратора. Необходимо скопировать все настройки старого пользователя новому пользователю. Пользователи будут использоваться одновременно.

Либо опять же, компьютер перенесен из рабочей группы в домен, доменный пользователь включен в группу Администраторы локального компьютера. Необходимо для доменного пользователя скопировать все настройки пользователя рабочей группы. То есть скопировать профиль старого пользователя новому пользователю. Пользователи будут использоваться одновременно.

Решение:

  1. Работаем под логином старого пользователя. Создаем временного пользователя с правами администратора.

  2. Предоставляем этому пользователю полный доступ к папке, подпапкам и файлам профиля старого пользователя.

  3. Если мы еще ни разу не загружались на компьютере от имени нового (доменного) пользователя, то продолжаем выполнять этот шаг, иначе - переходим к следующему. Зажимаем клавишу Shift и кликаем правой кнопкой мыши любое приложение, выбираем «Запустить от имени другого пользователя». Вводим учетные данные нового (доменного) пользователя.

    Это нужно для того, чтобы в реестре прописался этот новый пользователь и для него создалась папка профиля в файловой системе. Закрываем открытое от имени нового пользователя приложение. (Вместо этого можно один раз выполнить вход в Windows от имени нового (доменного) пользователя, после чего перезагрузить компьютер).

  4. Предоставляем временному пользователю полный доступ к папке, подпапкам и файлам профиля нового пользователя.

  5. В реестре добавляем полные права на ветку HKEY_CURRENT_USER для нового доменного пользователя. Включаем наследование прав для дочерних ветвей ветки HKEY_CURRENT_USER. Можно даже сделать владельцем всей ветки и дочерних веток HKEY_CURRENT_USER нового (доменного) пользователя.

  6. Перезагружаем компьютер и, не заходя под старым и/или новым пользователем, логинимся под временным пользователем.

  7. Копируем папку профиля старого пользователя в папку профиля нового (доменного) пользователя (эта папка уже должна быть создана в момент первого входа этого пользователя в Windows) командой robocopy от имени Администратора:

    Код: Выделить всё

    robocopy /copyall /mir /xj C:\Users\UserOld C:\Users\UserNew

    Здесь:
    /mir - полное зеркальное копирование директорий, файлов и разрешений.
    /xj - Для версии Windows Vista и старше - очень важно! Приказывает не следовать точкам соединения NTFS. Внутри старой папки профиля пользователя есть несколько символьных ссылок. Старые символьные ссылки нам не нужны, поэтому их не будем копировать, а в новой папке создадим позже новые символьные ссылки.
    Как правило, все файлы должны быть скопированы без ошибок (FAILED колонка = 0), хотя бывают критичные и некритичные исключения. При ошибках копирования каждый случай нужно рассматривать индивидуально.

  8. После окончания процесса копирования устанавливаем на папку профиля нового пользователя полные права для нового пользователя, а так же полные права для пользователя «System». Эти права должны быть унаследованы для дочерних подпапок и файлов папки профиля пользователя. Не помешает сделать нового пользователя владельцем папок, подпапок и файлов профиля нового пользователя.

  9. Для версии Windows Vista и старше в новой папке создаем символические ссылки. Для этого напишем командный файл MakeProfileLinks.bat:

    MakeProfileLinks.bat:

    Код: Выделить всё

    cd %1
    mklink /J "Application Data" %1\AppData\Roaming
    mklink /J "Cookies" %1\AppData\Local\Microsoft\Windows\INetCookies
    mklink /J "Local Settings" %1\AppData\Local
    mklink /J "NetHood" %1"\AppData\Roaming\Microsoft\Windows\Network Shortcuts"
    mklink /J "PrintHood" %1"\AppData\Roaming\Microsoft\Windows\Printer Shortcuts"
    mklink /J "Recent" %1\AppData\Roaming\Microsoft\Windows\Recent
    mklink /J "SendTo" %1\AppData\Roaming\Microsoft\Windows\SendTo
    mklink /J "главное меню" %1\AppData\Roaming\Microsoft\Windows\StartMenu
    mklink /J "Мои документы" %1\Documents
    mklink /J "Шаблоны" %1\AppData\Roaming\Microsoft\Windows\Templates

    и запустим его от имени Администратора с параметром, который будет содержать полный путь папке профиля нового (доменного) пользователя:

    Код: Выделить всё

    MakeProfileLinks.bat C:\Users\UserNew
  10. Перезагружаем компьютер и заходим под новым (доменным) пользователем. Убеждаемся что все хорошо, все нормально работает и очищаем систему от ненужных теперь вещей:

    1. Удаляем временного пользователя

    2. Удаляем папку профиля временного пользователя

    3. Удаляем в реестре лишние права на ветку HKEY_CURRENT_USER старого и нового пользователей. Эти ветки когда пользователь неактивен находятся в разделе HKEY_USERS.

    4. Удаляем лишние права на папки профилей старого и нового пользователей


PS:
Здесь я привел пути выполнения основных задач. Для прочих задач, шаги этих методов можно комбинировать. Так, например, если в 3-ей задаче необходимо для нового доменного пользователя создать новую папку, а не использовать папку профиля, созданную по умолчанию системой, то нужно дополнительно выполнить 6-й шаг из первой задачи (то есть в реестре по адресу HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\ProfileList найти ветку нового пользователя. и в параметр «ProfileImagePath» прописать путь к новой папке).


Alexander A. Manaeff©

Понравилась статья? Будем крайне признательны за репосты в соцсетях! Материально поддержать проект можно здесь

Мои странички:
ВКонтакте
Одноклассники
Youtube
Facebook
Instagram

Изображение
Изображение
Изображение
Изображение

madparrot
Сообщения: 2
Зарегистрирован: 21 июл 2014 16:05, Пн
Контактная информация:

Re: Перенос настроек (профиля) пользователя

Сообщение madparrot »

Для автоматизации процесса переноса профилей могу порекомендовать утилиту User Profile Wizard, очень выручившую меня в свое время,
когда в организации внедряли домен ActiveDirectory.
Требовалось перенести локальных пользователей компьютеров в домен, со всеми настройками, файлами, закладками и прочим.
Утилита справилась на 5 с плюсом.

Взять утилиту можно на сайте разработчика: http://www.forensit.com/downloads.html

Там же лежат еще несколько интересных утилит для работы с профилями пользователей. Все утилиты бесплатны.

Ответить