Что нового

Как переименовать компьютер в домене Active Directory через PowerShell

1788774694013.png


Мне понадобилось переименовать рабочий компьютер в домене Active Directory и присвоить ему имя LT0036RTT. При этом в AD уже была запись с нужным именем.

С первого раза переименование не получилось: сначала я ошибся при вводе команды, затем получил сообщение о неверном имени пользователя или пароле. В итоге всё заработало. Собрал здесь порядок действий и разбор ошибок — пригодится тем, кто делает это впервые.

Что нужно перед началом

В моём случае это был компьютер с Windows 10 Pro, уже включённый в домен. Для выполнения действий понадобятся:

  • Связь компьютера с сетью организации и контроллером домена.
  • Права локального администратора для запуска PowerShell.
  • Доменная учётная запись с правом переименования компьютеров.
  • Доступ к управлению AD и права на удаление старого объекта, если нужное имя занято.

LT0036RTT — имя из моего примера. Если вам нужно другое, замените его в команде.

1. Разбираюсь с записью, которая занимает имя

Здесь важно различать два объекта: запись работающего компьютера, который я хочу переименовать, и старую запись с нужным мне именем.

Текущее имя ПК можно посмотреть, выполнив на нём:

Код:
hostname

Удалять запись работающего ПК для обычного переименования не нужно. Освобождать имя удалением можно только тогда, когда установлено, что занимающий его объект относится к старому, больше не используемому компьютеру. Положение записи в списке AD этого не подтверждает.

Если имя занимает действующий компьютер, сначала нужно решить вопрос с ним. Два рабочих ПК с одним именем нам не нужны.

Перед удалением старого объекта проверяю, нет ли в нём нужных данных восстановления BitLocker. Они хранятся в дочерних объектах и удаляются вместе с записью компьютера. Нужные ключи следует заранее сохранить в защищённом хранилище организации.

Дальше порядок такой:

  1. Открыть оснастку «Active Directory — пользователи и компьютеры».
  2. Найти старый объект с именем LT0036RTT и ещё раз проверить, что выбран именно он.
  3. Нажать правой кнопкой мыши → «Удалить» и подтвердить удаление.

Если контроллеров домена несколько, перед переименованием нужно дождаться репликации удаления между ними. Нажатие F5 только обновляет список в оснастке.

Если нужное имя свободно, этот шаг пропускаю.

2. Запускаю PowerShell на нужном компьютере

Команду ниже я выполняю на самом ПК, который нужно переименовать.

В меню «Пуск» нахожу Windows PowerShell, нажимаю правой кнопкой мыши и выбираю «Запуск от имени администратора».

Вставляю команду целиком:

Код:
Rename-Computer -NewName "LT0036RTT" -DomainCredential (Get-Credential) -PassThru

Здесь:

  • Rename-Computer — команда переименования.
  • -NewName "LT0036RTT" — новое имя компьютера.
  • -DomainCredential (Get-Credential) — запрос доменной учётной записи.
  • -PassThru — вывод результата выполнения.

Поскольку в команде не указан удалённый компьютер, она применяется к тому ПК, на котором запущена.

3. Ввожу доменную учётную запись

В появившемся окне нужно указать доменный логин и пароль. Формат имени пользователя:

Код:
ДОМЕН\логин

Например, для условного домена COMPANY и пользователя ivanov:

Код:
COMPANY\ivanov

Это пример — вместо него нужно ввести свои данные.

Учётная запись должна иметь право переименовывать компьютеры в домене. Запуск PowerShell от имени локального администратора сам по себе таких прав не даёт.

В поле пароля нужен пароль доменной учётной записи, а не PIN-код входа в Windows.

Какие ошибки я получил

Ошибка № 1. «-NewName» не распознано как имя командлета


В первой попытке я ввёл строку, которая начиналась с параметра -NewName, пропустив саму команду Rename-Computer.

PowerShell попытался выполнить параметр как отдельную команду. Исправление простое: скопировать строку целиком, начиная с Rename-Computer.

Ошибка № 2. Не удаётся найти параметр «Passtrue»

В следующей попытке я написал -Passtrue. Правильное написание — -PassThru.

Разница в буквах, а не в их регистре. Чтобы снова не ошибиться, лучше скопировать готовую команду из статьи.

Ошибка № 3. «Неверное имя пользователя или пароль»

Когда синтаксис стал правильным, появилась ошибка учётных данных. В результате выполнения было указано:

Код:
HasSucceeded
------------
False

Это означает, что переименование не удалось.

При такой ошибке нужно проверить домен в имени пользователя, сам логин, пароль, раскладку клавиатуры и Caps Lock. Если данные точно верны, а ошибка остаётся, стоит обратиться к администратору домена для проверки учётной записи.

Пароль не нужно вставлять в команду, отправлять в переписку или показывать на скриншотах.

4. Проверяю результат и перезагружаю ПК


После успешного выполнения в столбце HasSucceeded должно появиться значение True. Рядом будут старое и новое имена компьютера.

Затем нужно сохранить открытые документы и выполнить обычную перезагрузку Windows. Новое имя вступает в силу после неё.

Для проверки снова открываю PowerShell и выполняю:

Код:
hostname

Ожидаемый результат в моём примере:

Код:
LT0036RTT

После этого обновляю список в оснастке AD клавишей F5 и проверяю имя объекта. Если оснастка подключена к другому контроллеру домена, изменение может появиться после репликации.

У меня переименование в итоге получилось. Больше всего времени заняли опечатка в параметре и ошибка учётных данных — поэтому обе оставил в статье вместе с объяснениями.
Об авторе
Guru
Василий, cистемный админ /gnu/linux/windows/macos/mikrotik/troubleshooter, создатель сайта
Интересуюсь всем что делает инфраструктуру быстрой и надёжной
Открыт к общению и проектам, написать мне можно через форму или в личном сообщении

❗ Если есть пожелания по обзору какого-либо вопроса не представленного на сайте - пиши в комментариях

Комментарии

Нет комментариев для отображения.

Информация о статье

Автор
Guru
Время чтения статьи
3 мин чтения
Просмотры
13
Посл. обновление

Ещё в Windows

Ещё от Guru

Поделиться этой статьёй

Назад
Верх