差分

この文書の現在のバージョンと選択したバージョンの差分を表示します。

この比較画面にリンクする

両方とも前のリビジョン 前のリビジョン
次のリビジョン
前のリビジョン
home:management:backup:start [2011/11/06 19:12]
yuki
home:management:backup:start [2021/09/04 20:26]
yuki 削除
ライン 1: ライン 1:
 ====== バックアップ ====== ====== バックアップ ======
 +基本思想は極力デフォルト機能で何とかする。
  
-===== Web編 =====+  * [[.:web:]]
  
-==== Dokuwikiのバックアップ ====+===== Webコンテンツのバックアップ ====
 + 
 +==== Dokuwiki ==== 
 +Dokuwikiの場合は、ファイルバックアップと同時にVPSに送付して自宅が死んだ際に参照出来るようにもしておく。
  
   - [マスター側] スクリプトでSSH実行出来るように公開鍵登録をしておく   - [マスター側] スクリプトでSSH実行出来るように公開鍵登録をしておく
ライン 11: ライン 15:
   - [マスター側] こんな感じのスクリプトを置く。   - [マスター側] こんな感じのスクリプトを置く。
     * <​code>#​!/​bin/​sh     * <​code>#​!/​bin/​sh
 +#:<<:
 +echo "*** dokuwiki backup start. ***"
 +echo "cd /​var/​www"​
 cd /var/www cd /var/www
-tar uf /root/dokuwiki_backup.tar ./doku+ 
 +echo "tar update start."​ 
 +tar uf /root/doku_latest.tar ./doku 
 +echo "tar update done."​ 
 + 
 +echo "cd /root"
 cd /root cd /root
-gzip -c dokuwiki_backup.tar > dokuwiki_backup.tar.gz + 
-sftp -oPort=6622 backup@example.net<<​__EOL__ +echo "gzip start."​ 
-put dokuwiki_backup.tar.gz +gzip -c doku_latest.tar > doku_latest.tar.gz 
-__EOL__</​code>​+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に仕込む   - [マスター側] crontabに仕込む
     * <​code>​echo "15 5    * * *   ​root ​   /​root/​dokuwiki_backup.sh"​ >> /​etc/​crontab</​code>​     * <​code>​echo "15 5    * * *   ​root ​   /​root/​dokuwiki_backup.sh"​ >> /​etc/​crontab</​code>​
-  - [スレーブ側] ​定期的にバックアップファイルの存在確認して、ファイルが存在したら展開するスクリプトを書く +  - [スレーブ側] バックアップファイルを自動展開するスクリプトを書く 
-    * <​code>​ちょっと見せられないよ!</​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の内容だけは保障出来るようになる。   * 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に仕込む
 +  - 必要な時にぶちまける
CC Attribution-Noncommercial-Share Alike 4.0 International
Driven by DokuWiki Recent changes RSS feed Valid CSS Valid XHTML 1.0