このcron
ジョブを使用して、毎日01:00 a.m.に/home/blah/
のバックアップを作成します。
0 1 * * * tar -zcf /home/blah/backup.tgz /home/blah/
実際、私は。tgzファイルが添付された電子メールが私に送信されます(はい、ファイルサイズは常に<5 MB非常に小さい)
:のようなことはできますか
0 1 * * * mail -s "Backup blah" "[email protected]" --attachment=(tar -zcf /home/blah/backup.tgz /home/blah/)
(これは最後に擬似コードです)cronジョブ内?どのcron構文を使用する必要がありますか?
この次のコマンドは、自分のマシンでテストしたときに機能しました。
echo "This is the message body" | mutt -a "/path/to/file.to.attach" -s "subject of message" -- [email protected]
たぶん従うべきアプローチは次のようなものになるでしょう
tar -zcf /home/blah/backup.tgz /home/blah/
echo "Please find attached the backup file" | mutt -a "/home/blah/backup.tgz" -s "File attached" -- [email protected]
上記のスクリプトをbackup_email.sh
として保存し、cronジョブを次のようにスケジュールします。
0 1 * * * /path/to/backup_email.sh
参照
最初にZipをインストールしてから、バックアップをスケジュールします。
Zip system.Zip /etc/* /var/www/* /var/lib/mysqlbackup/default/* && sleep 3 | mutt -a "system.Zip" -s "Daily backup as of $(date +%x)" -- [email protected] && rm -rf system.Zip
次に、それをcrontabします
Bashrcファイルでエイリアスを作成することもできるため、いつでもコマンド全体を実行できます。
Bashrcファイルの一番下に次を追加します。
alias backup='Zip system.Zip /etc/* /var/www/* /var/lib/mysqlbackup/default/* && sleep 3 | mutt -a "system.Zip" -s "Daily backup as of $(date +%x)" -- [email protected] && rm -rf system.Zip '
したがって、crontabは次のようになります
0 0 * * * backup
また、このバックアップは、独自のbackup
コマンドを使用していつでも実行できます。