2009-08-27

Куда пропал netdom?

Если в Windows 7 попытаться воспользоваться командой netdom, получите такой результат

00

Нет этой команды в семерке. В  Windows Server 2008 R2 она, кстати, присутствует. Как же теперь из командной строки/скриптов подключать рабочую станцию в домен? Все просто. Запускаем powershell, читем ман по командлетам Add-Computer, Remove-Computer, Rename-Computer, Restart-Computer. В Windows 7/R2 появилось более ста новых командлетов. Add-Computer подключает машину в домен, Remove-Computer выводит из домена.

Не забывайте что, powershell надо запустить с адмнистративными привиллегиями. Иначе Add-Computer не отработает. Ну и помните про DNS, посредством которого ищуться контроллеры вашего домена. Основная проблема --- указание доменной учетки имеющей право подключения компьютера в домен. В командлете можно использовать параметр –credential для указания имени пользователя. Пароль, как в netdom join, указать нельзя.

02

Пароль спросили в отдельном окне. Для скриптов не годится.  Только для интерактивной работы.

03

В остальном все нормально. Напомнили о перезагрузке.

04

Для перезагрузки наряду с shutdown –r можно использовать Restart-Computer.

05

Попробуем разобраться с указанием доменной учетки. То есть с параметром –credential. В этом параметре вместо указания строки с именем пользователя можно использовать объект класса Management.Automation.PSCredential. Вот так вот. Не очень коротко. И как создать этот объект? Можно так:

06

Командлет get-credential возвращает нужный нам объект, спросив интерактивно логин и пароль. Пока не очень хорошо. Скрипт будет висет и ждать кого-то.

07

Смотрим, что в переменной $cred

08

Теперь в параметре –credential передаем не строку, а объект.

09

Можно не использовать Get-Credential,  а создать объект самостоятельно:

10

Скрипт все сделает автоматом. Но пароль у нас открытом текстом.  Как сделать тоже самое, но не держать пароль в скрипте? Можно и это! Но это другая история… Точнее другие истории, есть несколько вариантов…

No comments: