Как перенести профиль пользователя на другой диск windows server 2016

Перенос профиля пользователя — варианты переноса профилей пользователей с загрузочного раздела компьютера, решение типичных проблем.
Ситуация 1. Переносим профили на другой сервер.

Можно сделать через групповые политики и перемещаемые профили, но проще всего перенести ветку реестра:

HKEY_LOCAL_MACHINESOFTWAREMicrosoftWindows NTCurrentVersionProfileList

и папки пользователей копированием.

Ситуация 2. Переносим профили на другой диск.

Зачем это надо? Для терминального сервера. За несколько лет размер занятого пространства диска C: (загрузочного раздела) может вырасти до сотен гигабайт и возникнут проблемы с резервным копированием, как это получилось у меня. Расчищая диск C: сразу увидел, что профили занимают больше 100GB. И квоты в общем-то тут не решат ситуацию, если квоты вообще допустимы для данной организации. Если пользователи работают с тонких клиентов и терминальный сервер получается единственным местом для хранения их информации, то объём этой информации будет расти и расти.

Кроме этого перенос профилей логически обоснован — для файлов профилей нужно индексирование поиска и теневые копии, для системных файлов индексирование не нужно, теневые копии.. даже не могу представить в какой ситуации это может быть востребовано. Для папок профилей бекап желателен, для загрузочного раздела — бекап необходим и большой суммарный объём профилей на этом же разделе сильно мешает, как уже говорил выше.

Первый вариант

Если система только-только установлена меняем значение ProfilesDirectory «%SystemDrive%Users» на новое расположение, в ветке реестра:

HKEY_LOCAL_MACHINESOFTWAREMicrosoftWindows NTCurrentVersionProfileList

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

Второй вариант

Другой вариант когда система относительно свежая, но уже есть пользователи и программы. В этом случае некоторые программы, например MS Office, прописали абсолютные пути к профилям на диске C:. Тогда лучше переместить все профили скриптом и создать символическую ссылку папки Users на новое месторасположение, загрузившись с установочного диска в командную строку:

robocopy C:Users D:Users /E /COPYALL /XJ 
rmdir C:Users /S /Q 
mklink /D C:Users D:Users

если в указании пути будет пробел, то нужно заключить путь в кавычки. Можно дополнить ключом перезагрузки:

Shutdown -r -f -t 00

и пойти пить чай.

В реестре при этом менять ничего не надо и в этом большой плюс этого метода — система «думает», что все по прежнему на диске C:/ и корректно работает через символическую ссылку. Проверить можно набив путь к профилю пользователя как C:Users»какой-то пользователь» и откроется он именно как C:Users….., а не как D:Users…. (при переносе на D).

Установка разрешений

После переноса папок профилей для каждой из них нужно обязательно отключить наследование разрешений и поменять разрешения безопасности на следующие:

  1. System — Полный доступ;
  2. Administrators — Полный доступ;
  3. Учётка пользователя — Полный доступ;
  4. Больше ничего быть не должно.

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

Для самой папки Users разрешения следующие:

  1. System — Полный доступ;
  2. Administrators — Полный доступ;
  3. Users — Чтение/Выполнение;
  4. Все — Чтение/Выполнение.

То есть для корректной работы системы все разрешения в новом расположении должны соответствовать разрешениям, какие были на диске C:. Это важно.

Если же система довольно старая, профили по несколько гигабайт, пользоваться скриптом не рекомендую, лучше делать руками и не копировать, а перемещать, контролируя начальный размер папки профиля и размер перенесенного. В этом случае, это понятно и очевидно, ссылку для всей папки C:/Users создать нельзя, так как в ней есть открытые файлы нашего текущего профиля. Профили переносятся отдельно. Ссылка создаётся для каждого профиля отдельно. Свой профиль либо можно оставить и не переносить, либо перенести, временно создав второго админа. Создать, залогиниться под ним, перенести свой профиль, создать ссылку, установить разрешения, разлогиниться, зайти под собой, убить второго админа.

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

Решение проблем

