UnixPower on Networking
  http://www.unix-power.net/

 
  Top - Solaris8 - Solaris バックアップ



Webサーバとして運営している場合、定期的にデータのバックアップをとるほうが望ましいです。そのやり方についてまとめてみます。ただし、ここに書いてるのは私独自のやり方でセキュリティ上問題があるのは明白ですし、もっとスマートなやり方が他にあると思いますので決してマネはしないほうが良いと思います。全くどうすれば良いのかわからないという方に参考になるかもしれません。やり方としてはリモートのマシンにデータを圧縮してFTPで転送するという方式をとります。まず必要なソフトウェアをインストールします。


ncurses-5.2.tar.gz
http://ftp.gnu.org/pub/gnu/ncurses/

ncftp-3.1.4-src.tar.bz2
http://www.ncftp.com/download/other/dlf2.html


ncursesからインストールします。


# tar xvzf ncurses-5.2.tar.gz
# cd ncurses-5.2
# ./configure
# make
# make install


次にncftpをインストールします。


# bzip2 -cd ncftp-3.1.4-src.tar.bz2 | tar xvf -
# cd ncftp-3.1.4
# ./configure
# make
#  make install


これで下準備はOKです。リモートマシンへFTP転送するためのPerlスクリプトを次のように記述しました。


#!/usr/local/bin/perl
#バックアップ支援ツール
#初期設定
#------------------------------------------

$user='setup';
$password='eNetworks';

#(リモートマシンのアカウント情報)

$directory='/home/www/htdocs';

#(バックアップ元HPデータディレクトリ)

$domain='www.xxxxxx.jp';

#(バックアップ元マシンの名前)

$commend='/usr/local/bin/ncftpput';

#(ncftpputへのパス)
#------------------------------------------

system("cd $directory ; tar cf /tmp/$domain.tar .");
system("bzip2 /tmp/$domain.tar");

$nccom .= "-u ";
$nccom .= $user;
$nccom .= " -p ";
$nccom .= $password;

### バックアップサーバを指定する。

$nccom .= " www.xxxxxx.jp";
$nccom .= " \/home\/backup ";
$nccom .= "\/tmp\/$domain.tar.bz2";

system("$commend $nccom");
system("rm -rf \/tmp\/$domain.tar.bz2");


このスクリプトを実行するとFTPでHPデータがbzip2形式で圧縮され、リモートマシンの/home/backup/ディレクトリへFTP転送されます。スクリプトに適当に名前をつけ、/usr/local/etc/等に保存しておきcronに登録すると定期的にバックアップが自動実行されます。



 

 Copyright(C) 2003-2015 UnixPower on Networking All rights reserved.