Еще задачка.
Используем redirection folder'ы (RF) для рабочего стола и документов пользователей, соответственно, при увольнении человека его RF остается на сервере и занимает место. Хочу сделать скрипт, который:
1) мог бы просканировать GPO и найти по ключевому слову Redirect (их несколько) нужные политики.
СДЕЛАЛ.
2) Извлечь из найденых политик пути где лежат RF
\\serv1\redirect
\\serv2\redirect01
\\serv2\redirect02
Сделал
3) Просканировать полученные пути и узнать владельцев папок.
\\serv2\redirect01\user12 - user12
\\serv2\redirect01\user34 - user34
\\serv2\redirect01\user38 - user38
Сделал
4) Проверить существование этих пользователей в AD, если существуют, проверить не отключены ли они, если не отключены - проверить lastlogon. Если пользователя нет, он отключен или lastlogon больше года, то создаем список пользователь - папка.
Сделал
Удалять все-таки буду вручную.
Пока застыл на получении путей.
Делал как
здесь.
Код: $gpm = New-Object -ComObject GPMgmt.GPM
$gpmConstants = $gpm.GetConstants()
$gpmDomain =$gpm.GetDomain("domain.rul", "", $gpmConstants.UseAnyDC)
$gpmAllGpos = $gpmDomain.SearchGPOs($gpmSearchCriteria)
foreach ($gpmGpo in $gpmAllGpos) {if ($gpmGpo.DisplayName -like '*Redirect *') {$gpmGpo.GenerateReport(0
).result}}