rsyncを使用してリモートサーバーからローカルパスにファイルを転送するときに、私がcronの使用に失敗する理由を理解するのに役立つ情報を探しています。cronとrsyncを使用してリモートサーバーからローカルパスにファイルを転送する方法
rsync --protect-args --remove-source-files --chmod=Du=rw,Dgo=rw,Fu=rw,Fog=r -apvzrc [email protected]:/media/pi/USBSTORAGE32/ /media/Data_1/"James' Files"/
私が設定している:
私の目的は、私が一緒に以下のrsyncコマンドを入れて設定した時間に予定さcronジョブの実行を持っているし、成功した私の転送スクリプト数多くのGoogle検索から
を実行することですリモートサーバーを起動して、ssh-keygen rsaを使用してauthorised_keysファイルに格納されている公開鍵を生成することで、パスワードを要求しません。私はSSHを使用して 'ローカル'マシンにログインし、リモートサーバーからローカルマシンにファイルを 'プル'するコマンドを入力します。
上記のrsyncコマンドをテストしたら、私はそれを釘付けにして、これをスクリプトにポップしてcrontab経由でcronに追加したと思った。私の追加された行はこの
55 * * * * sudo /home/jlivin25/bin/myscripts/sync.sh > /var/log/james/cronsync.log 2>&1
のように見え、私のスクリプトは次のようになります。
#!/usr/bin/env bash
rsync --protect-args --remove-source-files --chmod=Du=rw,Dgo=rw,Fu=rw,Fog=r -apvzrc [email protected]:/media/pi/USBSTORAGE32/ /media/Data_1/"James' Files"/
スケジュールされたタスクが予想どおりに実行に失敗し、cronがスクリプトを実行するためにtrysが、次のエラーメッセージがログインしています私のログファイル:
sudo: no tty present and no askpass program specified
そして、その私はので、私は私がやっている動作していないことの理由の異なる多くを得る上記のメッセージ「グーグル」で、こだわっているこの時点で。私はどこにエラーを追跡するか分からない、私のcron、sshまたはrsyncの使用に関する問題です。
ご協力いただければ幸いです。 cron
あなたはあなたの端末が必要なものがあります。たぶんあなたのsshエージェント – quazardous
/etc/cronで試してみてください。dまたは直接あなたのrootユーザーのcrontab -eとsudoすることを避けるために – quazardous
ちょっと@quazardous、私はそれ(ルートのcrontab)を考えていない私はそれを行って報告して戻ってきます。迅速な対応に感謝します。 – Littlejeem