raspberry pi のバックアップスクリプトを作るときに参考にしたリンクと作業手順
こちらのリンクを参照してバックアップできました。
0. piでログイン
ssh等でログイン
1. バックアップディレクトリの作成
バックアップの作成先を作ります。
mkdir -p /path/to/your/backup/folder
2. バックアップ作業用のディレクトリにbackup.sh
を作成、編集、権限変更する。
任意のディレクトリ(今回はpiのhome下)にbackup作業用のディレクトリを追加し、backup.shを作成します。
mkdir -p ~/backup/logs vim ~/backup/backup.sh chmod 770 ~/backup/backup.sh
backup.sh
#!/bin/sh #バックアップファイルの上限数 MAXFNUM=2 #バックアップ先のディレクトリ BKDIR=/path/to/your/backup/folder #バックアップファイル名 BKFNAME="rp4bup_"`date +%Y%m%d`.img.gz #ログ出力先ディレクトリ LOGDIR=/home/pi/backup/logs/ #ログファイル名 LOGFNAME="rp4bup_"`date +%Y%m%d`.log #Log関数 outputLog() { echo $1 > ${LOGDIR}${LOGFNAME} } #バックアップ実行 outputLog "Back Up start : " `date '+%y/%m/%d %H:%M:%S'` dd bs=4M if=/dev/mmcblk0 | gzip > ${BKDIR}${BKFNAME} outputLog "Back Up Complete : " `date '+%y/%m/%d %H:%M:%S'` #古いバックアップファイルの削除 num=0 for FN in `ls -tl ${BKDIR}rp4bup_*img.gz | awk '{print $9}'` do if [ ${num} -ge ${MAXFNUM} ]; then rm ${FN} outputLog "delete " ${FN} fi num=$(($num+1)) done
3. cronの設定
backup.shを定期実行する設定を行います。 sudo権限で実行したいので、以下のコマンドでcronの設定を行います。
(cronに関して参考にした資料 www.express.nec.co.jp )
sudo crontab -e #cronの起動確認 /etc/rc.d/init.d/crond status #cronの起動 /etc/rc.d/init.d/crond start
00 03 * * 1 sh /home/pi/backup/backup.sh