Вот здесь был материал про перемещение виртуальных дисков отключённых пользователей, но так как файлы дисков по-прежнему носят имена по схеме UVHD-SID — разобраться в принадлежности без сборки нового скрипта сложно. Да и в целом, полезно знать какой диск кому принадлежит.
На практике, для того чтобы разобраться с дисками и их пользователями, я использую вот такой скрипт:
# Директория с виртуальными дисками пользователей #
$backupdir = "\\server\vhdx\"
# Получаем массив с именами дисков #
$disks = (Get-ChildItem -Path $backupdir).BaseName
# Отбрасываем префикс в именах файлов #
$sids = $disks -replace "UVHD-", ""
# Получаем имя пользователя и строим таблицу #
$result = foreach($sid in $sids)
{
$username = (Get-ADUser -Identity $sid).Name
$disk = "UVHD-$sid.vhdx"
[PsCustomObject]@{"Имя пользователя" = $username; "Диск" = $disk}
}
# Сортируем результат и выводим в виде таблицы #
$result | Sort-Object -Property "Имя пользователя" | ft -AutoSize
# Ждём действия пользователя #
Read-Host
Табличный вывод будет отсортирован по имени пользователя, но можно заменить на -Property «Диск» и тогда будет проще ориентироваться в SID’ах.
Кстати, эту конструкцию можно применить к любому хранилищу виртуальных дисков пользователей терминальной фермы. Нужно только указать нужный путь в переменной $backupdir.