差分
この文書の現在のバージョンと選択したバージョンの差分を表示します。
両方とも前のリビジョン 前のリビジョン 次のリビジョン | 前のリビジョン | ||
home:management:backup:web:start [2011/11/24 22:47] yuki |
— (現在) | ||
---|---|---|---|
ライン 1: | ライン 1: | ||
- | ====== Webコンテンツのバックアップ ====== | ||
- | |||
- | ===== Dokuwiki ===== | ||
- | Dokuwikiの場合は、ファイルバックアップと同時にVPSに送付して自宅が死んだ際に参照出来るようにもしておく。 | ||
- | |||
- | - [マスター側] スクリプトでSSH実行出来るように公開鍵登録をしておく | ||
- | * <code># ssh-keygen -N "" -t rsa | ||
- | # ssh-copy-id '-p 11122 backup@example.net' | ||
- | backup@example.net's password:</code> | ||
- | - [マスター側] こんな感じのスクリプトを置く。 | ||
- | * <code>#!/bin/sh | ||
- | #:<<: | ||
- | echo "*** dokuwiki backup start. ***" | ||
- | echo "cd /var/www" | ||
- | cd /var/www | ||
- | |||
- | echo "tar update start." | ||
- | tar uf /root/doku_latest.tar ./doku | ||
- | echo "tar update done." | ||
- | |||
- | echo "cd /root" | ||
- | cd /root | ||
- | |||
- | echo "gzip start." | ||
- | gzip -c doku_latest.tar > doku_latest.tar.gz | ||
- | echo "gzip done." | ||
- | ls -l doku_latest.tar | ||
- | ls -l doku_latest.tar.gz | ||
- | |||
- | echo "sftp upload start." | ||
- | sftp -oPort=11122 backup@example.com<<__EOL__ | ||
- | put doku_latest.tar.gz | ||
- | __EOL__ | ||
- | : | ||
- | echo "sftp upload done." | ||
- | echo "*** dokuwiki backup completed. ***"</code> | ||
- | - [マスター側] crontabに仕込む | ||
- | * <code>echo "15 5 * * * root /root/dokuwiki_backup.sh" >> /etc/crontab</code> | ||
- | - [スレーブ側] バックアップファイルを自動展開するスクリプトを書く | ||
- | * <code>#!/bin/sh | ||
- | BACKUP=doku_latest | ||
- | echo "cd /home/yuki ..." | ||
- | cd /home/yuki | ||
- | echo "cd done." | ||
- | |||
- | if [ -s ${BACKUP}.tar.gz ]; then | ||
- | |||
- | echo "gunzip ${BACKUP}.tar.gz ..." | ||
- | gunzip ${BACKUP}.tar.gz | ||
- | echo "gunzip done." | ||
- | |||
- | echo "mv doku_latest.tar /tmp/ ..." | ||
- | mv ${BACKUP}.tar /tmp/ | ||
- | echo "mv done." | ||
- | |||
- | echo "cd /var/www/ainoniwa ..." | ||
- | cd /var/www/ainoniwa | ||
- | echo "cd done." | ||
- | |||
- | echo "update start..." | ||
- | sudo -u apache tar xf /tmp/${BACKUP}.tar | ||
- | echo "update done." | ||
- | |||
- | else | ||
- | |||
- | echo "backup file not found." | ||
- | |||
- | fi</code> | ||
- | - [スレーブ側] DNSの切り替わり監視スクリプトに書き加えて、crontabに仕込む | ||
- | * 略 | ||
- | * DNSが切り替わった場合に、Dokuwikiの内容だけは保障出来るようになる。 | ||
- | |||