Centosでcronを使用してフォルダをバックアップしたいのですが。フォルダ c2duo_mms
に位置しています /usr/local/src/djcode/c2duo_mms
。火曜日の午後1時ごとにホームフォルダーにipでバックアップしてほしい/home/sh
。
家に新しい圧縮アーカイブを作成することをお勧めします。
Exmaple */home/sh/c2duo_mms_backup.sh *という名前のこのスクリプトを作成します。
#!/bin/bash
cd /usr/local/src/djcode/
tar zcf /home/sh/c2duo_mms-`date +%Y%m%d`.tar.gz c2duo_mms
スクリプトには必ず実行権限を追加してください。
chmod +x /home/sh/c2duo_mms_backup.sh
次に、関連するcrontabエントリをcrontab -eコマンドで追加します。
0 13 * * 2 /home/sh/c2duo_mms_backup.sh
スクリプトは毎週火曜日にファイル名に日付を含む新しい圧縮アーカイブを作成するので、必要に応じて古いバックアップを保持できます。ファイル名は次のようになります。
c2duo_mms_20110719.tar.gz
$ crontab -e
0 13 * * 2 cp -b /usr/local/src/djcode/c2duo_mms /home/sh/
crontab -e
コマンドは、好みのエディターで編集するためにcrontabファイルをプルアップする必要があります(EDITORまたはVISUAL環境変数によって設定されます)。 crontabの行は、コマンドを0分、13時間、2日、週の任意の年に実行するように指示しています。コマンド自体は単純な単一ファイルのコピーですが、cp
がバックアップファイルを作成するように-b
引数を追加しました。これにより、現在のバックアップと以前のバックアップ(拡張子.bk)の2つのバックアップが常に残ります。
編集:ファイルではなくフォルダの場合は、rsync
を試してください。
0 13 * * 2 rsync -av /usr/local/src/djcode/c2duo_mms/ /home/sh/c2duo_mms/
コマンドcrontab -e
を使用して、次の行をcrontabに追加します。
0 13 * * 2 cp -pra /usr/local/src/djcode/c2duo_mms /home/sh