がらくたネット


linux rescue

linux rescue

linuxにはレスキュー(rescue)モードがある

ディストリビューションの起動メディア(CD or DVD)から起動し、プロンプトで

linux rescue
と入力することで起動する

rescueモードでは、パスワード無しでメディアから起動しroot権限となる

ローカルハードディスクはディスクドライバが正常に動作しているのであれば利用できる

NICは起動メディア内のドライバで稼動するのであれば利用できる

LVMディスクもハードディスクが認識していれば利用できる

コマンド類は基本的にメディア内のものを利用するので安全

ext3の場合

起動後、/mnt/sysimageにハードディスクの/(root)がマウントされ利用可能

chrootコマンドで/mnt/sysimageを指定することで利便性があがる

LVMの場合

LVMディスクを認識させるところから必要

# lvm vgscan VG情報を認識
# lvm vgchange -a y VolGroup00 VolGropu00をアクティブに設定
# lvm lvdisplay 認識したLV情報を表示
# mount /dev/mapper/VolGroup00 /mnt/vg /mnt/vgにマウント

この後、通常コマンドを利用してOS内を復旧させる

ルートパーティションのリサイズ

ルートパーティションをリサイズする場合もRescueモードを活用する。
パーティションリサイズはターゲットパーティションをアンマウントしておく必要があり ルートパーティションの場合、アンマウントすると当然コマンド系が使えなくなるので RAMディスク等に退避させておく必要がある。Rescueモードであえれば そのままコマンド系が使えるので簡単にリサイズできる。
特にLVMの場合便利。

これは縮小させる場合ね

Rescueモード起動時の指定
Netwrokはなし、マウントはskipしておく
 
vgdisplayでターゲットが見えているか確認
 Free PEが0になってることを確認
 見えてない時は
 lvm vgscan VG情報を認識
 lvm vgchange -ay [VG名] [VG名]をアクティブに設定
lvdisplayでターゲットパーティションのパス名を確認
lvm lvchange -ay [LV名] [LV名]をアクティブに設定
e2fsck [LV名]
 tune2fs -l [LV名] BLOCK数とBLOCK SIZEでパーティションサイズを確認
resize2fs [LV名] ??G ??Gにサイズ変更
 tune2fs -l [LV名] BLOCK数とBLOCK SIZEでパーティションサイズを確認
lvreduce -L ??G [LV名]
 問いにはYesで答える
 lvdisplay [LV名]
vgdisplay [VG名]で確認
 Free PEが0ではなくなっている事を確認
再起動でOK

拡張ね

fdisk /dev/sdb
nで新しい基本パーティションを作成して書き込む
 
新パーティションをPVに組み込む
pvcreate /dev/sdb1
 
既存ボリュームグループにPVを組み込む
vgextend VolGroup /dev/sdb1
 
既存論理グループにVGを組み込む
lvextend -l +100%FREE /dev/VolGroup/lv_root
 
ファイルシステムの拡張
サイズ指定しなければパーティションデフォルトサイズが設定される
基本はオフライン(アンマウント)状態でやるのが筋だがetx3以上はオンラインもサポートされた
resize2fs /dev/VolGroup/lv_root