关闭文件中给出的服务器列表

关闭文件中给出的服务器列表

我有一份包含 17 台服务器的列表,格式如下

172.16.1.4      #servername-A
172.16.2.75     #servername-B
172.16.5.53     #servername-C
172.16.5.61     #servername-D 

我想要一个脚本,可以通过 ssh/login 访问每个服务器并将它们关闭,这很容易,但问题是它们需要按照上面显示的特定顺序(列表下方)关闭,其中每个前一个服务器都必须在下一次关闭开始之前完全关闭。

答案1

也许:

while read ip rest_of_line; do
    ssh user@$ip sudo poweroff
done < server.file

ssh 命令将在远程服务器上的 ssh 守护程序关闭时返回。这不是机器关闭时返回的。您可能希望在命令sleep后添加一个命令ssh

您的用户应配置为sudo poweroff无需提供密码即可执行操作。请参阅visudo 手册页。

相关内容