Поделиться через


Add-Computer

Добавляет локальный компьютер в домен или рабочую группу.

Синтаксис

Domain (По умолчанию)

Add-Computer
    [-DomainName] <String>
    -Credential <PSCredential>
    [-ComputerName <String[]>]
    [-LocalCredential <PSCredential>]
    [-UnjoinDomainCredential <PSCredential>]
    [-OUPath <String>]
    [-Server <String>]
    [-Unsecure]
    [-Options <JoinOptions>]
    [-Restart]
    [-PassThru]
    [-NewName <String>]
    [-Force]
    [-WhatIf]
    [-Confirm]
    [<CommonParameters>]

Workgroup

Add-Computer
    [-WorkgroupName] <String>
    [-ComputerName <String[]>]
    [-LocalCredential <PSCredential>]
    [-Credential <PSCredential>]
    [-Restart]
    [-PassThru]
    [-NewName <String>]
    [-Force]
    [-WhatIf]
    [-Confirm]
    [<CommonParameters>]

Описание

Командлет Add-Computer добавляет локальный компьютер или удаленные компьютеры в домен или рабочую группу или перемещает их из одного домена в другой. Он также создает учетную запись домена, если компьютер добавляется в домен без учетной записи.

Параметры этого командлета можно использовать для указания подразделения и контроллера домена или небезопасного соединения.

Чтобы получить результаты команды, используйте параметры Подробные и PassThru.

Примеры

Пример 1. Добавление локального компьютера в домен, а затем перезагрузка компьютера

Add-Computer -DomainName Domain01 -Restart

Эта команда добавляет локальный компьютер в домен Domain01, а затем перезагрузит компьютер, чтобы внести изменения в силу.

Пример 2. Добавление локального компьютера в рабочую группу

Add-Computer -WorkgroupName WORKGROUP-A

Эта команда добавляет локальный компьютер в рабочую группу Workgroup-A.

Пример 3. Добавление локального компьютера в домен

Add-Computer -DomainName Domain01 -Server Domain01\DC01 -PassThru -Verbose

Эта команда добавляет локальный компьютер в домен Domain01 с помощью контроллера Domain01\DC01 домена.

Команда использует PassThru и подробные параметры для получения подробных сведений о результатах команды.

Пример 4. Добавление локального компьютера в домен с помощью параметра OUPath

Add-Computer -DomainName Domain02 -OUPath "OU=testOU,DC=domain,DC=Domain,DC=com"

Эта команда добавляет локальный компьютер в домен Domain02. Он использует параметр OUPath для указания подразделения для новых учетных записей.

Пример 5. Добавление локального компьютера в домен с помощью учетных данных

$addComputerSplat = @{
    ComputerName = 'Server01'
    LocalCredential = 'Server01\Admin01'
    DomainName = 'Domain02'
    Credential = 'Domain02\Admin02'
    Restart = $true
    Force = $true
}
Add-Computer @addComputerSplat

Эта команда добавляет компьютер Server01 в домен Domain02. Он использует параметр LocalCredential для указания учетной записи пользователя, которая имеет разрешение на подключение к компьютеру Server01. В нем используется параметр учетных данных для указания учетной записи пользователя, которая имеет разрешение на присоединение компьютеров к домену. Он использует параметр перезапуска для перезагрузки компьютера после завершения операции соединения и параметра Force для подавления сообщений подтверждения пользователей.

Пример 6. Перемещение группы компьютеров в новый домен

$addComputerSplat = @{
    ComputerName = 'Server01', 'Server02', 'localhost'
    DomainName = 'Domain02'
    LocalCredential = 'Domain01\User01'
    UnjoinDomainCredential = 'Domain01\Admin01'
    Credential = 'Domain02\Admin01'
    Restart = $true
}
Add-Computer @addComputerSplat

Эта команда перемещает компьютеры Server01 и Server02 и локальный компьютер из Domain01 в Domain02.

Он использует параметр LocalCredential для указания учетной записи пользователя, которая имеет разрешение на подключение к трем затронутым компьютерам. Он использует параметр UnjoinDomainCredential, чтобы указать учетную запись пользователя, которая имеет разрешение на присоединение компьютеров из домена Domain01 и параметра Credential, чтобы указать учетную запись пользователя, которая имеет разрешение на присоединение компьютеров к домену Domain02. Он использует параметр перезапуска для перезапуска всех трех компьютеров после завершения перемещения.

Пример 7. Перемещение компьютера в новый домен и изменение имени компьютера

$addComputerSplat = @{
    ComputerName = 'Server01'
    DomainName = 'Domain02'
    NewName = 'Server044'
    Credential = 'Domain02\Admin01'
    Restart = $true
}
Add-Computer @addComputerSplat

Эта команда перемещает компьютер Server01 на домен02 и изменяет имя компьютера на Server044.

