linux-ssh远程后台执行脚本-放置后台执行问题(转)
2017-01-09 11:57
295 查看
写了一个监控负载的小脚本(死循环,测试结束后再kill对应进程),因需要监控多台服务器,所以在一台服务器上使用ssh统一执行脚本
遇到[b]问题:[/b]
使用ssh root@172.16.146.20 '/usr/local/luly/loadavg.sh 2 2 &'执行
本机没有即时退出,占用ssh连接
本意是发送命令到远程机执行,本机发送后直接退出
尝试:
1、增加nohup,效果相同:
ssh root@172.16.146.20 'nohup /usr/local/luly/loadavg.sh 2 2 &'
2、增加网络上说的-t 、 -tt 参数,也没有用
ssh -t root@172.16.146.20 '/usr/local/luly/loadavg.sh 2 2 &'
ssh -tt root@172.16.146.20 '/usr/local/luly/loadavg.sh 2 2 &'
3、去掉引号,本机也在后台运行,占用ssh连接,必须手动kill才行,非我所想
ssh root@172.16.146.20 /usr/local/luly/loadavg.sh 2 2 &
最终解决方案:
增加>/dev/null 2>&1,本机即时退出,没有进程遗留,远程后台执行脚本,达到目的
ssh root@172.16.146.20 '/usr/local/luly/loadavg.sh 2 2 >/dev/null 2>&1 &'
监控负载脚本:
遇到[b]问题:[/b]
使用ssh root@172.16.146.20 '/usr/local/luly/loadavg.sh 2 2 &'执行
本机没有即时退出,占用ssh连接
本意是发送命令到远程机执行,本机发送后直接退出
尝试:
1、增加nohup,效果相同:
ssh root@172.16.146.20 'nohup /usr/local/luly/loadavg.sh 2 2 &'
2、增加网络上说的-t 、 -tt 参数,也没有用
ssh -t root@172.16.146.20 '/usr/local/luly/loadavg.sh 2 2 &'
ssh -tt root@172.16.146.20 '/usr/local/luly/loadavg.sh 2 2 &'
3、去掉引号,本机也在后台运行,占用ssh连接,必须手动kill才行,非我所想
ssh root@172.16.146.20 /usr/local/luly/loadavg.sh 2 2 &
最终解决方案:
增加>/dev/null 2>&1,本机即时退出,没有进程遗留,远程后台执行脚本,达到目的
ssh root@172.16.146.20 '/usr/local/luly/loadavg.sh 2 2 >/dev/null 2>&1 &'
监控负载脚本:
# cat loadavg.sh #!/bin/bash USAGE="Usage: $0 second filename" if [ $# -ne 2 ]; then echo $USAGE exit 1 fi > /tmp/monitor/loadavg/146.20_loadavg_$2.log while [[ 1=1 ]] do uptime >> /tmp/monitor/loadavg/146.20_loadavg_$2.log sleep $1 done
相关文章推荐
- Linux远程ssh脚本执行命令问题
- ssh连接远程主机执行脚本的环境变量问题
- Linux下通过EXPECT脚本自动执行ssh远程连接
- Linux下使用SSH非交互式远程执行命令脚本
- linux ssh无密码登录,远程执行脚本文件
- Linux下通过EXPECT脚本自动执行ssh远程连接
- JAVA远程(ssh)执行linux脚本
- [ 转载 ] ssh连接远程主机执行脚本的环境变量问题
- ssh连接远程主机执行脚本的环境变量问题
- ssh连接远程主机执行脚本的环境变量问题
- Linux下使用SSH非交互式远程执行命令脚本
- Linux下使用SSH非交互式远程执行命令脚本
- Linux下非交互式远程执行命令脚本(比ssh更好的方式)
- Linux下使用SSH非交互式远程执行命令脚本---ssh无密码登陆
- linux定时执行,脚本问题解决汇总
- 解决Vmware Workstation7上安装Linux系统不能SSH远程连接的问题
- windows BAT自动化上传文件到linux server, 执行远程脚本
- ssh执行远程服务器需要sudo提权的脚本
- Java SSH远程执行Shell脚本实现
- 使用expect和ssh远程执行命令的脚本