一、实验环境介绍
本文通过一台控制端机器对其他多台机器进行远程关机操作,实验IP如下:
控制端:192.168.80.177
被控制关机端:192.168.80.130,192.168.80.206
二、ssh免密登录配置
以下操作均在控制端(80.177)上用root用户权限进行操作
1、生成私钥密钥对,执行ssh-keygen -t rsa然后一路回车即可。如下图:
2、分发ssh公钥给需要被控制的机器,执行ssh-copy-id root@ip即可。
如本测试环境下执行ssh-copy-id [email protected]和ssh-copy-id [email protected]
第一步输入yes并回车,
第二步输入被控ip的root用户密码。
多台其他ip的机器同理进行分发。如下图
三、批量关机脚本书写
1、在控制端(80.177)上创建一个shutdown.sh脚本文件,内容如下:
#!/bin/bash # 服务器IP地址列表 servers=("192.168.80.206" "192.168.80.130") # 遍历服务器列表 for server in "${servers[@]}" do # 使用ssh登录到服务器并执行关机命令 ssh root@$server 'shutdown -h now' done
|
其中服务器IP地址列表可根据实际进行添加,空格隔开即可。
2、执行chmod +x shutdown.sh赋予脚本执行权限。
3、执行./shutdown.sh进行批量关机操作。
注:请执行该脚本前确认被控机器是否允许关机,防止软件运行异常或丢失重要未做备份的文件!
标签:关机,免密,192.168,ssh,shutdown,Linux,执行,root From: https://www.cnblogs.com/lz-200/p/18345407