CentOS51でバックアップサーバ/(4)HDD増設とバックアップ自動化 のバックアップ(No.1)



  • バックアップ更新の手順までは前回確認したが、バックアップ先をどうするかが問題である。
  • 別サーバを常時立ち上げておくのもわずらわしいので、HDDを増設して、そこにバックアップすることにした。併せて自動かも確認した。
  • バックアップサーバで検証したものだが、近々に現サーバと入れ替える予定なので、このまま利用することに。。(2008/6/20頃 実施)

HDDの増設

  • 長年linuxサーバを運用しているが、実はHDDはいつもシングルドライブだった。サーバって、それほど容量食わないもんね。イメージ掲示板やブログで写真が増えたと言っても、コンテンツとアプリソフト全部合わせても、300MB超えていない。
  • メインに80GBのHDD入れているが、OS含めての使用状態をチェックしても、ほとんど数%のオーダーである。
    [root@kuraric5 ~]# df
    Filesystem           1K-ブロック    使用   使用可 使用% マウント位置
    /dev/mapper/VolGroup00-LogVol00
                              77257664   4474944   68794856   7%   /
    /dev/hda1               101086       23066        72801  25%  /boot
    tmpfs                      127816              0      127816   0%   /dev/shm
  • 容量的には問題ないんだけれど、バックアップ先として考えてた時には、空きがあればよいと言うものではない。HDD自体が故障した時は、いくらパーティッションが分けてあっても、安全性は低い。最低別ドライブにする必要がある。
  • 使ったHDDは、「Quantum fireball EX 6.4GB」で、昔、何かの試験用にハードオフで買ったもの。スレーブで使うためのジャンパーの設定が分からなくてネットで探した。QuntumはMaxtorに買収されたのか?迷ったが、一応情報は見つけた。横にして2個使うという珍しい設定。で、取り付け完了。写真の下側ドライブが増設分。 &ref(): File not found: "addHDD" at page "CentOS51でバックアップサーバ/(4)HDD増設とバックアップ自動化";

ドライブ確認

  • まずは、増設HDDを認識しているのかどうかを確認。コマンド名は、「dmesg」
    [root@kuraric51 ~]# dmesg
    Linux version 2.6.18-53.1.21.el5 (mockbuild@builder6.centos.org) (gcc version 4.1.2 20070626 (Red Hat 4.1.2-14)) #1 SMP Tue May 20 09:34:18 EDT 2008

Probing IDE interface ide0... hda: ST380011A, ATA DISK drive hdb: QUANTUM FIREBALL EX6.4A, ATA DISK drive  ★ ide0 at 0x1f0-0x1f7,0x3f6 on irq 14 Probing IDE interface ide1... hdc: Pioneer DVD-ROM ATAPIModel DVD-106S 012, ATAPI CD/DVD-ROM drive hdd: PLEXTOR CD-R PX-W8432T, ATAPI CD/DVD-ROM drive ide1 at 0x170-0x177,0x376 on irq 15 hda: max request size: 512KiB hda: 156301488 sectors (80026 MB) w/2048KiB Cache, CHS=16383/255/63, UDMA(33) hda: cache flushes supported

hda: hda1 hda2

hdb: max request size: 128KiB hdb: 12594960 sectors (6448 MB) w/418KiB Cache, CHS=13328/15/63, UDMA(33) hdb: cache flushes not supported

hdb: hdb1 hdb2 hdb3

ide-floppy driver 0.99.newide

LinuxのHDD等のデバイス名について

  • WIndowsでは、IDEのインタフェースにしたがって、マスター/スレーブ、プライマリ/セカンダリ と言う形でドライブを認識しますが、LinuxOSではハードディスクの取付け位置によって「デバイス名」 が決定される。、
プライマリコントローラーのマスターポートに接続 = /dev/hda 
プライマリコントローラーのスレーブポートに接続 = /dev/hdb 

セカンダリコントローラーのマスターポートに接続 = /dev/hdc 
セカンダリコントローラーのスレーブポートに接続 = /dev/hdd 
  • もともと、Linuxサーバをインストールしたものでもあり、「hdb」として、問題なく認識している。ジャンパー設定も間違っていなかったということ。