Возможные проблемы при копировании/переносе заключается в отсутствии доступа к какому-либо файлу:

  1. Нет прав на каталог;
  2. Блокировка файла процессом;
  3. Невозможность удаления файла.

Если нет прав на каталог, тогда нужно стать владельцем контейнера и входящих в него объектов:

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

затем добавить себе полные права на контейнер и заменить наследуемые разрешения для потомков. После этого можно переносить/удалять.

Если блокировка процессом, тогда рекомендую программу Unlocker — много вирусов под видом этой программы. Попробуйте вот эту версию, должна быть без вирусов.

Невозможность удаления файла проявляется в основном файлами нулевого размера с точкой в конце имени файла. При попытке удаления появляется ошибка:

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

В этой ситуации отлично помогает Far Manager, находите файл и нажимаете Alt-Del, затем кнопку «Wipe».

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

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

Дополнение от 14.06.2016

Оказалось, что если диск с символической ссылкой, созданной с ключом /D, открыт как сетевой на другом компьютере, то переход по данной ссылке заканчивается ошибкой: — «Символическая ссылка не может быть загружена, так как её тип отключен». Для устранения данной ошибки ссылку нужно пересоздать с ключом /J (junction).

Дополнение от 15.06.2016

Папка Users на диске C:/ была заменена символической ссылкой на другой диск, при этом в реестре ничего не менялось. Обновление с Windows 2008 до 2008 R2 прошло успешно. Установка заменила символическую ссылку на папку и создала в ней дефолтные профили всех пользователей. После установки удалил данную папку и пересоздал ссылку.

Добрый день. Неоднократно уже обсуждался вопрос переноса профилей терминальных пользователей на другой диск, но под Windows Server 2016 я так и не нашёл для себя оптимального решения, поэтому надеюсь, что кто-нибудь подскажет еще варианты. Сейчас в сети есть несколько решений, которые в разной степени меня не устраивают:
1.Задать параметр «Set Path For TS Roaming Profiles» в GP — в Windows Server 2016 я его не смог найти.
2.HKLMSOFTWAREMicrosoftWindows NTCurrentVersionProfileList -«ProfilesDirectory» — работает, но перемещает все профили, как локальные, так и терминальные, а это не совсем то.
3.Использовать «User Profile Disks» — это наиболее подходящий вариант, но он в первую очередь рассчитан на перемещаемые профили, а мне это не нужно: все профили на одном сервере, а на монтирование и передачу данных в контейнер уходит больше времени.
Есть ли еще какие-нибудь варианты?

__________________
Помощь в написании контрольных, курсовых и дипломных работ, диссертаций здесь

User Profile Disks (UPD, диски профилей пользователей) – новый функционал Remote Desktop Services в Windows Server 2012. User Profile Disks представляют собой альтернативу использованию технологий перемещаемых профилей (roaming profile) и перенаправления папок (folder redirection) в терминальных сценариях RDS. Идея UPD – данные пользователя и его приложений (т.е. его профиль) хранятся в виде отдельного виртуального vhdx диска на неком выделенном общем файловом ресурсе. Этот виртуальный диск монтируется в сессию пользователя при его входе на RDS-сервер, и отключается при выходе (конечно, с сохранением всех изменений в профиле).

В этой статье мы опишем особенности настройки и работы технологии User Profile Disks на сервере с ролью Remote Desktop Services на Windows Server 2012 / 2012 R2 / 2016.

Содержание:

  • Настройка User Profile Disks в Windows Server RDS
  • VHDX файл с UPD профилем пользователя
  • Как расширить диск User Profile Disk с помощью PowerShell

Настройка User Profile Disks в Windows Server RDS

В первую очередь необходимо на любом файловом сервере организации создать общую сетевую папку, в которой будут храниться файлы с профилями пользователей в формате VHDX дисков (если вы хотите обеспечить высокую доступность UPD дисков, можно разместить файлы UPD на кластерном файловом ресурсе). В нашем примере, путь к такому каталогу будет выглядеть так: \srv01DemoLabOficeApps. Необходимо предоставить серверам, входящим в коллекцию RDS полные права доступа на данный каталог и файловую систему.

Совет. В рамках одной коллекции RDS для каждого пользователя может существовать только один vhdx файл с UPD профилем. Если пользователь подключается к ресурсам из двух разных RDS коллекций, для каждой из них будет создан отдельный vhdx файл с профилем пользователя.

Режим User Profile Disks включается и настраивается в параметрах коллекций Remote Desktop. Этот режим можно включить непосредственно при создании коллекции, или уже после того, как коллекция создана.

Мастер создания коллекции RDSВ нашем примере коллекция уже существует, поэтому в консоли Server Manager выбираем имеющуюся коллекцию, и в верхнем левом углу выбираем Tasks-> Edit Properties.

Правка параметров коллекции Remote Desktop ServicesЗатем в разделе User Profile Disks ставим чекбокс на Enable user profile disks, указываем путь к созданной ранее сетевой папке (\srv01DemoLabOficeApps) и максимальный размер диска с профилем (пусть это будет 20 Гб). Сохраняем изменения.

Включить User Profile DisksПосле сохранения изменений, проверьте что NTFS разрешения на каталог с дисками профилей были изменены. В нашем случае коллекция состоит из одного сервера RDSH01, которому предоставлены полные права на папку.

User Profile Disks - NTFS права на каталогНа уровне сетевой папки (шары) серверу RDSH01$ предоставлены права Full Control. Разрешения на общую папку с дисками профилей пользователяПри добавлении новых серверов RD Session Host в коллекцию RDS серверов, мастер автоматически изменит разрешения на каталог, предоставив доступ новым серверам. Это очень удобно, т.к. при масштабировании терминальной фермы не нужно каждый раз вспоминать о настройке разрешений на сетевую папку с профилями.

VHDX файл с UPD профилем пользователя

Перейдем в наш общий сетевой каталог с профилями пользователей. Теперь в нем хранится файл вида UVHD-template.vhdx.

UVHD-template.vhdx - шаблон диска профиля

Этот файл представляет собой шаблон диска с профилем пользователя. При первом RDP входе пользователя на сервер RDS, этот шаблон копируется и переименовывается в vhdx файл, содержащий в имени SID пользователя.

uvhd-usersid.vhdx

Посмотрим, что представляет собой диск с профилем пользователя. Для этого смонтируем его, щелкнув по vhdx файлу ПКМ и выбрав пункт Mount. Диск UPD можно использовать только в одной сессии на одном RDS хосте (монопольный доступ). Вы не сможете смонтировать UPD VHDX диск, если в настоящий момент его использует пользователь на RDS сервере).
mount vhdx (смонтировать vhdx файл)Как вы видите, содержимое vhdx диска представляет набор каталогов и файлов обычного профиля пользователя. При входе в систему пользователь получает абсолютно прозрачный доступ к данным, хранящимся в его профиле.

Содержимое диска с профилем

На стороне сервера RD Session Host .vhdx файл пользователя монтируется в каталог C:users<username> и выглядит таким образом:

Подключенный vhdx диск с профилем пользователя

Обратите внимание, что UPD диск привязан к версии Windows RDS сервера. Вы не сможете перенести UPD профиль пользователя с RDS сервера с одной версии Windows Server на другую.

Запись данных в файл vhdx ведется в реальном времени. Т.е. при копировании данных в профиль пользователя на сервере RDS, размер vhdx файла на общем хранилище увеличивается сразу.

В том случае, если в системе уже присутствует каталог с профилем пользователя, каталог со старым профилем переименовывается в формат <username>-BACKUP-<number>.

rdstest.backup-0VHDX диск монтируется при старте сессии пользователя на VDI или RDS сервере. Список подключенных UPD дисков с профилями можно вывести с помощью утилиты mountvol.

По-умолчанию диск с пользовательским профилем содержит в себе все содержимое профиля пользователя. Однако, в настройках RDS коллекции можно исключить определенные папки из списка синхронизируемых каталогов, либо указать, что должны сохранятся только определённые папки. Таким образом все изменения, которые вносятся в терминальной сессии пользователя в список исключенных папок профиля, не сохраняются на vhdx диске в сетевом каталоге.

