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 дисков, можно разместить файлы UPD на кластерном файловом ресурсе). В нашем примере, путь к такому каталогу будет выглядеть так: \\srv01\DemoLabOficeApps. Необходимо предоставить серверам, входящим в коллекцию RDS полные права доступа на данный каталог и файловую систему.
Режим User Profile Disks включается и настраивается в параметрах коллекций Remote Desktop. Этот режим можно включить непосредственно при создании коллекции, или уже после того, как коллекция создана.
В нашем примере коллекция уже существует, поэтому в консоли Server Manager выбираем имеющуюся коллекцию, и в верхнем левом углу выбираем Tasks-> Edit Properties.
Затем в разделе User Profile Disks ставим чекбокс на Enable user profile disks, указываем путь к созданной ранее сетевой папке (\\srv01\DemoLabOficeApps) и максимальный размер диска с профилем (пусть это будет 20 Гб). Сохраняем изменения.
После сохранения изменений, проверьте что NTFS разрешения на каталог с дисками профилей были изменены. В нашем случае коллекция состоит из одного сервера RDSH01, которому предоставлены полные права на папку.
На уровне сетевой папки (шары) серверу RDSH01$ предоставлены права Full Control.
При добавлении новых серверов RD Session Host в коллекцию RDS серверов, мастер автоматически изменит разрешения на каталог, предоставив доступ новым серверам. Это очень удобно, т.к. при масштабировании терминальной фермы не нужно каждый раз вспоминать о настройке разрешений на сетевую папку с профилями.
VHDX файл с UPD профилем пользователя
Перейдем в наш общий сетевой каталог с профилями пользователей. Теперь в нем хранится файл вида UVHD-template.vhdx.
Этот файл представляет собой шаблон диска с профилем пользователя. При первом RDP входе пользователя на сервер RDS, этот шаблон копируется и переименовывается в vhdx файл, содержащий в имени SID пользователя.
Get-ADUser -Identity S-1-5-21-305647651-3952524288-2944781117-23711116
Посмотрим, что представляет собой диск с профилем пользователя. Для этого смонтируем его, щелкнув по vhdx файлу ПКМ и выбрав пункт Mount. Диск UPD можно использовать только в одной сессии на одном RDS хосте (монопольный доступ). Вы не сможете смонтировать UPD VHDX диск, если в настоящий момент его использует пользователь на RDS сервере).Как вы видите, содержимое vhdx диска представляет набор каталогов и файлов обычного профиля пользователя. При входе в систему пользователь получает абсолютно прозрачный доступ к данным, хранящимся в его профиле.
На стороне сервера RD Session Host .vhdx файл пользователя монтируется в каталог C:\users\<username> и выглядит таким образом:
Запись данных в файл vhdx ведется в реальном времени. Т.е. при копировании данных в профиль пользователя на сервере RDS, размер vhdx файла на общем хранилище увеличивается сразу.
В том случае, если в системе уже присутствует каталог с профилем пользователя, каталог со старым профилем переименовывается в формат <username>-BACKUP-<number>.
VHDX диск монтируется при старте сессии пользователя на VDI или RDS сервере. Список подключенных UPD дисков с профилями можно вывести с помощью утилиты mountvol.
По-умолчанию диск с пользовательским профилем содержит в себе все содержимое профиля пользователя. Однако, в настройках RDS коллекции можно исключить определенные папки из списка синхронизируемых каталогов, либо указать, что должны сохранятся только определённые папки. Таким образом все изменения, которые вносятся в терминальной сессии пользователя в список исключенных папок профиля, не сохраняются на vhdx диске в сетевом каталоге.
Второй вариант позволяет настроить сохранение в UPD профиле только указанных каталогов.
В случае необходимости, второй вариант позволяет реализовать сценарии сохранения настроек стартового экрана, хранящихся в файле appsfolder.itemdata-ms. В данном примере мы просто добавили путь к каталогу \AppData\Local\Microsoft\Windows в качестве дополнительного пути, который нужно сохранять в UPD.
Как расширить диск User Profile Disk с помощью PowerShell
Вы можете расширить виртуальный vhdx диск с UPD профилем конкретного пользователя с помощью PowerShell командлета Resize-VirtualDisk из модуля Hyper-V.
Net use U: \\srv01\DemoLabOficeApps
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). Действие –> Подключить виртуальный жесткий диск -> Расширить том.
Либо воспользуйтесь таким 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 \\srv01\DemoLabOficeApps\UVHD-<SID>.vhdx –ToMinimumSize
А затем:
Optimize-vhd -path \\srv01\DemoLabOficeApps\UVHD-<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.ru\namespace\UPD1" is not available.
Также на стороне файлового сервера желательно использовать версию SMB 3.02 (Windows Server 2012 R2) или выше.
В любом случае, т.к. технология User Profile Disks относительно свежая, рекомендуется перед крупными внедрениями UPD откатать их работу и возможные проблемы в тестовой среде.
Недавно начали использовать данную технологию.
Изначально профили находились на файловом сервере с WS2008R2 и часто наблюдалась проблема с тем что пользователь заходил под временным профилем.
Переведя файл-сервер на WS2012R2, добавив папку с дисками профилей в исключения антивирусу проблема исчезла, почти за редкими исключениями…
Осталась еще одна «непонятка» пользователи не могут удалить данные со своего рабочего стола, требуются админские права, или удалять минуя корзины с зажатым Shift.
Может кто сталкивался?
Еще возникают проблемы с пропаданием раскладок языков и добавлением новых раслкадок…
Перенаправленные папки по сути дают тоже самое, только проблем с ними сильно меньше. Полгода назад интересовался этим, читал много отзывов, не жалею что выбор пал на перенаправляемые папки.
Может быть у Вас осталась какая-нибудь сравнительная статья по сравнению папок перенаправления с созданием виртуальных дисков?
Легко решается игнорированием сервером раскладки на стороне клиента.на терминальном сервере внести изменения в реестр
в ветке HKLM\System\CurrentControlSet\Control\Keyboard Layout
создать параметр IgnoreRemoteKeyboardLayout типа REG_DWORD(32bit) и установить значение 1
+1 к проблеме с удалением файлов с рабочего стола.
Как пофиксить???
Один из клиентов тоже сталкивался с такой проблемой: соль была в том, что в шаблоне профиля в VMDK файле стояли кривые разрешения на корзину. При этом мимо корзин файлы удалялись корректно (SHIFT+DEL).
Решилось удалением каталога корзины в шаблоне и у текущих пользователей, при входе пользователя в систему, каталог корзины пересоздается с корректными разрешениями.
Не пойму — о каком шаблоне идет речь?
Я говорил о UVHD-template.vhdx
Примаунтил себе темплейт — он пустой 🙁
ЧЯДНТ ??
Я так понимаю в поле User Profile Disks не поддерживается путь к DFS шаре. Пишет доступ запрещен.
Так?
У меня то-же самое… Похоже UPD на DFS шарах просто не поддерживаются.
вполне себе работает с DFS
Добрый день.
Есть необходимость подключать vhdx диск пользователя как сетевой диск ,это возможно реализовать ?
В том случае если пользователь не использует RDS мог получить доступ к своим файлам.
Добрый день!
А почему его нужно подключать именно как сетевой диск? Достаточно просто смонтировать vhdx файл как локальный диск. Правда, насколько я понимаю, прав обычного пользователя для этого недостаточно.
Так-что монтирование vhdx дисков придется реализовать через задания планировщика или стартап-скрипты.
Столкнулся с еще одной мега проблемой у это технологии.
Выделили пользователям по 2Гб.
Но этого оказалось мало, расширили до 3Гб, опять мало…
Начали смотреть чем занято, проверили все папки занято 300Мб, чем занято 2,7Гб ума не приложу, может есть идеи?
проверка, дефрагментация не помогла…
Я думаю темп … в папке C:\\AppData\Local\Temp … Я вот тоже задумался сколько выдавать и интересно как будет регулироваться объем темпа? Кстати я сделал свои тоже 2 ГБ диски но у меня все в норме … но пользователи тестовые я на них ни чего особо не делаю.
Проверьте квоты.
И может место закончилось на физическом диске где все виртуальные диски лежат?
Если бы в папке C:\\AppData\Local\Temp то я бы увидел что папка AppData занимает все место.
По началу 2Гб с головой хватало.
«Проверьте квоты.» — какие именно?
Места на диске где vhdx лежит предостаточно…
Загадка пока не разгадана…(((
WinDirStat вам в помощь.
Коллеги, у кого тестовая ферма есть
могли бы попробовать увеличить диски в свойствах коллекции, увеличятся ли диски которые уже были созданы? Не распадется ли коллекция? Не создадутся ли новые UPD у пользователей?
1. Диски, которые были созданы не увеличиваются
2. Колекция в норме после изменнения размера шаблона. Кстати меняется только размер шаблона.
3. У пользователей остались ситарые диски и старые размеры. У новых уже новые.
P. S. «Совет. В случае необходимости виртуальный диск пользователя персонально можно расширить с помощью командлета Resize-VirtualDisk или из GUI Disk Manager (нельзя расширить диск пользователя с активной сессией).»
На сервере терминалов создана коллекция. Как можно создать еще одну коллекцию для того чтобы указать новое расположение (виртуальных дисков) профилей пользователей. Так сделать хотел бы чтобы при создании новых пользователей их профили хранились на новом свободном разделе.
Понадобилось удалить «профиль/диск» для одного юзера. Нужно просто удалить его vhdx-лиск ???
или есть более «православные» методы ?
По моему это лучший вариант из всего что могли придумать MS. Попробуйти просто взять и удалить профиль пользователя из Win7 и зайти снова под этим пользователем … Будет создан TEMP … если мне память не изменяет 🙂
А тут удалил и готово, хочешь командой, хочешь ручками 🙂
Коллеги, для новой фермы нужно развернуть отказоустойчивый файловый кластер сугубо под UPD — что выбрать? SOFS подходит для таких целей?
Вполне себе походит. В отличии от классических перемещаемых профилей, UPD оптимизированы для работы в Scale-Out File Server. Вот линк с комментариями от представителя MSFT: _https://blogs.technet.microsoft.com/filecab/2013/12/05/to-scale-out-or-not-to-scale-out-that-is-the-question/
UPD is totally supported and the TechNet support statement was supposed to be updated ages ago. I am following up.
Напомните как увеличить размер UPD только для 1го юзера??
Добавить место так:
Resize-VHD –Path UVHD-sidxxxx.vhdx –SizeBytes 1TB
Затем смонтировать vhdx диск с профилем пользователя в консоли управления дисками diskmgmt.msc и сделать Extend Volume
Пробую расширить диск. На самом сервере где хранятся UVHD делаю копию диска юзера и запускаю команду
PS C:\Windows\system32> Resize-VHD –Path D:\OLD-3188.vhdx –SizeBytes 11GB
и получаю ошибку
Resize-VHD : The Hyper-V Management Tools could not access an expected WMI class on computer ‘RDUPD-01’. This may i
ndicate that the Hyper-V Platform is not installed on the computer or that the version of the Hyper-V Platform is incom
patible with these management tools.
At line:1 char:1
+ Resize-VHD –Path D:\OLD-3188.vhdx –SizeBytes 11GB
+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+ CategoryInfo : NotSpecified: (:) [Resize-VHD], VirtualizationException
+ FullyQualifiedErrorId : Unspecified,Microsoft.Vhd.PowerShell.Cmdlets.ResizeVhd
сервер у меня в виде ВМ под вмварей на Вин2016.
Фича Hyper-V Management Tools установлена. ЧЯДНТ ??
Для того, чтобы этот командлет отрабатывал без ошибок на рабочей станции с Windows 10, помимо Средств управления Hyper-V мне пришлось доустановить в систему Службы Hyper-V через оснастку Программы и компоненты (appwiz.cpl)
(c) https://blog.it-kb.ru/2015/08/26/expanding-rd-user-profile-disk-upd-extend-vhdx-using-powershell/
Подскажите, а как уменьшить диск юзера? Изначально создали коллекцию, где указано 20гиг на профиль, один из профилей разросся до 17гиг, после очистки ненужный файлов в профиле пользователя, файл диска профиля не уменьшился, так и остался 17гиг, хотя реальный его объём 3гига. Как можно его урезать в таком случае?
Вопрос сжатия размеров vhdx дисков разбирался в статье: Динамическое изменение размеров виртуальных дисков в Windows Server 2012 R2
Юзеры требуют в онлайне видеть сколько свободного места осталось в их профиле — как организовать сабж ??
Пока видится решение в виде некого файла / странички, которую генерирует по планировщику posh скрипт, который бы брал все файлы из каталога с UPD и при помощи командлета Get-VHD получал размер файлов. А пользователи пусть смотрят на данный файл.
Еще теоретически, можно прикрутить скрипт и для сессии каждого пользователя, когда скрипт получал бы данные для файла UVHD-{USERSID}.vhdx и отображал бы их пользователю, но тут нужно подумать как корректно раздать права на каталог с файлами UPD
А как корректно смигрировать с локальных профилей на сетевые диски?
А то я что-то игрался с этими профилями и заметил, что если на хосте были локальные папки пользователей, а потом перенастроить коллекцию на использование дисков, то инфа не переносится и в папке BACKUP её нет через раз.
Не понял речь про UPD или перемещаемые профили? Насколько я помню, автоматизировано перенести данные из локального профился в UPD нельзя — только ручной перенос данных
Добрый день. Спасибо за подробный разбор, решил потестировать у себя.
Сразу вопрос — как сделать чтобы профили некоторых пользователей, например администраторов сервера хранились локально и не пытались упрятаться в vhdx?
Второй вопрос — известно ли как работает функция «Использовать временные папки для сеанса»? Почитал описание — пишут что если включена или выключена — все едино временные файлы хранятся в профиле пользователя. В чем разница тогда?
1) Простого способа исключить сохранение профилей некоторых пользователей из UPD нет. Как вариант, подключаться на консоль сервера — mstsc /admin
В этом случае используетя локальный профиль.
2) Опыта использования политики Do not use temporary folders per session нет, понять работает она или нет можно только экспериментом. Будет ли при включенной политике использоваться общая папка Temp или нет.
Спасибо за статью.
В статье есть такое предложение «Также Microsoft отмечает, что скорость загрузки рабочей среды пользователя в случае использования UPD уменьшается.»
Здесь ошибка или нет? При использовании UPD скорость загрузки рабочей среды пользователя уменьшается или увеличивается?
ИМХО: скорость загрузки рабочей среды пользователя уменьшается т.е. время той самой загрузки увеличивается
Значит при использовании UPD есть негативный результат — профили пользователей начнутся загружаться дольше.
Нет идеальных технологий.
При большом кол-ве юзеров/хостов с этим можно мириться!
описка скорее всего. скорость загрузки увеличивается или другими словами время загрузки уменьшается )
UPD профили грузятся немного быстрее. Ведь нужна всего одна сесиия копирования файла UPD по сети, не нужно копировавть множество мелких файлов.
На новой РДС-ферме в некоторорых юзеров (рандомные юзеры) появляется проблема с удалением в корзину.
Для таких юзеров я захожу в папку $RECYCLE.BIN и удаляю корзину юзера (ищу по СИДу)
Но хотелось бы глянуть что с корзиной в UVHD-template.
я примаунчиваю его он он абсолютно пустой.
ЧЯДНТ ?
Столкнулся с проблемой…Не работае кнопка Пуск, поиск.
Все стандартніе решения проблемы не помогли, подозреваю что дело именно в использовании User Profile Disks.
Есть такая фигня…
Нагуглили что все из-за фаерволла…
Remove-Item «HKLM:\SYSTEM\CurrentControlSet\Services\SharedAccess\Parameters\FirewallPolicy\RestrictedServices\Configurable\System»
New-Item «HKLM:\SYSTEM\CurrentControlSet\Services\SharedAccess\Parameters\FirewallPolicy\RestrictedServices\Configurable\System»
+ ребут RDHS
Помогает, но ненадолго…
Вот здесь подронее проблема описана. Действительно при использовании UPD на RDS, в файерволе со временем накапливаются тысчи правил. От этого все начинает тормозить:
https://winitpro.ru/index.php/2018/05/18/medlenno-rabotayut-remoteapp-problemy-menyu-windows-10/
Пардоньте, прошлый комментарий не туда написал(
Может кто-нибудь подскажет, как с помощью PS вывести на экран туже информацию, что выводит diskpart -> list vdisk?
Пример:
C:\Windows\system32>diskpart
Microsoft DiskPart, версия 10.0.14393.0
(С) Корпорация Майкрософт (Microsoft Corporation), 1999-2013.
На компьютере: TSMSK11
DISKPART> list vdisk
Вирт. диск ### Диск ### Состояние Тип Файл
————— ——— ——————— ——— ——
Вирт. диск 0 Диск 28 сек. Присоединено, но не сек. Расширяемы сек. \\uprofile\TSProfiles\UVHD-SID.vhdx
Вирт. диск 1 Диск 29 сек. Присоединено, но не сек. Расширяемы сек. \\uprofile\TSProfiles\UVHD-SID.vhdx
Вирт. диск 2 Диск 12 сек. Присоединено, но не сек. Расширяемы сек. \\uprofile\TSProfiles\UVHD-SID.vhdx
Вирт. диск 3 Диск 6 сек. Присоединено, но не сек. Расширяемы сек. \\uprofile\TSProfiles\UVHD-SID.vhdx
Вирт. диск 4 Диск 41 сек. Присоединено, но не сек. Расширяемы сек. \\uprofile\TSProfiles\UVHD-SID.vhdx
Вирт. диск 5 Диск 21 сек. Присоединено, но не сек. Расширяемы сек. \\uprofile\TSProfiles\UVHD-SID.vhdx
Вирт. диск 6 Диск 17 сек. Присоединено, но не сек. Расширяемы сек. \\uprofile\TSProfiles\UVHD-SID.vhdx
Вирт. диск 7 Диск 31 сек. Присоединено, но не сек. Расширяемы сек. \\uprofile\TSProfiles\UVHD-SID.vhdx
Вирт. диск 8 Диск 3 сек. Присоединено, но не сек. Расширяемы сек. \\uprofile\TSProfiles\UVHD-SID.vhdx
Вирт. диск 9 Диск 16 сек. Присоединено, но не сек. Расширяемы сек. \\uprofile\TSProfiles\UVHD-SID.vhdx
Вирт. диск 10 Диск 34 сек. Присоединено, но не сек. Расширяемы сек. \\uprofile\TSProfiles\UVHD-SID.vhdx
Вирт. диск 11 Диск 44 сек. Присоединено, но не сек. Расширяемы сек. \\uprofile\TSProfiles\UVHD-SID.vhdx
Вирт. диск 12 Диск 30 сек. Присоединено, но не сек. Расширяемы сек. \\uprofile\TSProfiles\UVHD-SID.vhdx
А тут нет инфы?
https://winitpro.ru/index.php/2019/01/10/powershell-upravlenie-diskami-i-razdelami/
Может я не туда смотрю(, но я не нашел как сделать, чтобы выводился №вирт.диска и соответственно путь к нему.
Поясню, это диски на одном из серверов фермы RDS, использующем «Диски профилей пользователей»(UPD), выше список примонтированных UPD на сетевой шаре.
UPD монтируется под определенным номером виртуального диска для каждого вошедшего пользователя, что можно также посмотреть в оснастке «Управления дисками».
Иногда возникает ситуация, когда необходимо отмонтировать диск определенного пользователя, при условии, что сессии пользователя на ферме RDS нет и соответственно нет возможности узнать на каком именно сервере подключен его UPD. Приходится перебирать вручную все подключенные UPD на каждом сервере.
Понимаю вашу боль т.к. иногда сами такое ловим с дисками.
Мы юзаем https://gallery.technet.microsoft.com/Sidder-Quickly-see-which-fa6360b3 для того что б смотреть все диски.
Если найдете причину не_отмаунчивания дисков — обязательно поделитесь 😉
Спасибо за инфо, про Sidder знаю, сам пользую, но он не дает той информации, которая мне нужна 🙁
У нас как правило «не_отмаунчивание» происходит после сильной загрузки серверов, сами ищем решение, т.ч. взаимно, если найдете, пишите 🙂
Кстати, могу еще порекомдовать Galinette cendrée для управления серверами фермы 😉
@Алексей
в одном ТГ-чате народ пишет что после перехода на ССДшки (без изменения структуры РДС-фермы) все проблемы с ЮПД ушли сами по себе 🙂
Подскажите в варианте использования нескольких терминальных серверов (HA) с брокером (-ми) возможно использование одного UPD для пользователя??
да — можно.
на каждую коллекцию свой UPD для пользователя
День добрый!
При попытке использования командлетов Resize-vhd и Optimize-vhd получаю:
The Hyper-V Management Tools could not access an expected WMI class on computer ‘tratata’. This may indicate that the Hyper-V Platform is not installed on the computer or that the version of the Hyper-V Platform is incompatible with these management tools.
Я так понимаю, что нужна непосредственно сама роль Hyper-V ?
Фича Hy\per-V Module for Windows PowerShell — установлена.
Server 2016.
1. Попробуйте запустить PS консоль от админа
2. Если не заработало, то выполните в этой консоли:
MOFCOMP %SYSTEMROOT%\System32\WindowsVirtualization.V2.mof
3. Если и после этого не заработало, ребутните сервер.
Спасибо, но это все бесполезно, пока не установлена роль (служба) Hyper-V.
Файлы .mof создаются после добавлении роли Hyper-V (проверил на W10).
Сразу после добавления роли Hyper-V, корректно отрабатывают и командлеты.
На 2016 еще не пробовал, но уверен, там все так же.
Добрый день. Подскажите пожалуйста, возможно глупый вопрос будет. Терминальный сервер на SSD дисках, файловый сервер с дисками профилей — на обычных дисках. Что влияет на производительность сеанса пользователя больше, диски на терминальном сервере или диски файлового сервера? Имеет ли смысл на файлом сервере менять диски на SSD?
у вас UPD или перемещаеммые профили?
ИМХО важнее всего то где лежит профиль юзера.
Но можно просто взять и все «замерять» тем же ресурс монитором!
Тут еще е играет пропускная способностиь сети до сервера.
Для 1 Гб Ethernet макс скорость 125 Мб/с, в том время как скорость доступа к среднему SSD около 500 Мб/с. Т.е. ваша cеть просто не успеет прокачать все возможности SSD.
На RDS терминале SSD диск имхо будет лучше.
У меня UPD, понял попробую монитор ресурсов посмотреть. Никогда не пользовался правда им
Пробую внедрить UPD. Стандартный TEMP (TMP) (%USERPROFILE%\AppData\Local\Temp) вызывает ошибки установки Расширений в Edge. Пробовал %USERPROFILE%\Temp та же ошибка. Установка TEMP (TMP) в «c:\TEMP\%USERNAME%» исправляет положение, но это крайне несекьюрно!!! Как сделать правильно?
Скорее всего Вам поможет вот эта статья
https://www.brankovucinec.com/users-cant-install-google-chrome-extensions-on-rds-farm/
В статье изложена автоматизация процесса назначения TEMP (TMP). Но делать так крайне не рекомендую…
Вопрос остаётся открытым.
Пробую внедрить UPD. UVHD-template.vhdx пустой. Что в этом диске должно быть?
По большому счету ничего не должно лежать.
Это заготовка для будущих виртуальных дисков, которая только размер диска профиля задает.
Но, чисто теоретически, туда, наверное, возможно впихнуть какую-то заранее подготовленную инфу, но мне кажется есть более гибкие инструменты.
Добрый день!
Сразу попробовал, потом статью прочитал 🙂
Может быть уже есть решение, как сделать чтобы профили некоторых пользователей, например администраторов сервера хранились локально и не пытались упрятаться в vhdx?
Что-то мне не камильфо, когда профиль администратора далеко от Windows 🙂
Или не парится по этому поводу, посоветуйте
Можно для админов создать отдельную коллекцию и не настраивать для нее UPD. А можно не парится — чем потенциално грозит то, что WIndows не сможет загрузить профиль админа? чтотам важного хранится? в любом случае создатся временный профиль, его вам хватит для работы и исправления проблем.
Пробую внедрить UPD (данные перемещаемого профиля, данные реестра пользователя) и перенаправление папки (рабочий стол, документы). После нескольких логинов к терминальному серверу «ломается» меню ПУСК, многое исчезает и абракадабры. Удаляю vhdx профиля, сначала опять хорошо, потом проблема повторяется. Кто-нибудь сталкивался?
Тоже самое. Решили проблему?
Здравствуйте. Есть задача обновления фермы RDP c WS2012R2 на WS2016 через Clean install. Можно ли прозрачно мигрировать UPD диски с фермы RDP2012R2 на ферму RDP2016? есть ли какие-нить сценарии?
В названии UPD профиля указан SID пользователя, поэтому в теории новый сервер должен подхватить старые UPD профили.
Но основная проблема — разный формат профиля. v4 в windows 2012 r2 и v5 в Windows Server 2016.
Подхватит ли новый сервер старый профиль и будет ли он работать корректно — не знаю.
Наверно проще всего попробовать — развернуть RDS из одного хоста 2016, скопировавть в отдельную папку пару профилей, нацелить коллекцию на этот каталог и попробовать залогинитсья под пользователем.
О результатах рассказать здесь 🙂
Наверное, уже сами проверили, но UPD переезжают без каких-либо проблем. Не так давно постепенно мигрировали с 2012R2 на 2019, т.е. просто добавляли в коллекцию новые серверы с ролью Session host, выводя старые. Единственная рекомендация — заранее обновить сервер с ролями Connection broker, Gateway до 2016-2019.
Спасибо за инфу!
Доброго дня. После перезагрузки сервера при входе по RDP создается локальный профиль, диск профиля не подгружается. Перезагрузка проблему не решила. Как возможно решить данную проблему?
Изучайте события, связанные с профилями (источника User Profiles Service ) в Event Viewer:
Application
Applications and Services Logs -> Microsoft -> Windows -> User Profile Service -> Operational
Там обычно довольно подробно процесс загрузки профиля можно отследить.
Колеги на RDS 2016 столкнулся с проблемой, при монтировании UPD пользователя под администратом выбивает ошибку нет доступа, приходиться игратся назначять администратора владельцем и затем давать полные права. Есть решение данной проблемы ?
тоже интересует. Не решил проблему?
очередная «фича» от мелкософт,попробуйте под локальным администратором примаунтить диск юзверя- у вас получиться без проблем
Имеется в виду встроенной учеткой админа на сервере где хранятся upd диски
тоже интересует. Не решил проблему?
нет у них этих проблем )))
Скипт для преобразования SID дисков UPD в имена пользователей:
$UPDShare = $args[0]
$fc = new-object -com scripting.filesystemobject
$folder = $fc.getfolder($UPDShare)
"Username,SiD" >> export.csv
foreach ($i in $folder.files)
{
$sid = $i.Name
$sid = $sid.Substring(5,$sid.Length-10)
if ($sid -ne "template")
{
$securityidentifier = new-object security.principal.securityidentifier $sid
$user = ( $securityidentifier.translate( [security.principal.ntaccount] ) )
$user,$i.Name -join "," >> export.csv
}
}
$a = Import-Csv export.csv
$a
А что делать в случае если vhdx файл перемещаемого профиля юзверя не монтируется?Моя учетка доменного админа также имеет полные права на этот vhdx диск
Руками получается открыть/смонтровать vhdx файл?
Попробуйте проверить файл командлетом:
Test-VHD -Path name.vhdx
проверьте файловую систему на диске, где хранится upd
В том-то и дело что руками не получается открыть vhdx файл
Test-VHD -Path name.vhdx( name.vhdx-указать sid диска перемещаемого профиля юзверя или полный путь до yего?)
Коллеги доброго дня! К накипевшему вопросу с корзиной. Судя по всему за 7 лет никто так и не смог найти конкретную проблему и ее решение. Я заметил пару мелочей.
1 — при создании нового UPD корзина работает исправно.
2 — удаление каталога корзины из cmd с админскими правами с помощью rd /s /q C:\$Recycle.bin может помочь, однако не всегда. Например сегодня одному сотруднику эта процедура помогла и он смог удалять файлы без требования админских прав, а вот другому же анологичная процедура не принесла никаких изменений. Если кто-то знает еще возможные варианты решения данной проблемы, очень прошу помочь, это действительно важно поскольку пересоздавать профиль или удалять файлы через shift+del крайне неприятно.
Насчёт UVHD-template.vhdx как и у другого юзера у меня этот шаблон пуст!
Добрый день!
На сколько я помню, проблему решает удаление корзины именно из профиля пользователя: c:\Users\Username\$Recycle.Bin
Если тема активна, просьба помочь или направить в нужное русло. После выхода пользователей, профиль .vhdx (лежащие на отдельном сервере), висит не доступный, как будто продолжает кем то использоваться, не открыть не удалить. Из за это при повторном подключении, пользователю создаётся временный профиль локально
Да, бывает такое, сравнивайте кол-во активных пользовательских сессий с кол-вом подключенных дисков на терминале, отключайте лишние. Иногда отключить удается только разорвав SMB сессию на сервере с общей папкой.
Спасибо за совет, до этого уже тоже дошли постепенно. Получается что пользователь закрыл сессию с хоста, а в SMB как открытые еще висят и не закрываются. Хотелось бы именно понять это
Не могу нигде найти утилиту Sidder.
Но вот как оказалось, можно вывести пользователей, которые используют vhdx диск профиля с помощью powershell:
Get-Acl G:\UVHD\*.vhdx
См. на параметры owner и access.
Поделюсь свое проблемой, может еще кому-то поможет.
Меня замучали временные UPD профили на RDS сервере. Каждый раз чтобы удалить temp профиль приходилось сначала удалять все TEMP профили из Control Panel > System > Advanced System Properties > Advanced > User Profiles > Settings и потом вручную очищать ветку для SID пользователя в реестра
HKLM\SOFTWARE\Microsoft\Windows NT\Current Version\ProfileList, ну и на диске в c:\users.
Как оказалось, самое простое решение — более жесткие политики по disconnect простаивающих сессий Computer Configuration / Administrative Templates / Windows Components / Remote Desktop Services / Remote Desktop Session Host / Session Time Limits -> Set time limit for disconnected sessions — 2 часа
В результате файлы UPD быстрее стали разблокировались и проблемы с temp профилями почти ушли
Может быть подойти с другой стороны и запретить загрузку временных профилей политикой?
Конфигурация компьютера/Шаблоны администрирования/Система/Профили пользователей/Не регистрировать в системе пользователей с временными профилями — Включить?
Пользователи будут долбить чаще с проблемой «не могу войти в систему». Думаю, ее стоит включить только в сочетании с политикой time limit for disconnected session.
Всем привет.
Подскажите коллекция RemoteAPP (опубликовали приложения только) не создаёт диск с профилем! Запускаем к примеру опубликованную 1с -ку диск с профилем не создаётся, но если я зайду на узел сеансов рабочих столов ( test.test.local /admin ) диск создаётся. По правам на сетевое хранилище всё ок. Или всё же RemoteAPP и не должен создавать диск?
Всем доброго дня.
Кто подскажет как правильно переместить VHDX файлы профилей пользователей в новое место без потерь?
Имеется Windows Server 2022, RDS на Hyper-V. Файлы профилей пользователей лежат внутри виртуального диска данных.
Нужно перенести либо Весь виртуальный диск данных RDS сервера вместе со всеми файлами пользователей на новое место — хранилище SYNOLOGY, либо перенести отдельно файлы VHDX пользователей в общий каталог.
С одной стороны переместить весь общий диск сервера проще, но хочется понять возможен ли перенос отдельно файлов пользователей.
Как я понимаю, указание новой локации в мастере просто создаст новые файлы по новому адресу?
К сожалению нет ресурсов для тестирования.
Просто переместите все файлы VHDX файлы на новое место с сохраннеем NTFS прав и владельцев:
xcopy e:\old F:\new /O /X /E /H /K
И перенастроить настройки коллекции RDS на новый путь. Естественно, все сессии пользователей должны быть отключены.
Можете протестировать на паре пользователей. Создайте новую коллекцию с профилями по временным путям, перренесите UPD файлы, заменитие путь в RDS и проверьте.