Назад | Перейти на главную страницу

Перенос рабочих станций из одного подразделения в другое

Я собрал приведенный ниже сценарий PowerShell, но когда я запускаю его на своем DC, я получаю следующее сообщение об ошибке.

Моя общая цель состоит в том, чтобы сценарий захватил любые рабочие станции в рамках подразделения Computers OU и переместил их в подразделение Workstations OU, которое является дочерним подразделением в родительском подразделении London OU.

Любая помощь будет оценена.

Скрипт Powershell

$computerstomove = Get-ADComputer -LDAPFilter "(name=TCWSTEST)" -SearchBase "CN=computers,DC=temporis,DC=corp"
foreach ($computertomove in $computerstomove) {
    Move-ADObject $computertomove -TargetPath "OU=London,OU=Workstations,DC=temporis,DC=corp"
}

Сообщение об ошибке:

Move-ADObject : The operation could not be performed because the object's parent is either uninstantiated or deleted
At \\tcws40\c$\Scripts\Workstation move.ps1:4 char:2
+     Move-ADObject $computertomove -TargetPath "OU=London,OU=Workstations,DC=tempori ...
+    ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    + CategoryInfo          : NotSpecified: (CN=TCWSTEST,CN=...emporis,DC=corp:ADComputer) [Move-ADObject], ADException
    + FullyQualifiedErrorId : ActiveDirectoryServer:8329,Microsoft.ActiveDirectory.Management.Commands.MoveADObject

Во-первых, нет необходимости в ненужном foreach. Это должно работать нормально:

Get-ADComputer TCWSTEST | Move-ADObject -TargetPath "OU=London,OU=Workstations,DC=temporis,DC=corp"

Во-вторых, я протестировал оба способа (ваш и мой) в своей среде, и оба они работали без ошибок. Подтвердили ли вы, что если "родительский объект объекта не создан или удален" верно? Дважды проверьте свой DN "OU=London,OU=Workstations,DC=temporis,DC=corp" потому что вы получите это сообщение об ошибке, если в вашем DN есть опечатка.

В конце концов, чтобы упростить себе жизнь, я изменил папку по умолчанию, в которой размещаются ПК при добавлении в домен. Я использовал команду redircmp на своем DC в Powershell, и это сработало.

redircmp "OU = Workstations, OU = London, DC = temporis, DC = corp"