经过大量研究,我找不到解决方案,但发布了这个问题。
我的电脑A和B都是Ubuntu桌面。我想将文件从 A 复制到 B。我遵循的步骤。
1. ssh-keygen in computer A
2. Left password blank
3. Copied id_rsa.pub to computer B ~/.ssh/ from computer A
4. Renamed id_rsa.pub to authorized_keys in computer B
5. In computer A I did scp -i ~/.ssh/id_rsa -r /var/www/abc abc@ip:/home/abc/
Run Code Online (Sandbox Code Playgroud)
如果我在命令行中执行步骤 4,它工作正常。但是当我在 crontab 中做同样的事情时
22 10 * * * root scp -i ~/.ssh/id_rsa -r /var/www/abc abc@ip:/home/abc
Run Code Online (Sandbox Code Playgroud)
它什么也没做。
我几乎尝试了与该问题相关的所有答案。答案只是偶然出现的。
我输入用户名而不是 root 并且它起作用了。我不知道怎么做,但它有效。希望这能帮助像我这样的人。
2 10 * * * root /usr/bin/scp -i /home/username/.ssh/id_rsa -r /var/www/abc abc@ip:/home/abc
2 10 * * * username /usr/bin/scp -i /home/username/.ssh/id_rsa -r /var/www/abc abc@ip:/home/abc
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
18736 次 |
| 最近记录: |