Исключить папки из диска профиля пользователяВторой вариант позволяет настроить сохранение в UPD профиле только указанных каталогов.

User profile disk - сохранение определенных папокВ случае необходимости, второй вариант позволяет реализовать сценарии сохранения настроек стартового экрана, хранящихся в файле appsfolder.itemdata-ms. В данном примере мы просто добавили путь к каталогу AppDataLocalMicrosoftWindows в качестве дополнительного пути, который нужно сохранять в UPD.

appsfolder.itemdata-ms

Как расширить диск User Profile Disk с помощью PowerShell

Вы можете расширить виртуальный vhdx диск с UPD профилем конкретного пользователя с помощью PowerShell командлета Resize-VirtualDisk из модуля Hyper-V.

Net use U: \srv01DemoLabOficeApps
Resize-VHD -Path u:UVHD-<SID>.vhdx -SizeBytes 30GB
Net use U: /delete

Если вы используете командлет Resize-VHD с рабочей станцией под Windows 10, то в системе необходимо установить роль Hyper-V -> ПлатформаHyper-V -> Службы Hyper-V.

Теперь нужно расширить диск из графического интерфейса консоли Управления дисками (Disk Manager). Действие –> Подключить виртуальный жесткий диск -> Расширить том.

расширить диск User Profile Disk

Либо воспользуйтесь таким PoSh скриптом:
<#
.Synopsis
This script extend size of VHDX file and resize the disk partition to Max
#>
Param(
[Parameter(Mandatory=$true,ValueFromPipeline=$true)]
[alias("Path")]
[string]$vhdxFile,
[Parameter(Mandatory=$true,ValueFromPipeline=$true)]
[alias("Size")]
[int64]$vhdxNewSize
)
begin{
try {
Mount-VHD -Path $vhdxFile -ErrorAction Stop

}
catch {
Write-Error "File $vhdxFile is busy"
Break
}
$vhdx = Get-VHD -Path $vhdxFile
if ($vhdx.Size -ge $vhdxNewSize){
Write-Warning "File $vhdxFile already have this size!"
$vhdx | Dismount-VHD
Break
}
}
process{
Dismount-VHD -Path $vhdxFile
Resize-VHD -Path $vhdxFile -SizeBytes $vhdxNewSize
$vhdxxpart = Mount-VHD -Path $vhdxFile -NoDriveLetter -Passthru | Get-Disk | Get-Partition
$partsize = $vhdxxpart | Get-PartitionSupportedSize
$vhdxxpart | Resize-Partition -Size $partsize.SizeMax
}
end{
Dismount-VHD -Path $vhdxFile
}

Обратите внимание, что нельзя расширить UPD диск пользователя с активной RDS сессией.

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

resize-VHD \srv01DemoLabOficeAppsUVHD-<SID>.vhdx –ToMinimumSize

А затем:

Optimize-vhd -path \srv01DemoLabOficeAppsUVHD-<SID>.vhdx -mode full

Итак, мы рассмотрели основные особенности работы технологии User Profile Disks в RDS/VDI решениях на базе Windows Serer 2016 и 2012 R2. Настройка UPD намного проще чем процесс настройки перемещаемых профилей и перенаправляемых папок. Диски привязаны к коллекции RDS и не могут повредиться при попытке совместного использования профиля несколькими терминальными серверами (в отличии от обычных профилей). Диски профилей пользователей могут храниться на SMB шарах, CSV, SOFS, в SAN или на локальных дисках. Также Microsoft отмечает, что скорость загрузки рабочей среды пользователя в случае использования UPD уменьшается.

Если вы планируете использовать для хранения UPD профилей DFS сервера, то имейте в виду, что на них должна использоваться Windows Server 2012 R2. При использовании предыдущих версий Windows Server вы получите ошибку:

Unable to enable user disks on rVHDShare. Could not create template VHD.  Error Message: The network location "\winitpro.runamespaceUPD1" is not available.

Также на стороне файлового сервера желательно использовать версию SMB 3.02 (Windows Server 2012 R2) или выше.

