こちらは旧日記です。移転先→ 愚行録 the Next Generation

ディスク交換

| | コメント(0) | トラックバック(0)

サーバマシンのディスクを交換した。

ことの発端は RAID1 の片肺が(多分)いかれたこと。突如マシンが固まったので再起動したら

  1. Device: /dev/hdb, 1 Currently unreadable (pending) sectors

こんなエラーが出ていたので、いい加減どうにかしようと思った。

せっかく RAID1 なんだから(Software RAID だけど)両方とも同じディスクを使いたい。でも今使ってるディスクはもう店頭では売ってない。
というわけで秋葉原に行った時に買ってきた。Seagate の ST380011A (80GB) を 2 台。HGST の 80GB のも同じ値段だったが Seagate を選んだと言ったら怒られた。理不尽だ(ぉ

現状の 2 台を買ってきた 2 台で置き換えようという算段。
流れとしては、1 台に現在のシステムをコピー→その 1 台でブートするようにする→後は RAID1 構築時と同じ。

01.
新しい 1 台を空いてる Secondary Slave に繋いでパーティション切って fs 作成。
ファイルシステムは xfs にしてみた。

  1. # fdisk -l /dev/hdd
  2.  
  3. Disk /dev/hdd: 80.0 GB, 80026361856 bytes
  4. 255 heads, 63 sectors/track, 9729 cylinders
  5. Units = シリンダ数 of 16065 * 512 = 8225280 bytes
  6.  
  7. デバイス Boot Start End Blocks Id System
  8. /dev/hdd1 1 125 1004031 fd Linux スワップ
  9. /dev/hdd2 * 126 9729 77144130 fd Linux
  1. # mkfs.xfs /dev/hdd2
  2. # mkswap /dev/hdd1

02.
YaST の sysconfig エディタを起動して System->Kernel の INITRD_MODULES に xfs を追加。これ忘れて kernel panic した。

03.
/mnt/hdd あたりにマウントして cp -a で /media, /mnt, /proc 以外をコピー。

  1. # mount /dev/hdd2 /mnt/hdd
  2. # cp -a (/media, /mnt, /proc 以外) /mnt/hdd/

04.
/media/dvd, /mnt, /proc を作ってやる。/proc を忘れると大変なことに。

  1. # cd /mnt/hdd
  2. # mkdir /media /media/dvd /mnt /proc

05.
/mnt/hdd/etc/fstab を書き換え。
md1, md2 を hda1, hda2 に。hda2 のファイルシステムを xfs にしてオプションを defaults に。
hda にするのは後でこの HDD を Primary Master に繋ぐため。

  1. /dev/hda2 / xfs defaults 1 1
  2. /dev/hda1 swap swap pri=42 0 0

06.
勝手に RAID1 構成始めないように /mnt/hdd/etc/raidtab を raidtab.tmp とか適当なファイル名に変更。

  1. # mv /mnt/hdd/etc/raidtab /mnt/hdd/etc/raidtab.tmp

07.
/mnt/hdd/boot/grub/menu.lst に hda から起動するラベルがなかったら追加する。

  1. title Linux
  2. kernel (hd0,1)/boot/vmlinuz root=/dev/hda2 vga=0x314 splash=silent desktop resume=/dev/hda1 showopts
  3. initrd (hd0,1)/boot/initrd

08.
grub を /dev/hdd にインストール。相変わらず grub のことはよく分からないので前にやったのとまったく同じやり方で。grub を起動して以下のように。

  1. device (hd0) /dev/hdd
  2. root (hd0,1)
  3. install /boot/grub/stage1 (hd0,1) /boot/grub/stage2 0x8000 (hd0,1)/boot/grub/menu.lst
  4. install /boot/grub/stage1 d (hd0) /boot/grub/stage2 0x8000 (hd0,1)/boot/grub/menu.lst

09.
シャットダウン。Secondary Slave に繋いでたディスクを Primary Master に繋いで起動。
先ほど追加した /dev/hda から起動するラベルを選択してちゃんと起動すれば OK。
起動しなかった場合はどこかで間違ってるかこの文章が間違ってるか。
試行錯誤の繰り返しの記憶を頼りに書いているのでご勘弁を。

10.
後は以前やった RAID1 構築と同じやり方でやれば OK。

今回の教訓:
/proc 作り忘れんな。

トラックバック(0)

このブログ記事を参照しているブログ一覧: ディスク交換

このブログ記事に対するトラックバックURL: http://emeth.jp/diary_old/mt-tb.cgi/99

コメントする

このブログ記事について

このページは、Kitが2005年11月 7日 23:03に書いたブログ記事です。

ひとつ前のブログ記事は「今日のできごと 2005/11/07」です。

次のブログ記事は「今日のできごと 2005/11/08」です。

最近のコンテンツはインデックスページで見られます。過去に書かれたものはアーカイブのページで見られます。

Powered by Movable Type 4.01