rsync コマンドを cron ジョブとして設定したいので、サーバーのパスワードを rsync に自動的に提供する方法を見つける必要があります。
現在、次のようなシェル スクリプトがあります。
#!/bin/sh
rsync *.rss [email protected]:/home/dir --password-file ~/rsync.password
ファイルrsync.password
にはパスワードだけが含まれています。
しかし、スクリプトを実行すると、次のようになります。
The --password-file option may only be used when accessing an rsync daemon.
rsync error: syntax or usage error (code 1) at main.c(1241) [sender=3.0.7]
これを修正して、シェル スクリプトを cron ジョブとして実行できるようにする方法を誰か教えてもらえませんか?
答え1
本当にやりたいことは、サーバー間で公開鍵を設定して、サーバーが互いに「信頼」し、パスワードが不要になるようにすることです。
こちらをお読みください:
http://www.thegeekstuff.com/2011/07/rsync-over-ssh-passwordなし/
答え2
特に rsync が片側でサーバーとして実行されている場合、ssh を使用せずに rsync を実行する必要がある場合があります。この場合、コマンド ラインから rsync パスワードを指定する方法について説明しました。
これはスクリプトに非常に適しています: パスワードプロンプトなしの rsync