В любом случае, т.к. технология User Profile Disks относительно свежая, рекомендуется перед крупными внедрениями UPD откатать их работу и возможные проблемы в тестовой среде.

Перенос папки пользователя и администратора на другой диск windows server

В Windows Server (и не сервер тоже) папки профилей пользователей по умолчанию лежат в директории системного диска C:Users.
И хотя каждый пользователь может назначить где именно должна лежать конкретная папка, например «загрузки», есть также недокументированная возможность переноса всех папок всех пользователей на конкретной машине — особенно это актуально для терминальных серверов, где работает множество пользователей.

Реализуется это очень просто:
в редакторе реестра находим ключ HKEY_LOCAL_MACHINESoftwareMicrosoftWindows NTCurrentVersionProfileList и меняем в нем значение параметра ProfilesDirectory (по умолчанию %SystemDrive%Users) на нужный нам путь, например на D:Users. После этого перезагружаем сервер — все новые профили будут создаваться в соответствующих папках D:Users.


04 июня 2022, 22:31
  
Александр

Windows

0
  
811





0



Из этой категории

    Очистка RDP подключения
    Показать скрытые устройства в диспетчере устройств Windows 7
    Этому файлу не сопоставлена программа для выполнения этого действия
    Исчезла служба Диспетчер печати в Windows Server 2012
    Ошибка 80072efe
    Восстановление загрузки Windows Server 2012 R2/2012
    Установка драйвера HP LaserJet 1320 в Windows Server 2012
    Установка microsoft essentials на windows server 2012
    Нет доступа к Windows 10 по сети. Ошибка 0x80004005. Windows 10 не видит компов в сети.
    Ошибка 0x00000709



Комментарии ()

    Вы должны авторизоваться, чтобы оставлять комментарии.

    • Remove From My Forums
    • Вопрос

    • Доброе время суток, коллеги!
      Вопрос такой: есть терминальный сервер на win 2003, на нем планируется работа большого количества пользователей (порядка 50) с большим количеством программ (офис, 1с, почта, файловые ресурсы и т.д.). В среднем считается что профиль будет до 4 Гб. Т.е. 50 * 4 = 200 Гб.
      Вопрос в том, как заставить сервер создавать профили на диске D. Перемещаемый профиль не поможет, т.к. если все польлзователи войдут одновременно, то диска С не хватит. К тому же время копирования профиля на сервер (если установить удаление профиля после отключения пользователя для экономии диска С) будет неприемлимым, т.к. все входят на сервер почти одновременно… Еще минус перемещаемого профиля в том, что рабочий стол компьюетра не должен быть равен рабочему столу сервера терминалов. Есть какие-либо способы перенести место создания профилей  пользователей на диск отличный от системного?
      Есть конечно радикальный вариант: переустановить сервер и сделать один диск C с огромным объемом, но тогда работоспособность системы уменьшиться…

    Ответы

    • Есть три варианта:

      1. Папку «Documents and Settings» смонтировать на другой том. // это потребует совсем нетривиальных действий
      2. В реестре изменить путь к папке хранения профилей: «HKLLMSOFTWAREMicrosoftWindows NTCurrentVersionProfileList» добавить параметр  с именем «ProfilesDirectory» (тип «REG_EXPAND_SZ») и значением, указывающим на расположение профилей.
      3. Определить с помощью групповой политики «Set Path For TS Roaming Profiles». // предпочтительный вариант

      http://technet.microsoft.com/en-us/library/cc783578(WS.10).aspx

      P.S. При таких размерах данных пользователей я рекомендую Вам разместить их на накопителе, отличном от размещающего системный том и файлы приложений.

      • Предложено в качестве ответа

        2 марта 2010 г. 7:50

      • Помечено в качестве ответа
        Petko KrushevMicrosoft contingent staff
        26 марта 2013 г. 14:42

    Like this post? Please share to your friends:
  1. Как перенести установленную windows на ssd
  2. Как перенести файл с правами администратора windows 10
  3. Как перенести профили пользователей в windows 10 на другой диск
  4. Как перенести точку восстановления на другой диск windows 10
  5. Как перенести файл подкачки на другой диск на windows 7