windows下远程让linux服务器关机

背景

目前在做的某个项目有这么一个需求:ups电源在市电断开时,会通过串口发送一个数据给到电脑(win10系统),该电脑在收到该信号后,需要远程将在同一网段的两个服务器及时关掉。
服务器都是linux系统(Ubuntu、centos),都已经开启了ssh,且都已经知道他们的账号和密码。

查找到的资料

1.先进行免密登录,然后执行指令

免密登录
https://zhuanlan.zhihu.com/p/401327519

关机指令
https://blog.csdn.net/weixin_33349121/article/details/116867532
https://blog.csdn.net/weixin_39587238/article/details/116808778

“ssh –l user remotehost sudo shutdown –h now”
因为这个办法需要搞公钥密钥,又要在服务器上传文件之类的,比较麻烦。所以没选用这个办法

2.VBS脚本指令

https://blog.csdn.net/qq_43391414/article/details/120575748
一个相对简单的办法.。但是从评论区看到,他们说会因为中文输入法的问题导致错误。所以我这边也还是么用到这个办法

3.python脚本1

https://blog.csdn.net/junbujianwpl/article/details/52901862
这个脚本中用到了 pexpect,在windows下会无法使用其spawn函数。因此我这边也没采用这种方式。

4.python脚本1

https://blog.csdn.net/xiaoxin_OK/article/details/119783073
这个完全解决了问题,但是需要安装python以及paramiko。但是我这边是可以接收的,用的是这种办法。

最终采纳

目前使用的是第4种方式。

你可能感兴趣的:(电脑系统,服务器,linux,运维)