当你需要重启一个Windows服务器的时候,你可能会遇到一些障碍。例如,如果远程桌面服务不能正常工作了,你怎么重启这个服务器?这是这些年我收集的一些重启或关闭系统的技巧,当我不能简单地通过Windows的开始菜单来达到重启或关闭系统的目的的时候,这些技巧就能派上用场了。
shutdown.exe命令
这个gem会给系统发送一个远程(或本地)的关机命令。输入“shutdown /r /m \\servername /f /t 10”会给一个系统发送一个远程的重启命令。所有现代的Windows系统都包含shutdown.exe;在过去的版本中,它包含在Resource Kit中。
PowerShell Restart-Computer
在PowerShell中也有类似的命令:
Start-Sleep 10 Restart-Computer -Force -ComputerName SERVERNAME
硬件管理设备:
如果你正在使用像HP iLO 或 Dell DRAC那样的设备,那么不管那个操作系统的状态如何,它们都会提供虚拟的电源按钮和远程屏幕控制工具的。如果在那些设备中还没有对新的服务器进行配置,把它们配置成某个操作系统不可用的时候也可以进行控制是一个好主意。
虚拟机电源按钮
如果这个系统是一个虚拟机,所有的hypervisor都会提供一个可以重置这个系统的虚拟电源按钮。在VMware vSphere中,可以通过一个选项,设置成“Shut Down”一个“Guest Operating System”,而不是“Power Off”一个“Guest Operating System”;这可以通过VMware Tools进行一次正常的关机。如果失败的话,“Power Off”按钮才是接下来合乎逻辑的步骤。
控制转移:
在那台服务器的管理员不能物理访问那个系统的情况下,让其他人执行这个过程也许会比较有效。基于安全方面的原因,通常只能创建一个具有重启服务器权限的用户(域用户或本地用户)。那个人可以作为临时用户来登录,然后在本地关机命令发出以后,马上把这个用户销毁掉。更进一步来说,可以把这个临时用户配置成只能在他们登录的系统上执行一个重启脚本,除此之外,他们不能协助那台服务器的管理员进行任何其他的交互。
通过组策略配置一个计划任务:
如果你不能通过任何其他的主流方式来访问一个系统——也许Windows Firewall打开了,你无法关闭它,你可以设置一个GPO(Group Policy object)来重新配置防火墙的状态,悄悄地在本地执行一个shutdown.exe格式的重启命令(在上面的命令中移出“/m”参数)。最困难的部分是快速地部署GPO(Group Policy object)。
企业级的系统管理软件包:
像赛门铁克的Altiris和Microsoft System Center那样的软件包可以和管理服务器进行通信,也可以收到重启服务器的命令。
拔掉电源:
这的确不是一个理想的方法,但是它十分有效。对于物理服务器来说,如果使用一个带有端口控制的电源插座,可以直接关闭某个系统的电源,让它恢复到正常状态。
你还使用过其他方法来重启一个Windows服务器吗?可以在评论中分享一下你自己的方法。
原文地址:Backdoor ways to reboot a Windows server
译文地址:http://os.51cto.com/art/201012/239459.htm