Команда использует учетные данные текущего пользователя для подключения к компьютеру Server01 и отсоедините его от текущего домена. В нем используется параметр учетных данных для указания учетной записи пользователя, которая имеет разрешение на присоединение компьютера к домену Domain02.

Пример 8. Добавление компьютеров, перечисленных в файле в новый домен

$addComputerSplat = @{
    ComputerName = (Get-Content Servers.txt)
    DomainName = 'Domain02'
    Credential = 'Domain02\Admin02'
    Options = 'Win9xUpgrade'
    Restart = $true
}
Add-Computer @addComputerSplat

Эта команда добавляет компьютеры, перечисленные в файле, в Servers.txt домен Domain02. В нем используется параметр параметров для указания параметра Win9xUpgrade. Параметр перезапуска перезагрузит все только что добавленные компьютеры после завершения операции соединения.

Пример 9. Добавление компьютера в домен с помощью предопределенных учетных данных компьютера

Эта первая команда должна выполняться администратором с компьютера, который уже присоединен к домену Domain03:

$newADComputerSplat = @{
    Name = "Server02"
    AccountPassword = (ConvertTo-SecureString -String 'TempJoinPA$$' -AsPlainText -Force)
}
New-ADComputer @newADComputerSplat

# Then this command is run from `Server02` which is not yet domain-joined:

$joinCred = New-Object pscredential -ArgumentList ([pscustomobject]@{
    UserName = $null
    Password = (ConvertTo-SecureString -String 'TempJoinPA$$' -AsPlainText -Force)[0]
})
$addComputerSplat = @{
    DomainName = "Domain03"
    Options = 'UnsecuredJoin', 'PasswordPass'
    Credential = $joinCred
}
Add-Computer @addComputerSplat

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

Пример 10. Добавление компьютера в домен с новым именем

Использование этой комбинации команд позволяет избежать нескольких перезагрузок и нескольких операций записи в Active Directory для одного и того же объекта, когда компьютер присоединяется к домену с новым именем.

Rename-Computer -NewName "MyNewPC" -Force
$addComputerSplat = @{
    DomainName = 'Contoso.com'
    Credential = 'contoso\administrator'
    Options = 'JoinWithNewName', 'AccountCreate'
}
Add-Computer @addComputerSplat

Параметры

-ComputerName

Указывает компьютеры для добавления в домен или рабочую группу. По умолчанию используется локальный компьютер.

Введите имя NetBIOS, IP-адрес или полное доменное имя каждого из удаленных компьютеров. Чтобы указать локальный компьютер, введите имя компьютера, точку (.) или localhost.

Этот параметр не зависит от удаленного взаимодействия Windows PowerShell. Можно использовать параметр ComputerNameAdd-Computer, даже если ваш компьютер не настроен для выполнения удаленных команд.

Этот параметр представлен в Windows PowerShell 3.0.

Свойства параметров

Тип:

String[]

Default value:Local computer
Поддерживаются подстановочные знаки:False
DontShow:False

Наборы параметров

(All)
Position:Named
Обязательно:False
Значение из конвейера:True
Значение из конвейера по имени свойства:True
Значение из оставшихся аргументов:False

-Confirm

Запрашивает подтверждение перед запуском cmdlet.

Свойства параметров

Тип:SwitchParameter
Default value:False
Поддерживаются подстановочные знаки:False
DontShow:False
Aliases:cf

Наборы параметров

(All)
Position:Named
Обязательно:False
Значение из конвейера:False
Значение из конвейера по имени свойства:False
Значение из оставшихся аргументов:False

-Credential

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

Введите имя пользователя, например User01 или Domain01\User01, или введите объект PSCredential, например объект, созданный командлетом Get-Credential. Если ввести имя пользователя, вам будет предложено ввести пароль.

Чтобы указать учетную запись пользователя, которая имеет разрешение на удаление компьютера из текущего домена, используйте параметр UnjoinDomainCredential. Чтобы указать учетную запись пользователя с разрешением на подключение к удаленному компьютеру, используйте параметр LocalCredential.

Свойства параметров

Тип:PSCredential
Default value:None
Поддерживаются подстановочные знаки:False
DontShow:False
Aliases:DomainCredential

Наборы параметров

Domain
Position:Named
Обязательно:True
Значение из конвейера:False
Значение из конвейера по имени свойства:False
Значение из оставшихся аргументов:False
Workgroup
Position:Named
Обязательно:False
Значение из конвейера:False
Значение из конвейера по имени свойства:False
Значение из оставшихся аргументов:False

-DomainName

Указывает домен, к которому добавляются компьютеры. Этот параметр требуется при добавлении компьютеров в домен.

Свойства параметров

Тип:String
Default value:None
Поддерживаются подстановочные знаки:False
DontShow:False
Aliases:ДН, Домен

