[TOC]
修改Windows实例SID以搭建域环境
使用同一个Windows镜像创建的几台实例之间无法互相访问域或者无法同时加入域。
原因分析
使用同一个Windows镜像的几台实例,其SID(计算机安全标识符Security Identifier)是一样的。此时需要修改系统SID,以避免无法相互访问域,再进行域环境的搭建。
解决方法
Windows系统自带sysprep命令可以从已安装的Windows映像删除所有系统特定的信息,其中包括SID。脚本工具sysprep.ps1使用系统自带sysprep命令完成修改Windows SID。本文描述如何使用脚本工具sysprep.ps1修改系统SID。文档描述的内容适用于Windows Server 2008、Windows Server 2012和Windows Server 2016系统。
注意:
- 在修改系统SID前,建议您为系统盘创建快照,避免意外失败导致系统崩溃。
- sysprep会将User Profile恢复为默认值,执行sysprep后会删除桌面上创建的文件。如果您希望执行脚本后自动删除,可以将文件放置在桌面上执行。
修改系统SID
按以下步骤修改系统SID。
下载脚本工具 sysprep.ps1,存放在C盘。
启动CMD,运行命令 powershell。
注意:
如果您不是管理员用户,必须以管理员身份运行PowerShell。
运行命令 cd\ 切换路径到C盘根目录。
运行命令 .\Sysprep.ps1 -help 查看脚本说明。
查看脚本说明
参数说明:
参数 | 说明 |
---|---|
-skiprearm | 默认将Windows操作系统恢复到原始授权许可状态,如不需恢复,添加该参数。 |
-ReserveNetwork | 运行脚本后保留经典网络实例的网络配置信息(IP、Subnet、Gateway、DNS),不会变动VPC网络类型ECS实例使用DHCP获取IP的配置。 |
-skippassword | 使用默认密码 |
-ReserveHostname | 保持主机名不变 |
-post_action | 运行脚本后的后续操作。取值范围:shutdown,reboot,quit |
- 运行命令 whoami /user 查看系统SID。
1
WhoAmIUser
- 运行命令
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16.\Sysprep.ps1 -ReserveHostname -ReserveNetwork -skiprearm -post_action "reboot"
```
- 在弹窗中输入密码,并单击 确定,使实例自动重启。
![image2](https://s1.ax1x.com/2018/10/09/iJqVVP.png)
- [远程连接Windows实例。](https://help.aliyun.com/document_detail/25435.html?spm=a2c4g.11186623.2.14.21844abaGxsHT4)
运行命令 重新查看系统SID。
```powershell
whoami /user
注意事项
如果没有特定要求,运行以下命令时您需要修改密码。1
powershell -executionpolicy bypass -file c:\sysprep.ps1 -ReserveHostname -ReserveNetwork -skiprearm -post_action "reboot"