重启后 Powershell 恢复脚本
Powershell resume script after reboot
我目前正在做一项学校作业,我必须制作几个 powershell 脚本来执行 windows 服务器 2012 r2 的基本配置。第一个脚本需要执行以下操作:
o 服务器名称:WDC
o IP地址:192.168.1.45
o 子网:255.255.255.0
o 网关:192.168.1.1
o DNS: 192.168.1.1
o 管理员密码:admin2016
o Primaire DNS 服务器 8.8.8.8
o Secundaire DNS 服务器 192.168.1.45
o 升级为 dc
o ...
问题是服务器需要在名称更改后重新启动,并且此后脚本无法继续。
我知道我可以通过拆分脚本并在重启后在注册表中使用 runonce 继续第二部分来做到这一点,但我的老师发誓可以在一个 ps1 文件中做到这一点此外,他说应该可以在重启后自动登录,然后从重启前停止的地方恢复相同的脚本文件。
这个脚本必须在本地机器上执行,所以我不能使用工作流。我一直在寻找大量时间,但似乎无法找到任何合适的解决方案来完全按照老师的要求进行操作。
希望有人能提供帮助。
干杯
这样恢复是不可能的。但是您可以确定需要重新启动的更改是否已经完成,只是不要重复这些设置的步骤。本质上,检查如果您需要对步骤进行调整,然后才需要重新启动。在第二个 运行 期间,您的脚本不需要重新应用需要重新启动的新设置,并且应该能够有效地从它在之前 运行.[=12= 中断的地方继续]
至于自动登录和脚本重新运行部分,都是可以解决的。有一个使用注册表设置自动登录用户的解决方案。您需要将该登录名的密码添加到注册表中,因此这可能是一个安全问题。使用 Windows 任务计划程序可以在登录后 运行 执行脚本。除了使用固定时间安排外,调度程序还支持 运行 特定事件后的任务。如果您使用这些事件,则会有延迟,最长可能长达几分钟。如果这不可接受,您还可以对用于自动登录的用户帐户的 StartUp 文件夹中的脚本使用 link。
自动登录适用于注册表项。您需要 HKLM 命名空间中的几个键:
Path: SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon
Value Name: AutoAdminLogon
Value Type: REG_SZ
Value data: 1
Path: SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon
Value Name: DefaultUserName
Value Type: REG_SZ
Value data: <name of the user you want to log on>
Path: SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon
Value Name: DefaultPassword
Value Type: REG_SZ
Value data: <password of the user you want to log on>
如果这是域用户
Path: SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon
Value Name: DefaultDomainName
Value Type: REG_SZ
Value data: <name of the domain the user belongs to>
我目前正在做一项学校作业,我必须制作几个 powershell 脚本来执行 windows 服务器 2012 r2 的基本配置。第一个脚本需要执行以下操作:
o 服务器名称:WDC
o IP地址:192.168.1.45
o 子网:255.255.255.0
o 网关:192.168.1.1
o DNS: 192.168.1.1
o 管理员密码:admin2016
o Primaire DNS 服务器 8.8.8.8
o Secundaire DNS 服务器 192.168.1.45
o 升级为 dc
o ...
问题是服务器需要在名称更改后重新启动,并且此后脚本无法继续。
我知道我可以通过拆分脚本并在重启后在注册表中使用 runonce 继续第二部分来做到这一点,但我的老师发誓可以在一个 ps1 文件中做到这一点此外,他说应该可以在重启后自动登录,然后从重启前停止的地方恢复相同的脚本文件。
这个脚本必须在本地机器上执行,所以我不能使用工作流。我一直在寻找大量时间,但似乎无法找到任何合适的解决方案来完全按照老师的要求进行操作。
希望有人能提供帮助。
干杯
这样恢复是不可能的。但是您可以确定需要重新启动的更改是否已经完成,只是不要重复这些设置的步骤。本质上,检查如果您需要对步骤进行调整,然后才需要重新启动。在第二个 运行 期间,您的脚本不需要重新应用需要重新启动的新设置,并且应该能够有效地从它在之前 运行.[=12= 中断的地方继续]
至于自动登录和脚本重新运行部分,都是可以解决的。有一个使用注册表设置自动登录用户的解决方案。您需要将该登录名的密码添加到注册表中,因此这可能是一个安全问题。使用 Windows 任务计划程序可以在登录后 运行 执行脚本。除了使用固定时间安排外,调度程序还支持 运行 特定事件后的任务。如果您使用这些事件,则会有延迟,最长可能长达几分钟。如果这不可接受,您还可以对用于自动登录的用户帐户的 StartUp 文件夹中的脚本使用 link。
自动登录适用于注册表项。您需要 HKLM 命名空间中的几个键:
Path: SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon
Value Name: AutoAdminLogon
Value Type: REG_SZ
Value data: 1
Path: SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon
Value Name: DefaultUserName
Value Type: REG_SZ
Value data: <name of the user you want to log on>
Path: SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon
Value Name: DefaultPassword
Value Type: REG_SZ
Value data: <password of the user you want to log on>
如果这是域用户
Path: SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon
Value Name: DefaultDomainName
Value Type: REG_SZ
Value data: <name of the domain the user belongs to>