リモートバックアップ

Debian LS-AVL/A

LS-AVL をサーバとして育てていく。その2

ローカルディスクにバックアップを取ったのでは、 ディスクがクラッシュすると意味が無いので、 ローカルディスクに取ったバクアップを 更にリモートマシンにバックアップする。

rsync のインストール

root@av:~# apt-get install rsync
Reading package lists... Done
Building dependency tree
Reading state information... Done
Suggested packages:
  openssh-client openssh-server
The following NEW packages will be installed:
  rsync
0 upgraded, 1 newly installed, 0 to remove and 0 not upgraded.
Need to get 349 kB of archives.
After this operation, 692 kB of additional disk space will be used.
Get:1 http://ftp.jp.debian.org/debian/ squeeze/main rsync armel 3.0.7-2 [349 kB]
Fetched 349 kB in 0s (520 kB/s)
Selecting previously deselected package rsync.
(Reading database ... 12833 files and directories currently installed.)
Unpacking rsync (from .../rsync_3.0.7-2_armel.deb) ...
Processing triggers for man-db ...
Setting up rsync (3.0.7-2) ...
rsync daemon not enabled in /etc/default/rsync, not starting... ... (warning).
!root@av:~#

rsync サーバとしてのセットアップ

/etc/rsyncd.conf の設定

!root@av:~# cat /etc/rsyncd.conf
[Backup]
        path = /mnt/Backup
        hosts allow = 192.168.2.0/24
root@av:~#
192.168.2.0/24 から /mnt/Backup へのアクセスを許可する

inetd.conf の設定

rsync プロトコルでアクセスがあったときに inetd から rsync が起動されるように設定する。
root@av:~# grep rsync /etc/inetd.conf
rsync   stream  tcp     nowait  root    /usr/sbin/tcpd /usr/bin/rsync --daemon
root@av:~#
末尾に追加する

リモート側の設定

バックアップサーバの一つ、Debian 化した LS-QL に リモートバックアップを取る。

スクリプトの修正

リモートバックアップに使用しているスクリプトに av を追加する。
yasunari@qube:~$ less /usr/local/sbin/Backup.to.qube
#! /bin/sh

makedir(){
        if [ ! -d $BACKUPDIR ]
        then
                mkdir -p $BACKUPDIR
                chown yasunari.yamasita $BACKUPDIR
                chmod 4775 $BACKUPDIR
        fi
        cd $BACKUPDIR
}

LOCKFILE=/tmp/`basename $0`
if [ -f $LOCKFILE ]
then
        echo $0 already running
        exit
fi
touch $LOCKFILE

LED=/proc/buffalo/gpio/led/pm_diag_led3
echo on > $LED

if [ `whoami` = "root" ]
then
        SH="su yasunari"
else
        SH=sh
fi

cd /mnt
for SRCHOST in link av giga sil ns ude tswxl # mt kuro
do
        echo
        echo $SRCHOST
        echo
        $SH -c "nice rsync -rtuvpogtlH rsync://$SRCHOST/Backup Backup/linkstation"
        done
#-------------------------------------
rm -f $LOCKFILE

echo off > $LED
LS-AVL 他の /mnt/Backup を /mnt/Backup/linkstation にコピーする。

cron で実行

root@qube:~# crontab -l | grep Backup.to.qube
5,35 * * * * nice /bin/sh /usr/local/sbin/Backup.to.qube 2>/dev/null 1>/dev/null
root@qube:~#
毎時、5分と35分に実行

これで、完璧




LS-AVL/A
楽天市場
Amazon
uWorks
ValuMore
Yahoo!ショッピング


バックアップ
ハックの記録
LinkStation/玄箱 をハックしよう

Postfix のインストール

Copyright (C) 2003-2011 Yasunari Yamashita. All Rights Reserved.
yasunari @ yamasita.jp 山下康成@京都府向日市