Наборы параметров

Domain
Position:0
Обязательно:True
Значение из конвейера:False
Значение из конвейера по имени свойства:False
Значение из оставшихся аргументов:False

-Force

Подавляет запрос подтверждения пользователя. Без этого параметра Add-Computer требует подтверждения добавления каждого компьютера.

Этот параметр представлен в Windows PowerShell 3.0.

Свойства параметров

Тип:SwitchParameter
Default value:False
Поддерживаются подстановочные знаки:False
DontShow:False

Наборы параметров

(All)
Position:Named
Обязательно:False
Значение из конвейера:False
Значение из конвейера по имени свойства:False
Значение из оставшихся аргументов:False

-LocalCredential

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

Введите имя пользователя, например User01 или Domain01\User01, или введите объект PSCredential, например объект, созданный командлетом Get-Credential. Если ввести имя пользователя, вам будет предложено ввести пароль.

Чтобы указать учетную запись пользователя, которая имеет разрешение на добавление компьютеров в новый домен, используйте параметр Учетные данные. Чтобы указать учетную запись пользователя, которая имеет разрешение на удаление компьютеров из текущего домена, используйте параметр UnjoinDomainCredential.

Этот параметр представлен в Windows PowerShell 3.0.

Свойства параметров

Тип:PSCredential
Default value:Current user
Поддерживаются подстановочные знаки:False
DontShow:False

Наборы параметров

(All)
Position:Named
Обязательно:False
Значение из конвейера:False
Значение из конвейера по имени свойства:False
Значение из оставшихся аргументов:False

-NewName

Указывает новое имя компьютера в новом домене. Этот параметр действителен только при добавлении или перемещении одного компьютера.

Этот параметр представлен в Windows PowerShell 3.0.

Свойства параметров

Тип:String
Default value:None
Поддерживаются подстановочные знаки:False
DontShow:False

Наборы параметров

(All)
Position:Named
Обязательно:False
Значение из конвейера:False
Значение из конвейера по имени свойства:True
Значение из оставшихся аргументов:False

-Options

Задает дополнительные параметры для Add-Computer операции соединения. Введите одно или несколько значений в строке, разделенной запятыми.

Допустимые значения для этого параметра:

  • AccountCreate: создает учетную запись домена. Командлет Add-Computer автоматически создает учетную запись домена при добавлении компьютера в домен. Этот параметр включен для полноты.

  • Win9XUpgrade: указывает, что операция соединения является частью обновления операционной системы Windows.

  • UnsecuredJoin: выполняет незащищенное соединение. Чтобы запросить незащищенное соединение, используйте параметр Unsecure или этот параметр. Если вы хотите передать пароль компьютера, этот параметр необходимо использовать в сочетании с PasswordPass параметром.

  • PasswordPass: задает пароль компьютера значение параметраучетных данных(DomainCredential) после выполнения незащищенного соединения. Этот параметр также указывает, что значение параметра Credential (DomainCredential) — это пароль компьютера, а не пароль пользователя. Этот параметр действителен только при указании UnsecuredJoin параметра. При использовании этого параметра учетные данные, предоставленные -Credential параметру , должны иметь пустое имя пользователя.

  • JoinWithNewName: переименовывает имя компьютера в новом домене в имя, указанное параметром NewName. При использовании параметра NewName этот параметр устанавливается автоматически. Этот параметр предназначен для использования с командлетом Rename-Computer. Если вы используете командлет Rename-Computer для переименования компьютера, но не перезагрузите компьютер для эффективного изменения, этот параметр можно использовать для присоединения компьютера к домену с новым именем.

  • JoinReadOnly: использует существующую учетную запись компьютера для присоединения компьютера к контроллеру домена только для чтения. Учетная запись компьютера должна быть добавлена в список разрешенных для политики репликации паролей, а пароль учетной записи должен быть реплицирован на контроллер домена только для чтения до операции присоединения.

  • InstallInvoke: задает флаги создания (0x2) и удаления (0x4) параметра FJoinOptions метода JoinDomainOrWorkgroup. Дополнительные сведения о методе JoinDomainOrWorkgroup см. в методе JoinDomainOrWorkgroup класса Win32_ComputerSystem. Дополнительные сведения об этих параметрах см . в функции NetJoinDomain.

Этот параметр появился в Windows PowerShell 3.0.

Свойства параметров

Тип:JoinOptions
Default value:None
Допустимые значения:AccountCreate, Win9XUpgrade, UnsecuredJoin, PasswordPass, DeferSPNSet, JoinWithNewName, JoinReadOnly, InstallInvoke
Поддерживаются подстановочные знаки:False
DontShow:False

Наборы параметров

Domain
Position:Named
Обязательно:False
Значение из конвейера:False
Значение из конвейера по имени свойства:False
Значение из оставшихся аргументов:False

