内容へ移動
[[
✎ home:management:backup:start
]]
doku@ainoniwa
文書の表示
最近の変更
サイトマップ
ログイン
この文書は読取専用です。文書のソースを閲覧することは可能ですが、変更はできません。もし変更したい場合は管理者に連絡してください。
====== バックアップ ====== 基本思想は極力デフォルト機能で何とかする。 * [[.:web:]] ===== 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.net<<__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 ${BACKUP}.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の内容だけは保障出来るようになる。 ===== LDAPのバックアップ ==== LDAPの登録情報消えるとそれはもうやる気が失せる。 - LDAP構成ファイルをとりあえず何も考えずにコピーするスクリプトを書く * <code> #!/bin/sh echo "*** openldap backup start. ***" echo "cd /var/db/openldap-data/" cd /var/db/openldap-data/ echo "tar zcvf ldap_backup-`/bin/date '+%Y%m'`.tar.gz DB_CONFIG alock *.bdb log.*" tar zcvf ldap_backup-`/bin/date '+%Y%m'`.tar.gz DB_CONFIG alock *.bdb log.* echo "tar done." echo "mv ldap_backup-`/bin/date '+%Y%m'`.tar.gz /mnt/lib_01/server/ldap_remilia/" mv ldap_backup-`/bin/date '+%Y%m'`.tar.gz /mnt/lib_01/server/ldap_remilia/ echo "mv done." if [ -s /mnt/lib_01/server/ldap_remilia/ldap_backup-`/bin/date '+%Y%m'`.tar.gz ]; then echo "*** openldap backup completed. ***" else echo "!!! openldap backup failed. !!!" fi</code> - crontabに仕込む - 必要な時にぶちまける
文書の表示
以前のリビジョン
メディアマネージャー
文書の先頭へ