Tinker Boardを使ってバックアップをUSB HDDに蓄積
ようやく、データの喪失をほぼ防ぐことが可能な体制が整いました。これで、残る課題は、それくらい大事なデータを蓄積することのみとなりました。
備忘として簡単にやり方を残します。
イメージとして、coreserverでcronを使って毎日バックアップを作成し、それをTinker BoardからFTPで接続して、そのバックアップファイルをUSB HDDに移動する。バックアップファイルはある程度たまったら削除する予定ですが、TB単位のHDDですので、直近50日分くらい平気ですね。
1.coreserverのバックアップスクリプト
どこかのサイトからコピペしたのですが、引用元を失念しました。思い出したら更新します。すいません。
[code]
#!/bin/bash
# バックアップファイルを何日分残しておくか
period=’+2′
# バックアップファイルを保存するディレクトリ
dirpath=’/virtual/XXXXXX/backup/’
#バックアップ元フォルダ
backupfolder=”/virtual/XXXXXX/public_html”
# ファイル名を定義(※ファイル名で日付がわかるようにしておきます)
mydate=`date +%y%m%d`
filename=”XXXXXX_bkup_$mydate.tar.gz”
#backup実行
tar -zcvf $dirpath/$filename -C / $backupfolder
# パーミッション変更
chmod 700 $dirpath/$filename
# 古いバックアップファイルを削除
find $dirpath -type f -daystart -mtime $period -exec rm {} \;
EOF
[/code]
2.Tinker BoardにphpでFTP接続してファイルを取得するものを作った。
これはphpの言語リファレンスを見ながら作りました。
3.Tinker Boardにシェルスクリプトを作成する。
こちらのファイルを削除するところはこちらを参考にさせてもらいました。でも。まだ試していないので、しっかり動くかは不明。
[code]
#!/bin/sh
/usr/bin/php /root/script/get_backup.php
f test -n “`ls -t /mnt/XXXX/XXXX/* | tail -n+101`”;then
rm -v `ls -t content/* | tail -n+101`
fi
exit
[/code]