很多时候,我们需要在crontab 里执行一些脚本,命令,这些命令是需要使用ssh-key的,如何让我们的cron job能够正常使用我们的key呢?
先分享一个小脚本:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 |
cat /etc/profile.d/ssh-agent.sh #!/bin/sh function init_ssh_agent() { eval `ssh-agent |tee ~/.agent.env` >/dev/null 2>&1; ssh-add >/dev/null 2>&1; } if [ -f ~/.agent.env ]; then . ~/.agent.env >/dev/null if ! kill -0 $SSH_AGENT_PID >/dev/null 2>&1; then init_ssh_agent fi else init_ssh_agent fi |
具体调用方法如下:
1 |
32 7 * * 1-5 . /etc/profile.d/ssh-agent.sh;/home/zhiming/myscirpt.yml |
因为正常的Playbook需要有ssh-key才可以登录远程服务器,所以我们要先执行我们的小脚本
Latest posts by Zhiming Zhang (see all)
- aws eks node 自动化扩展工具 Karpenter - 8月 10, 2022
- ReplicationController and ReplicaSet in Kubernetes - 12月 20, 2021
- public key fingerprint - 5月 27, 2021
广州网站建设 2018/07/31 11:36
很不错