Некоторые инструменты Windows, использующие командную строку, не найти ни в Resource Kit, ни в Support Tools, ни в глобальной сети - они встроены непосредственно в Windows! Команды Net – пример мощных и зачастую по незнанию игнорируемых инструментов, постоянно находящихся под рукой администратора. В статье “Не забывайте о Net Share” (опубликованной Windows IT Pro/RE № 5 за 2006 год) говорилось об использовании Net Share для управления коллективным доступом к файлам. Net Share имеет родственную команду – Net User, предназначенную для создания, удаления и управления локальными и доменными учетными записями пользователей.

 

Подробно о синтаксисе

 

Для начала рассмотрим основной синтаксис Net User на примере команды с ключом /add для создания учетной записи пользователя:

net user /add /domain

Без ключа /add команда Net User работает с имеющейся учетной записью. Ключ /domain обеспечивает соединение с контроллером домена (DC) и создание учетной записи домена. В противном случае создается локальная учетная запись. Конечно, если команда выполняется на DC, автоматически создается учетная запись домена. Например, команда

net user joe hi /add

создает новую локальную учетную запись пользователя под именем joe с паролем hi. Команда

net user jane wolf /domain

обеспечивает соединение с DC и восстановление пароля wolf пользователя Jane. Заметим, что эта команда выполняет восстановление, а не изменение пароля. Мне неизвестен инструмент командной строки, который бы выполнял изменение пароля.

 

Если создается учетная запись Active Directory (AD), ее регистрационным именем становится name@domainname. Например, команда

net user wally wallypassword /domain /add,

выполненная на системе, входящей в домен bigfirm.com, создает учетную запись, которая в “старом” стиле Windows NT 4.0 будет иметь регистрационное имя bigfirmwally, а в стиле AD – основное имя пользователя (UPN) wally@bigfirm.com. Пароль можно пропустить:

net user sally /add /domain,

но при этом создается учетная запись с нулевым паролем. Такая учетная запись, вероятно, окажется неправильной, о чем будет свидетельствовать сообщение об ошибке, поскольку большинство из нас работает в условиях минимальных требований к использованию пароля в сети. Как и для других команд Net, верхний и нижний регистры не имеют значения – конечно, за исключением, паролей.

Изменение атрибутов

Можно использовать несколько вариантов изменения атрибутов учетной записи. Ключ /active:[yes|no] позволяет делать  учетную запись доступной или нет. Ключ /comment позволяет добавлять комментарий к учетной записи. Если текст комментария содержит пробелы и другие знаки, необходимо заключить его в двойные кавычки:

net user lila /comment:“accounting person” /add

Для удаления комментария можно просто повторно набрать команду, в которой за ключом /comment ничего не следует.

Ключ /homedir позволяет указать путь, соответствующий соглашению об универсальном назначении имен (UNC), к домашнему каталогу пользователя. Аналогично, ключ /profilepath позволяет указать UNC-путь к перемещаемому профилю пользователя. Например, если нужно, чтобы зарегистрированный пользователь Lila имел перемещаемый профиль, хранящийся в папке lila в совместно используемом каталоге profiles на сервере fileserver27, и чтобы каталогом пользователя Lila по умолчанию была папка lilastuff в каталоге homes на сервере fileserver04, можно изменить учетную запись следующим образом:

net user lila /profilepath:“fileserver27profiles lila” /homedir:“fileserver04homeslilastuff”

При регистрации пользователя Lila в системе извлекается соответствующий перемещаемый профиль с fileserver27. Впоследствии открываемая командная строка всякий раз будет содержать не C:Documents and Settingslila, а просто Z, поскольку система автоматически назначает букву Z для fileserver04 homeslila, как если бы была введена команда

net use Z: fileserver04homeslila

Как и в случае /comment, параметры /homedir или /profilepath можно удалить, просто набирая команду, в которой за двоеточием ничего не следует. Те, кому когда-либо приходилось работать с оснасткой Active Directory Users and Computers консоли Microsoft Management Console (MMC) для создания перемещаемого профиля или домашнего каталога, вероятно, имеют представление об использовании системной переменной %username%. В случае с Net User этот механизм не работает.

Многие назначают учетным записям пользователя сценарий регистрации. Net User позволяет это делать с применением ключа /scriptpath, осуществляющего ссылку на файл в совместно используемом каталоге Netlogon, который имеется на каждом DC. Например, задание lilastart.cmd в качестве сценария регистрации пользователя Lila означает, что сценарий регистрации пользователя Lila содержится в файле под указанным именем в каталоге Netlogon. Задание scriptslilastart.cmd означает, что сценарий содержится в папке scripts, находящейся в каталоге Netlogon.

Ключ /fullname позволяет назначать значение, используемое модулем расширения Active Directory Users and Computers для вызова отображаемого имени пользователя. Ключ /workstations позволяет ограничить рабочие станции, доступные для входа по данной учетной записи. Для ограничения учетной записи пользователя Lila разрешением регистрации только на компьютер PCWS55 можно набрать

net user lila /workstations:pcws55

При указании более одной рабочей станции составляется список, разделенный запятыми. Можно заключить этот список в двойные кавычки, но не следует оставлять пробелы после запятых. Допускается указание не более восьми рабочих станций. Ключ /passwordchg:[yes|no] позволяет указать, может ли пользователь менять свой пароль. Примечательно, что Net User нельзя использовать для установки бесконечного срока действия пароля учетной записи.

Добавление ключа /delete позволяет удалить учетную запись. Например, команда

net user joe /delete

удаляет локальную учетную запись под именем Joe, а команда

net user jane /domain /delete

осуществляет соединение с DC и удаление учетной записи пользователя Jane. Сама по себе команда Net User открывает список учетных записей пользователей, а команда Net User username дает информацию о конкретной учетной записи пользователя.

В заключение рассмотрим пример того, как команда Net User позволяет решить проблему, которая может показаться трудноразрешимой. Недавно мне было нужно создать домен с 501 учетными записями пользователей. Их содержание не имело значения – просто требовалось быстро создать 501 фиктивную учетную запись. Я воспользовался комбинацией команды Net User и инструмента For:

for /l %r in (1,1,501) do net user user%r password%r /add

Необходимое количество учетных записей было создано мгновенно. Те, кому интересно узнать, зачем мне нужны были эти учетные записи, могут ознакомиться со статьей Microsoft, опубликованной по адресу http://support.microsoft.com/default.aspx?scid=kb;en-us;281923. Обещаю, что вы ощутите внезапную потребность в Net User.

Марк Минаси (http://www.minasi.com/gethelp) – старший редактор Windows IT Pro и MCSE, автор книги Mastering Windows Server 2003 (издательство Sybex).