私のセットアップは次のとおりです。
Dell Dimension w/Ubuntu Server 12.10を24時間年中無休で実行し、内部ネットワークの外部にあるリモートロケーション
Raspberry Pi w/OpenELECおよびローカルで実行されるXBMC
ダウンロードが完了したら、ビデオファイルをサーバーからPiの外部HDにx分/時間ごとに転送したいと思います。リモートロケーションからそれらを自動的に削除する必要はありませんが、クリーンアップした場合、双方向の同期は必要ありません。
Pi側から使用できるスクリプト、スクリプト言語、または転送プロトコルに関する提案はありますか?
rsync はファイルをコピーし、 cron はrsyncコマンドを定期的に実行することをお勧めします。リモート(Piの観点からリモート)マシンにログインするには、 公開/秘密キーでリモートマシンにログインする が必要になるたびにパスワードを手動で入力する必要がありません。
デフォルトでは、rsyncはソースディレクトリで削除された宛先ディレクトリのファイルを削除しません(テストしたばかりです)。
cron
ジョブでrsyncを実行するだけです。 Ubuntuでcrontab -e
を実行し、以下を実行します。
*/5 * * * * rsync -a user@raspi:/path/to/files /local/path
5分ごとに2つの場所に同期しようとします。それは十分に長くないかもしれず、それは不定に同期します(何かがまだ書かれているかどうか-例えばダウンロードされているかどうかに関係なく)、ここで注意する必要があります。
いいえ、それは嘘です...私は次のいずれかを行います...
それらはすべて、不格好な自動化されたコピーよりもわずかに利点があります。