コンテンツへスキップ

仕事中、RAID1構成のsdbのハードディスクが故障したから交換作業を実施した。
交換したハードディスクのパーティションを切った。sdb1とする。sdb1をsda1からコピーして、
sdb1、sda1によるRAID1構成を作成した。これで終わりではなく
その後になぜsdbにgrubをインストールするのかがわからなかった。

grub-install --root-directory=/ /dev/sdb

自分の理論ではsda全体の中身をsdbに入れたからgrubもインストールされているだろうと思っていた。
後から先輩に教えてもらったけど、grubのインストールはマスターブートレコード(MBR)を指しているとのこと。
MBRはディスク内のセクタの先頭にあり一番初めに読まれるデータ。
MBR内にはブートローダとパーティションテーブルがある。ブートローダはパーティションテーブルの内容を元に
各パーティションであるsdb1やsdb2ブートセクタを起動できるようにする。ブートセクタによって各パーティションのOSが起動する仕組みだ。

つまり、sdb1をsda1にコピーしたところで、MBRが含まれていないので、別途MBRをインストールする必要があった。
ddコマンドでもMBRをコピーできるようだけど、ddコマンドをミスしてディスクを壊すと危ないのでコマンドでMBRをインストールしているとのこと。

参考
わかりそうでわからないシリーズ

LVM pv,vg,lv といろいろあってわけわからなかったけど、下記サイトのおかげでやっとわかった。
https://piro791.blog.ss-blog.jp/2008-11-04

pvあればそのままlvしたらいいと思ってたけど、vg作らないと仮想ディスクとならないってこと。仮想ディスクをパーティションで切るのはlvってこと。
pvもいらないと思ってたけど、vgが物理ボリュームと認識するために必要なものと認識する。

Linuxのハードディスク交換の時のためのメモ。
ディスク交換時に必要なこととして、マウント先の確認とスワップに使われているかを確認する必要がある。
マウント先の確認
df -h
スワップの確認
swapon -s
テーブルの確認
cat/fstab
上記を確認次第、関係があれば、対象のディスクやスワップを外す。
mdadm --remove
swapoff


raidは0.1等あるが、基本的に1のミラーリングを使う。
ミラーリングは複数のディスクを1つのディスクとして扱うため、
片方のディスクが壊れてももう片方のディスクがあるため冗長性を保ちやすい。
raidが二つあれば、一つのraidすべてが壊れても問題なし。

ディスクを入れた後は、パーティションを切って、ディスクをraidに加えたりスワップにしたりする。

一番気を付けるべきなのは、ディスクの中身を他の領域に移さないことだ。
特にブートについては、ファイルを残しておかないと次に立ち上がらなくなる。

ディスクを入れ替えた後はパーティションを切ってglubをインストールしなおす。