Linux远程运行服务器脚本

浏览: 1327

一、设置SSH免密登录服务器

1.测试远程登录服务器

$ssh -l seng x.x.x.x    #seng是要登录服务器的用户名,后面的是服务器ip地址,在此要输入密码
$exit #退出登录

2.生成公钥和私钥

$ssh-keygen -t rsa -P 123456  #中间生成的时候之间按Enter键   123456是设置的密码
$cd .ssh/ #ssh是隐藏的文件夹
$ll #此时可以看到生成的公钥和私钥

3.复制公钥到服务器

$scp /home/chris/.ssh/id_rsa.pub seng@x.x.x.x:/home/seng/.ssh/authorized_keys

4.本地记住密码

$vi ~./bashrc

#eval `ssh-agent` 重新打开窗口要重新输入密码
#ssh-add

/usr/bin/keychain $HOME/.ssh/id_dsa #安装keychain命令:sudo apt install keychain
source $HOME/.keychain/$HOSTNAME-sh

$source ~./bashrc

此时再登录到服务器则可以无需输入密码

ps:如果不成功试试用chmod命令修改服务器上authorized_keys文件权限

参考资料:https://jingyan.baidu.com/article/148a1921ce2af54d70c3b16e.html


二.运行服务器脚本

1.运行简单命令,如:

$ssh seng@x.x.x.x "cd /home/seng; ls"
$ssh seng@x.x.x.x "sh /cnn/logistics/zl.sh"

2.运行服务器上的zl.sh脚本

本机中shell脚本text.sh内容:

#!/bin/bash
ssh seng@x.x.x.x << remotessh
cd /cnn/logistics/
. ./zl.sh
exit
remotessh

保存后运行text.sh脚本

参考资料:https://blog.csdn.net/sn3009/article/details/52779642

推荐 2
本文由 走马兰台 创作,采用 知识共享署名-相同方式共享 3.0 中国大陆许可协议 进行许可。
转载、引用前需联系作者,并署名作者且注明文章出处。
本站文章版权归原作者及原出处所有 。内容为作者个人观点, 并不代表本站赞同其观点和对其真实性负责。本站是一个个人学习交流的平台,并不用于任何商业目的,如果有任何问题,请及时联系我们,我们将根据著作权人的要求,立即更正或者删除有关内容。本站拥有对此声明的最终解释权。

0 个评论

要回复文章请先登录注册