Зачастую после установки операционной системы бывает необходимость в переносе папки профилей пользователей (Users) с системного раздела Windows. Есть конечно перемещаемые профили и перенаправление папок — но иногда применение этого функционала не очень удобно по разным причинам. Встроенной возможности Windows для этого к сожалению нет.
В нашем случае перенос папки с профилями пользователей необходимо было выполнить на арендованном выделенном сервере, на котором планировалось работа порядка 50 пользователей 1с через терминальные подключения к удаленному рабочему столу. Операционная система Windows 2012 R2 уже была установлена из образа провайдера и соответственно папка с профилями размещалась на системном разделе. Хотелось вынести профили пользователей на отдельный раздел — чтобы они могли использовать все доступное место на разделе для хранения своих файлов в папках Мои документы, Рабочих столах и т.д. без ограничения квотированием и при этом не могли занять все пространство на системном разделе.
Для переноса папок использовалась утилита XXCOPY от Pixelab xxcopy.com. Нам нужна версия Pro, которая не бесплатна, но в ней есть пробный период на 60 дней, чего более чем достаточно. Утилита обладает широким набором возможностей для копирования файлов.
В целом перенос выглядит следующим образом:
1. Создаем временного пользователя с правами администратора, перезагружаемся и логинимся под ним.
2. С помощью утилиты XXCOPY копируем папку с профилями пользователей на нужный нам раздел. У нас это диск D:\. Для понимания используемых ключей утилиты отправляем Вас к документации, а ниже приведем готовый пример
xxcopy c:\Users d:\Users /E /H /K /SC /oE1
Нужно заметить, что утилита не копирует некоторые файлы временного пользователя, под которым мы вошли в операционную систему, что может повлечь за собой ошибки в его работе — именно поэтому он нам и нужен.
3. Вносим изменения в реестр Windows на предмет нового расположения папки с профилями. Отвечает за это ветка реестра по адресу
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\ProfileList
Предварительно сделайте резервную копию этой ветки через пункт контекстного меню «Экспортировать» и сохраните этот файл. В указанной ветке реестра нужно изменить ключи Default, ProfilesDirectory и Public на «D:\Users\Default», «D:\Users» и «D:\Users\Public» соответственно для нашего варианта переноса папки в корень диска D:\. В ветке ProfileList расположены папки соответствующие существующим пользователям операционной системы, поэтому нам нужно внести соответствующие правки ProfileImagePath для каждой ветки реестра пользователя.
4. Перезагружаем операционную систему и логинимся под пользователем отличным от временного, используемого нами для переноса папки с профилями. Убеждаемся в корректности работы операционной системы. Если что-то пошло не так и Вы получаете ошибки при входе в систему — восстановите измененные значения реестра или вручную или через импорт выгруженной ветки реестра. Перегрузите операционную систему, папки с профилями остались на своих места, ведь мы просто копировали их — все должно работать без ошибок.
5. Если ошибок нет, то нам остается удалить старую папку с профилями, исправить ссылку C:\Documents and Settings и удалить временного пользователя.
Удаляем папку профилей пользователей с системного раздела и вместо нее создаем ссылку на новое расположение
rd «C:\Users» /S mklink /D «C:\Users» «D:\Users»
Исправляем ссылку C:\Documents and Settings, для этого удаляем ее и создаем новую с указанием на новое расположение папки с профилями
rd «C:\Documents and Settings» mklink /D «C:\Documents and Settings» «D:\Users»
Удаляем временного пользователя. Или если вы хотите его все таки оставить в системе, можно удалить папку с его профилем через «Система» — «Дополнительные параметры системы» — закладка «Дополнительно» — «Профили пользователей». В открывшемся окне находим нашего временного пользователя и удаляем его профиль. Теперь если войти под ним в систему — его профиль будет создан заново по новому пути и ошибок в работе пользователя не должно быть.