1

手で実行すると、これは正常に機能します。

#!/bin/bash
eval `ssh-agent`
ssh-add
/usr/bin/scp me@server:~/file ./
exit 0

ただし、cron が実行されるとき、ファイルは決して変更されません。sshキーが正しいことはわかっています-それをに置き換えるscpと、ssh正常に動作します。

4

3 に答える 3

2

ファイルを cron スクリプトとして scp する代わりに、このプロセスに rsync を使用することを検討することもできます。

于 2011-04-27T21:03:31.233 に答える
1

cronは通常rootとして実行されますが、このスクリプトをrootとしてテストして、sshキーがrootが検索する正しい場所にあることを確認しましたか?または、ユーザープロファイルにsshkeysがありますか?

于 2010-10-29T04:41:53.297 に答える
0

実行しているバージョンはわかりませんが、Snow Leopard では cron ジョブがユーザーとして実行されます (cronwhoamiスクリプトで確認してください) ... 少なくともユーザーが現在ログインしている場合。

于 2011-07-14T03:56:21.410 に答える