-OUPath

Указывает подразделение для учетной записи домена. Введите полное различающееся имя подразделения в кавычках. Значение по умолчанию — это подразделение по умолчанию для объектов компьютера в домене.

Свойства параметров

Тип:String
Default value:None
Поддерживаются подстановочные знаки:False
DontShow:False
Aliases:Организационная единица

Наборы параметров

Domain
Position:Named
Обязательно:False
Значение из конвейера:False
Значение из конвейера по имени свойства:False
Значение из оставшихся аргументов:False

-PassThru

Возвращает объект, представляющий элемент, с которым вы работаете. По умолчанию этот командлет не создает выходные данные.

Свойства параметров

Тип:SwitchParameter
Default value:None
Поддерживаются подстановочные знаки:False
DontShow:False

Наборы параметров

(All)
Position:Named
Обязательно:False
Значение из конвейера:False
Значение из конвейера по имени свойства:False
Значение из оставшихся аргументов:False

-Restart

Перезапускает компьютеры, добавленные в домен или рабочую группу. Для эффективного изменения часто требуется перезапуск.

Этот параметр представлен в Windows PowerShell 3.0.

Свойства параметров

Тип:SwitchParameter
Default value:False
Поддерживаются подстановочные знаки:False
DontShow:False

Наборы параметров

(All)
Position:Named
Обязательно:False
Значение из конвейера:False
Значение из конвейера по имени свойства:False
Значение из оставшихся аргументов:False

-Server

Указывает имя контроллера домена, который добавляет компьютер в домен. Введите имя в формате FQDN. По умолчанию контроллер домена не указан.

Начиная с августа 2024 г. защита безопасности для присоединения к домену требует использования полного доменного имени контроллера домена. Например: DC1.contoso.com. Дополнительные сведения см. в статье Об изменениях присоединения к домену NetJoin.

Свойства параметров

Тип:String
Default value:None
Поддерживаются подстановочные знаки:False
DontShow:False
Aliases:Постоянный ток (DC)

Наборы параметров

Domain
Position:Named
Обязательно:False
Значение из конвейера:False
Значение из конвейера по имени свойства:False
Значение из оставшихся аргументов:False

-UnjoinDomainCredential

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

Введите имя пользователя, например User01 или Domain01\User01, или введите объект PSCredential, например объект, созданный командлетом Get-Credential. Если ввести имя пользователя, вам будет предложено ввести пароль.

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

Этот параметр представлен в Windows PowerShell 3.0.

Свойства параметров

Тип:PSCredential
Default value:None
Поддерживаются подстановочные знаки:False
DontShow:False

Наборы параметров

Domain
Position:Named
Обязательно:False
Значение из конвейера:False
Значение из конвейера по имени свойства:False
Значение из оставшихся аргументов:False

-Unsecure

Выполняет небезопасное присоединение к указанному домену.

Свойства параметров

Тип:SwitchParameter
Default value:None
Поддерживаются подстановочные знаки:False
DontShow:False

Наборы параметров

Domain
Position:Named
Обязательно:False
Значение из конвейера:False
Значение из конвейера по имени свойства:False
Значение из оставшихся аргументов:False

-WhatIf

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

Свойства параметров

Тип:SwitchParameter
Default value:False
Поддерживаются подстановочные знаки:False
DontShow:False
Aliases:wi

Наборы параметров

(All)
Position:Named
Обязательно:False
Значение из конвейера:False
Значение из конвейера по имени свойства:False
Значение из оставшихся аргументов:False

-WorkgroupName

Указывает имя рабочей группы, в которую добавляются компьютеры. Значением по умолчанию является WORKGROUP.

Свойства параметров

Тип:String
Default value:None
Поддерживаются подстановочные знаки:False
DontShow:False
Aliases:WGN

Наборы параметров

Workgroup
Position:0
Обязательно:True
Значение из конвейера:False
Значение из конвейера по имени свойства:False
Значение из оставшихся аргументов:False

CommonParameters

Этот командлет поддерживает общие параметры: -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutBuffer, -OutVariable, -PipelineVariable, -ProgressAction, -Verbose, -WarningAction и -WarningVariable. Дополнительные сведения см. в разделе about_CommonParameters.

Входные данные

String

Имена компьютеров и новые имена можно передать в командлет Add-Computer.

Выходные данные

ComputerChangeInfo

При использовании параметра PassThruAdd-Computer возвращает объект ComputerChangeInfo. В противном случае этот командлет не создает выходные данные.

Примечания

  • В Windows PowerShell 2.0 параметр ServerAdd-Computer завершается ошибкой, даже если сервер присутствует. В Windows PowerShell 3.0 реализация параметра Server изменяется таким образом, чтобы он работал надежно.