相关疑难解决方法(0)

什么更适合 GPG 密钥 - RSA 或 DSA?

ssh-keygen默认创建 RSA 密钥,但gpg --gen-key更喜欢 DSA/ElGamal。

哪一个 - RSA 或 DSA - 更适合 GPG?

security encryption gnupg

62
推荐指数
4
解决办法
4万
查看次数

bash:在 cron 作业中使用 scp 失败,但从命令行运行时运行成功

我正在尝试在由 cron 运行的 bash 脚本中使用 scp(我在 Ubuntu 10.0.4 LTS 上运行它)。

该脚本工作正常(即,当我从命令行运行它时,向/从远程服务器传输和复制 file1 和 file2。但是,当我将脚本作为 cron 作业运行时,它失败了。

这就是脚本的样子:

#!/bin/bash

cd /home/oompah/scripts/tests/
scp -P 12345 file1 oompah@someserver.com:~/uploads

if scp -P 12345 oompah@someserver.com:/path/to/file2.dat local.dat >&/dev/null ; then 
    echo "INFO: transfer OK" ; 
else 
    echo "ERROR: transfer failed" ; 
fi
Run Code Online (Sandbox Code Playgroud)

当我将它作为 cron 作业运行时,我得到的错误消息(重定向到日志文件)是:

ERROR: transfer failed
Run Code Online (Sandbox Code Playgroud)

我发送到我的邮件收件箱的错误消息是:

Permission denied (publickey).
lost connection
Run Code Online (Sandbox Code Playgroud)

为什么会发生,我该如何解决?

[编辑]

我用 -i 命令修改了第一个 scp 命令(如 M Jenkins 建议的那样),我还添加了 -v 用于调试消息。这是完整的调试消息日志。希望它可以阐明正在发生的事情:

Executing: program /usr/bin/ssh host 12.34.56.78, user oompah, command scp -v …
Run Code Online (Sandbox Code Playgroud)

ssh bash cron scp ubuntu

9
推荐指数
1
解决办法
1万
查看次数

标签 统计

bash ×1

cron ×1

encryption ×1

gnupg ×1

scp ×1

security ×1

ssh ×1

ubuntu ×1