HDDの領域設定

  • 基本的に「fdisk」コマンドを使用する。 まず、状態確認の「サブコマンド p」。
  • 昔サーバで使ったので、その名残のパーティッションがそのまま残っている。デバイス名の後ろの数字がパーティッションを意味している。パーティッションを削除して、改めて領域確保を行う。
  1. 状態確認
    [root@kuraric51 ~]# fdisk /dev/hdb
    
    コマンド (m でヘルプ): p
    
    Disk /dev/hdb: 6448 MB, 6448619520 bytes
    255 heads, 63 sectors/track, 784 cylinders
    Units = シリンダ数 of 16065 * 512 = 8225280 bytes
    
    デバイス Boot      Start         End      Blocks   Id  System
    /dev/hdb1   *           1          13      104391   83  Linux
    /dev/hdb2              14         752     5936017+  83  Linux
    /dev/hdb3             753         784      257040   82  Linux swap / Solaris
  2. 既存のパーティッションを削除
    コマンド (m でヘルプ): d
    領域番号 (1-4): 1
    
    コマンド (m でヘルプ): d
    領域番号 (1-4): 2
    
    コマンド (m でヘルプ): d
    No partition is defined yet!
    
    コマンド (m でヘルプ): w
    領域テーブルは交換されました!
    
    ioctl() を呼び出して領域テーブルを再読込みします。
    ディスクを同期させます。
  1. 再度、領域を確保する
    [root@kuraric51 ~]# fdisk /dev/hdb
    
    このディスクのシリンダ数は 13328 に設定されています。
    間違いではないのですが、1024 を超えているため、以下の場合
    に問題を生じうる事を確認しましょう:
    1) ブート時に実行するソフトウェア (例. バージョンが古い LILO)
    2) 別の OS のブートやパーティション作成ソフト
       (例. DOS FDISK, OS/2 FDISK)
    
    コマンド (m でヘルプ): n
    コマンドアクション
       e   拡張
       p   基本領域 (1-4)
    p
    領域番号 (1-4): 1
    最初 シリンダ (1-13328, default 1): 1
    終点 シリンダ または +サイズ または +サイズM または +サイズK (1-13328, default 13328): 13328
    
    コマンド (m でヘルプ): p
    
    Disk /dev/hdb: 6448 MB, 6448619520 bytes
    15 heads, 63 sectors/track, 13328 cylinders
    Units = シリンダ数 of 945 * 512 = 483840 bytes
    
    デバイス Boot      Start         End      Blocks   Id  System
    /dev/hdb1               1       13328     6297448+  83  Linux
    
    コマンド (m でヘルプ): w
    領域テーブルは交換されました!
    
    ioctl() を呼び出して領域テーブルを再読込みします。
    ディスクを同期させます。

HDDのフォーマット

  • コマンドは、「mke2fs」。 LinuxOS基本の "ext3" 形式でフォーマットする。
  • オプションの 「j」は、ジャーナリング機能(ディスク障害時の復旧のための情報)を追加したext3形式を指定するもの
    [root@kuraric51 ~]# mke2fs -j /dev/hdb1
    mke2fs 1.39 (29-May-2006)
    Filesystem label=
    OS type: Linux
    Block size=4096 (log=2)
    Fragment size=4096 (log=2)
    788704 inodes, 1574362 blocks
    78718 blocks (5.00%) reserved for the super user
    First data block=0
    Maximum filesystem blocks=1614807040
    49 block groups
    32768 blocks per group, 32768 fragments per group
    16096 inodes per group
    Superblock backups stored on blocks:
            32768, 98304, 163840, 229376, 294912, 819200, 884736
    
    Writing inode tables: done
    Creating journal (32768 blocks): done
    Writing superblocks and filesystem accounting information: done
    
    This filesystem will be automatically checked every 37 mounts or
    180 days, whichever comes first.  Use tune2fs -c or -i to override.

マウント設定

  • ハードディスクの増設はいとも簡単に終了するが、このドライブに簡単にアクセスできるよう、マウント設定を行う。
  • LinuxOS側のドライブで、/backup と言う名前のディレクトリを作成し、これに増設したHDDをマウントする。こうすれば、増設HDDは、DIRと同じに見えるようになる。
    [root@kuraric51 ~]# mkdir /backup
    [root@kuraric51 ~]# mount /dev/hdb1 /backup
    [root@kuraric51 ~]# ls /backup
    lost+found
    [root@kuraric51 ~]# df
    Filesystem           1K-ブロック    使用   使用可 使用% マウント位置
    /dev/mapper/VolGroup00-LogVol00
                              74814864   3832092   67121064   6% /
    /dev/hda1               101086       23331        72536  25% /boot
    tmpfs                      192740              0       192740   0% /dev/shm
    /dev/hdb1              6198404     143520    5740012   3% /backup
  • 起動時にファイルシステムをマウントさせるための設定は以下のとおり
    [root@kuraric51 ~]# vi /etc/fstab
    === この1行を追加する  ===
    /dev/hdb1               /backup                 ext3    defaults        1 3

バックアップの自動化

  • 増設したHDDを利用して、バックアップの自動化を行う。
  • バックアップのスクリプトは既にできているので、これをタスクに登録するだけでよい
  • 毎朝、5AMに、backup.sh を実行することにする
    [root@kuraric5 ~]# crontab -e
    crontab: installing new crontab
    =================================
    00  05 * * * /backup/backup.sh    ★追加行★
    【以下は略】
  • 翌日、チェックすると、ちゃんとできている(タイムスタンプにご注目!)
    [root@kuraric5 /]# ls -l backup/
    合計 246924
    -rw-r--r-- 1 root root   32870400  6月 22 05:00 OP.tar
    -rw-r--r-- 1 root root            688  6月 22 05:00 backup.dat
    -rwx------ 1 root root            634  6月 21 11:16 backup.sh
    -rw-r--r-- 1 root root  127416320  6月 22 05:00 bbs16.tar
    -rw-r--r-- 1 root root       112640  6月 22 05:00 bbs16_cgi.tar
    -rw-r--r-- 1 root root     2273280  6月 22 05:00 bbs_cgi.tar
    -rw-r--r-- 1 root root    18639290  6月 22 05:00 openpne_dump
    -rw-r--r-- 1 root root         10240  6月 22 05:00 pw.tar
    -rw-r--r-- 1 root root       143360  6月 22 05:00 sgc.tar
    -rw-r--r-- 1 root root    10813440  6月 22 05:00 wiki.tar
    -rw-r--r-- 1 root root        770018  6月 22 05:00 wordpress_dump
    -rw-r--r-- 1 root root    59494400  6月 22 05:00 wp.tar

トップ   一覧 単語検索 最終更新   ヘルプ   最終更新のRSS   リンク元