Хорошо, поэтому не уверен, возможно ли это все в одном.
Ситуация: новый компьютер не в домене, а только в локальной рабочей группе. Хотите изменить имя этого компьютера, присоединиться к домену и поместить имя компьютера в определенную рабочую группу для этого домена. Все это можно сделать через графический интерфейс сразу, так что это должно быть гипотетически возможно через командную строку, верно?
Я могу переименовать локальный компьютер с помощью этого метода: CMD> WMIC COMPUTERSYSTEM where "Name='%computername%'" CALL Rename NEWNAME, Password, User
Это работает, однако для внесения изменений требуется перезапуск.
Затем я создал командный файл, который отлично работает, чтобы делать то, что я хочу, используя NETDOM, однако его нельзя использовать, пока этот компьютер не будет перезагружен из-за изменения имени ...
SET /P compname=[promptString]
SET /P org=[promptString]
NETDOM JOIN %compname% /Domain:DOMAIN.NET /OU:%org%,DC=DOMAIN,DC=net /UserD:DOMAIN\user /PasswordD:password /Reboot:15 /verbose
PAUSE
Итак, я думаю, у меня вопрос ... есть ли способ сделать это одним способом без перезагрузки? Если перезагрузка абсолютно необходима, это занимает слишком много времени; единственная причина, по которой я хочу сделать этот VS с использованием графического интерфейса Windows, - это сразу же получить его в OU, которое мне нужно, без предварительной подготовки или перехода в AD и перемещения компьютера.
Возможно разделение операции на два скрипта. Второй запускать автоматически после перезагрузки с помощью RunOnce ключ. Первый сценарий может автоматизировать настройку второго.
Если вы установите тайм-аут для команды NETDOM, то можете ли вы установить тайм-аут, который смехотворно достаточен для того, чтобы скрипт также переименовал компьютер до перезагрузки? Другими словами, вместо того, чтобы иметь PAUSE
команда после NETDOM JOIN
, просто вставьте WMIC
команду после этого. (Или это слишком похоже на состояние гонки?)