每晚重启Windows域中所有计算机的好方法


9

重新启动Windows域中的Windows计算机列表的好方法是什么?假设Windows域控制器没有执行此操作的服务,请对脚本进行建议。

我可以列出主机名并遍历主机名以向每个主机名发送重新启动命令吗?我可以从脚本运行时在Windows 2008框中运行的DHCP服务器获取主机名列表吗?

我最喜欢的脚本语言(从最不喜欢的语言)是:PHP,javascript,Bash,Python(了解很少),VB(了解但不喜欢)


8
翻转断路器。我开玩笑
gravyface

那会导致关机,我需要重启。
动力

@JM-如果在BIOS中将它们设置为“恢复以前的电源状态”,则不会。
假名称

@假名-听起来像是很多工作
动力强劲的2011年

Answers:


15

如果不是您要使用GPO,并且您想使用Mark Henderson的第二个选项(批处理shutdown /m),则可以通过批量执行关闭操作来简化您的工作,从而可以并行执行而不是串行执行。它需要管理站方面的PowerShell,但这非常漂亮

foreach ($ComputerName in $ComputerList) {
    invoke-command -AsJob -ScriptBlock {
        params($ComputerName)
        shutdown /m $ComputerName /r /f /t 0
    } -ArgumentList $ComputerName
}

该片段的作用是产生与$ ComputerList中的机器一样多的并行执行的后台作业。这可以使所有事物的关闭速度更快。


2
这是一个有趣的解决方案-如果您有大量计算机要重新启动,则我强烈建议您使用此解决方案,因为它将并行运行shutdown命令。
理查德·韦斯特

2
-AsJob是这里的魔力。
jscott 2011年

我很好奇您为什么使用“关机”命令而不是Restart-Computer cmdlet。
Charles Burge

@CharlesBurge这是5年前回答的,而且PS3并未广泛部署。此外,这还演示了在其他系统上运行命令的技术。在2017年,我们只需要在PowerShell中完成所有操作,而不必理会命令。时代变了。
sysadmin1138

7

您可以使用组策略首选项来执行此操作,方法是制作一个新的计划任务,该任务将在特定时间每晚运行。该任务的命令应为shutdown /r /t 0。然后,您可以将该GPO链接到其中装有您的计算机的一个或多个OU。

您可能需要使用“以随机间隔运行此程序”选项,该选项设置为10至15分钟。如果不小心的话,同时打开每台计算机的电源可能对断路器不利。您可能还希望选中仅在计算机闲置了x个小时后才运行任务的选项,以防有人拉通宵夜。您不希望通过重新启动尝试设定截止日期的人员来浪费一整夜的工作。


我不熟悉如何使用GPO设置计划任务,所以我想知道:如果将一台计算机从一个OU转移到另一个未定义任务的OU,那么Shed Task会消失还是会在第一次应用后保留?
MaCuban

6

两种选择:

  1. 通过运行shutdown /r /f /t 0shutdown /g /f /t 0在要重新引导的每台计算机上的GPO创建计划任务。(查看shutdown /?更多详细信息。

  2. 创建一个shutdown /m [computer name] /r /f /t 0从中央计算机(也许是域控制器?)运行的批处理。为要重新启动的每台计算机循环播放(更改[computer name])。这意味着如果由于某种原因无法访问计算机,将不会重新启动计算机,而需要从有权重新启动计算机的帐户中运行该计算机。

您应该能够编写一个批处理文件,该批处理文件循环遍历从活动目录中拉出的计算机列表并运行该命令,但是我今天没有时间写一个文件(即使在测试过程中,我也不愿意进行测试)我确实写过它,否则我会因为每天中途重新启动每个人的计算机而烦恼)。


另外,还有一个psshutdown命令,该命令也可以通过批处理文件运行,这是sysinternals套件的一部分...
Bart Silverstrim

我已经使用过1和2。现在可以玩Powershell了。如果使用#2,请考虑主脚本为每台计算机(例如start cmd /c shutdown /m computer /r /f /t 0)生成单独的进程,或者使用某种逻辑来检查是否在线,否则离线计算机的延迟可能会很大。
jscott 2011年

4

做到这一点的最好方法是开除一个人,认为这个想法是必须的,并做所有其他人都做的事情-不这样做。


人们整夜保持登录状态时,文件夹重定向似乎正在占用资源。我想我可以尝试设置大规模注销而不是大规模重新启动,但是重新启动似乎可以解决很多问题。人们花了数周或数月时间而无需重启。我通常不花很多时间来学习运行Windows系统的正确方法,因为这不是我的主要工作。您有什么推荐的吗?
11

1
啊-不 众多公司不需要他们的员工重新引导-您认为他们必须使用文件夹重定向吗?我建议立即解决此问题。如果我每天都从工作站注销,我个人会很生气-我经常让工作过夜。您的懒惰可能会使很多人陷入困境-做好您的工作或雇用有工作的人。
TomTom

好吧,做好我的工作意味着不要花太多时间在我们的小窗户系统上。
蒸汽动力

不知道你在做什么?;)我开除人们说他们的工作无能,不管他们的表现如何。
TomTom,

Sysadmin是我为家人提供的帮助他们的辅助工作。如果我有无限的时间确定,我会在窗户和其他切线上阅读更多的书。但是,我最好的赚钱方法是坚持使用网络软件。我认为您的回答根本不是本着为我提出的问题提供技术解决方案的精神。
蒸汽动力2011年
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.