1,624 views

■概要

USB外付ハードディスク(1TB)にサーバーのバックアップを毎晩自動で取っています。家族全員の共有データは、テレビ録画専用のLAN対応ハードディスク(3TB)に各自でバックアップを取るように指示しています。なので、サーバーのお守りを任されている私の責任は重大です。サーバーがダウンすると家族全員がデーターにアクセスできなくなるからです。そこで、サーバーを1時間で復元する(=壊れる前日の状態にまで戻す)ために、サーバーのバックアップを毎晩取っています。以下はその手順です。

■要件

NTFS形式のUSB外付けハードディスクをScientific Linuxで使えるようにする(fuse-ntfs-3g)設定が済んでいること

LinuxサーバーをWindowsのファイルサーバーにする(Samba)設定が導入済であること

■バックアップの準備

[root@ufuso ~]# mkdir /mnt/usbhd/all/backup/sl63
   ← Webサーバーデータのバックアップ先を作成します。「/mnt/usbhd/all/backup/sl63」は例示。

[root@ufuso ~]# yum -y install rsync ← バックアップに必要なrsyncのインストール
Loaded plugins: priorities, refresh-packagekit, security
Setting up Install Process
Package rsync-3.0.6-9.el6.x86_64 already installed and latest version
Nothing to do ← すでにインストール済み。

[root@ufuso ~]# vi /etc/rsync_exclude.lst ← バックアップを取るフォルダやファイルの一覧リストを、
「rsync_exclude.lst」という名称で作成する。

- /var/tmp/* ← 「/var/tmp/」のフォルダの中身をすべて(*)バックアップから除外(-)する。

+ /boot/*** ← 「/boot/」のフォルダの中身をすべて(***)バックアップに加える(+)。以下同じ。
+ /etc/***
+ /lib/***
+ /bin/***
+ /sbin/***
+ /usr/***
+ /var/***
+ /home/***
+ /root/***

- * ← すべてのフォルダとファイルを(*)バックアップから除外(-)する。

※上記一覧の意味は、まず、同期するフォルダ内でも対象外にするサブフォルダがあれば明記し、
その後同期するフォルダを明記、最後に明記されていないフォルダやファイルはすべて同期の
対象外とする、である。

[root@ufuso ~]# [root@ufuso ~]# rsync -avn --exclude-from=/etc/rsync_exclude.lst / /mnt/usbhd/all/backup/sl63/
  ← ファイルのバックアップがうまくいくかテストする。
sending incremental file list
./
bin/
bin/alsaunmute
・・・
var/yp/nicknames
var/yp/binding/

sent 4037247 bytes  received 424998 bytes  189882.77 bytes/sec
total size is 68177153344  speedup is 15278.67 (DRY RUN)← 「(DRY RUN)」は、上記-avnのオプ
ションにn(テストラン)があるので、同期を行わず対象フォルダやファイルを一覧表示しただけ、
という意味。

■USB外付ハードディスクにサーバー全体をバックアップ

[root@ufuso ~]# [root@ufuso ~]# rsync -av --exclude-from=/etc/rsync_exclude.lst / /mnt/usbhd/all/backup/sl63/
  ← ファイルのバックアップを実施。
sending incremental file list
./
bin/
bin/alsaunmute
・・・
var/yp/nicknames
var/yp/binding/

sent 68194566408 bytes  received 2249130 bytes  15843144.51 bytes/sec
total size is 68178025306  speedup is 1.00
rsync warning: some files vanished before they could be transferred (code 24) at main.c(1039) [sender=3.0.6]

■自動バックアップの設定(crontab)

[root@ufuso~]# vi /etc/crontab  ← crontabに設定を追加する。
SHELL=/bin/bash
PATH=/sbin:/bin:/usr/sbin:/usr/bin
MAILTO=root
HOME=/

# For details see man 4 crontabs

# Example of job definition:
# .---------------- minute (0 - 59)
# |  .------------- hour (0 - 23)
# |  |  .---------- day of month (1 - 31)
# |  |  |  .------- month (1 - 12) OR jan,feb,mar,apr ...
# |  |  |  |  .---- day of week (0 - 6) (Sunday=0 or 7) OR sun,mon,tue,wed,thu,fri,sat
# |  |  |  |  |
# *  *  *  *  *  command to be executed
# DDNS Dynamic DO!.jp Update
  0  8  2  *  * root wget -q -O - 'http://free.ddo.jp/dnsupdate.php?dn=ufusou.ddo.jp&pw=tu5606767

  0  4  *  *  * root rsync -av --exclude-from=/etc/rsync_exclude.lst / /mnt/usbhd/all/backup/sl63/
  ← 毎日午前4時に同期(差分コピー)を取るように設定を追加。

USBハードディスクの最新情報(パソコン&テレビ両用が主流)

[csshop service=”amazon” keyword=”USB外付けハードディスク TB” category=”” sort=”+price” mode=””]

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です

CAPTCHA


このサイトはスパムを低減するために Akismet を使っています。コメントデータの処理方法の詳細はこちらをご覧ください