こんにちは、UnixとLinux愛好家の皆さん!
私は約2日間私の問題の解決策を探していましたが、適切な解決策が見つかりませんでした。私はraspbianを実行しているラズベリーパイに接続されたUSBスティックに私のファイルをバックアップしたいと思います。
欠けている内容を確認できるように、私が知っている内容をここに書きます。
rsyncの使用は私の目的に最も適しており、機能します。
rsync -v /home/pi/data /mnt/usb
crontabにジョブを追加できます。
crontab -e
0 0 * * * rsync -v /home/pi/data /mnt/usb
これにより、毎日データがバックアップされます(最初の5つのフラグは時間設定です:分、時、日、月、日曜日、次に実行する必要があるコマンドまたはスクリプト)。
次のようにUSBスティックを手動でマウントできます。
sudo mount -t vfat /dev/sda1 /mnt/usb
ただし、欠落している事項は次のとおりです。
/mnt/usb(または/mnt/usb1、/mnt/usb2など)ディレクトリに挿入された各USBスティックを自動的にマウントするにはどうすればよいですか?
rsyncを使用して各フォルダパスのデータを同期するには?ループ付きのシェルスクリプトが必要ですか、それとも次のように使用できますか? rsync -v /home/pi/data /mnt/usb*?
ご協力ありがとうございます。ありがとうございます。
答え1
今できます。
Arkadiusz Drabczykが投稿したチュートリアルを使用する: http://www.axllent.org/docs/view/auto-mounting-usb-storage/
メディアフォルダ内のusbhdで始まるすべてのフォルダを見つけて同期する短いスクリプトを作成します。 POISXセマンティクスをサポートしていないWindows fat形式には、-rtuvを使用します。これらすべてが次のスクリプトにつながります。
sudo find /media -maxdepth 1 -name "usbhd*" | awk '
{
cmd = "rsync -rtuv --exclude '\''.*'\'' /home/pi/test "$0
system(cmd)
}' > /dev/null 2>&1
定期的にスクリプトを呼び出すには、crontabに行を追加します。通話:crontab -e
回線を追加(毎時間通話スクリプト):
0 * * * * . /scriptpath/myscript.awk
それはすべてです。