概述
以下是使用PowerShell脚本自动将计算机加入域的详细步骤和示例脚本。这些脚本涵盖了从简单的加域操作到更复杂的加域并更改计算机名、指定OU路径等场景。
基本加域脚本
脚本内容:
# 定义变量,用于设置域名、管理员用户名和密码
$domain = "your_domain_name"
$adminUser = "domain_admin_username"
$adminPassword = ConvertTo-SecureString "domain_admin_password" -AsPlainText -Force
$credential = New-Object System.Management.Automation.PSCredential ($adminUser, $adminPassword)
# 将计算机添加到域
Add-Computer -DomainName $domain -Credential $credential -Restart -Force
说明:
- 将上述脚本中的
your_domain_name
替换为实际的域名。 - 将
domain_admin_username
和domain_admin_password
替换为域管理员的用户名和密码。 -Restart
参数会在加入域后重启计算机。-Force
参数会强制执行操作,即使遇到错误也会继续。
示例:
加域并更改计算机名
脚本内容:
# 定义变量
$domainName = "yourdomain.com"
$domainUser = "domainAdmin"
$domainPassword = "password"
$newComputerName = "newComputerName"
# 将密码转换为安全字符串
$securePassword = ConvertTo-SecureString $domainPassword -AsPlainText -Force
$credential = New-Object System.Management.Automation.PSCredential ("$domainUser@$domainName", $securePassword)
# 加入域
Add-Computer -DomainName $domainName -Credential $credential -NewName $newComputerName -Restart -Force
说明:
- 该脚本不仅将计算机加入域,还会更改计算机名。
-NewName
参数用于指定新的计算机名。
示例:
加域并指定OU路径
脚本内容:
# 定义变量
$domain = "example.com"
$ou = "ou=Computers,dc=example,dc=com"
$adminUser = "domain_admin_username"
$adminPassword = ConvertTo-SecureString "domain_admin_password" -AsPlainText -Force
$credential = New-Object System.Management.Automation.PSCredential ($adminUser, $adminPassword)
# 加入域并指定OU路径
Add-Computer -DomainName $domain -OUPath $ou -Credential $credential -Restart -Force
说明:
-OUPath
参数用于指定计算机在域中的组织单元(OU)路径。
示例:
弹出窗口修改计算机名并加域
脚本内容:
# 引用Windows.Forms命名空间
Add-Type -AssemblyName Microsoft.VisualBasic
Add-Type -AssemblyName System.Windows.Forms
# 弹出窗口让用户输入新的计算机名
$newComputerName = [Microsoft.VisualBasic.Interaction]::InputBox("请输入新的计算机名:", "修改计算机名")
# 检查用户输入
if ([string]::IsNullOrEmpty($newComputerName)) {
Write-Host "未输入新的计算机名,脚本退出。"
exit
}
# 修改计算机名
try {
Rename-Computer -NewName $newComputerName
} catch {
Write-Host "修改计算机名时出错: $_"
}
# 定义变量,用于设置域名、管理员用户名和密码
$domain = "nnkin.local"
$adminUser = "administrator"
$adminPassword = ConvertTo-SecureString "Windows1@#" -AsPlainText -Force
$credential = New-Object System.Management.Automation.PSCredential ($adminUser, $adminPassword)
# 将计算机添加到域
Add-Computer -DomainName $domain -Credential $credential -Restart -Force
说明:
- 该脚本会弹出一个输入框,让用户输入新的计算机名。
- 输入新的计算机名后,脚本会修改计算机名并将其加入域。
- nnkin.local administrator Windows1@# 替换为实际的值
示例: