通过ssh远程执行命令导入定时任务报错----解决过程
2017-11-17 11:47
483 查看
今天在服务器中通过ssh远程执行批量导入定时任务时发生了一个问题:
总结如下,远程服务器已设置好ssh秘钥登录,登录用户为普通用户,但已设置好拥有免密sudo权限
ssh 1.1.1.1 "sudo su -c "echo '30 5 * * 5 /bin/sh /root/log.sh > /dev/null 2>&1'>>/var/spool/cron/root""
没有报错,但是远程机器上并没有定时任务
命令没错,第一直觉就是觉得可能是引号问题:
再尝试执行ssh 1.1.1.1 ""sudo su -c "echo '30 5 * * 5 /bin/sh /root/log.sh > /dev/null 2>&1'>>/var/spool/cron/root" ""
报bash: /var/spool/cron/root: 权限不够
然后自己一番查找和询问:
ssh 1.1.1.1 "sudo su -c \"echo '30 5 * * 5 /bin/sh /root/log.sh > /dev/null 2>&1'>>/var/spool/cron/root\""
执行成功
总结如下,远程服务器已设置好ssh秘钥登录,登录用户为普通用户,但已设置好拥有免密sudo权限
ssh 1.1.1.1 "sudo su -c "echo '30 5 * * 5 /bin/sh /root/log.sh > /dev/null 2>&1'>>/var/spool/cron/root""
没有报错,但是远程机器上并没有定时任务
命令没错,第一直觉就是觉得可能是引号问题:
再尝试执行ssh 1.1.1.1 ""sudo su -c "echo '30 5 * * 5 /bin/sh /root/log.sh > /dev/null 2>&1'>>/var/spool/cron/root" ""
报bash: /var/spool/cron/root: 权限不够
然后自己一番查找和询问:
ssh 1.1.1.1 "sudo su -c \"echo '30 5 * * 5 /bin/sh /root/log.sh > /dev/null 2>&1'>>/var/spool/cron/root\""
执行成功
相关文章推荐
- pexpect通过ssh执行远程命令
- 解决ssh远程执行命令无法使用awk的问题
- 教你如何通过ssh控制远程主机,远程执行命令
- Windows下通过SSH使用SharpSSH远程登录主机执行命令传输文件
- 解决ssh远程执行命令无法使用awk/sed的问题
- 教你如何通过ssh控制远程主机,远程执行命令
- 远程采集服务器指标信息(一) 远程通过SSH执行命令
- SSH中使用quartz定时任务,执行两次解决办法
- ubuntu安装openssh-server 报依赖错误的解决过程 ubuntu自带的有openssh-client,所以可以通过 1 ssh username@host 来远程连接linux 可
- 远程采集服务器指标信息(一) 远程通过SSH执行命令
- 解决ssh远程执行命令无法使用awk的问题
- ssh远程执行命令并自动退出(已测试通过)
- 解决SSH远程执行命令找不到环境变量的问题
- 解决ssh远程执行命令无法使用awk的问题
- bash 中 while读取文件并通过 ssh执行命令出现的问题及解决方法
- 使用ssh或者远程执行命令是的一些问题解决方法
- 解决ORA-02021: 不允许对远程数据库进行 DDL 操作下面通过DBLINK调用远程过程来执行这样的操作。
- SSH:解决Spring整合quartz定时任务执行两次问题
- crontab 不能通过ssh远程执行命令
- Linux下执行定时任务(crontab命令)