-->

2011-08-04

gentooのOS起動時の設定の修正のメモ

システム更新後、OS起動時にiptablesがエラーになるので /etc/rc.conf の rc_parallel="YES" をNOに戻しました。
上記の修復時に /dev/md1 などがインストールCD利用後に名前が変わるので /etc/fstab にUUIDで指定しました。
grub.conf に UUIDではなく real_root=/dev/md126 を指定しました。書き方が間違っている、もしくは、grubが未対応でした。



以下は詳細。

起動時にsysctlでエラー。
起動後にsysctl再起動でエラー無し。
起動時にbridgeモジュールが呼ばれていない。
どこかで起動後までに呼ばれる。
$ lsmod | grep ^bridge
bridge                 61076  0

たぶん以前に自動で追記された。これが無いとホストOS以外からsshなどができない。ブリッジのiptablesをoff。
> #
> # Setup bridge interface for KVM
> #
> net.bridge.bridge-nf-call-arptables = 0
> net.bridge.bridge-nf-call-iptables = 0
> net.bridge.bridge-nf-call-ip6tables = 0

$ cat /proc/sys/net/bridge/bridge-nf-call-arptables
0

mdXXが変化するのでUUIDに変えた。grubの方はreal_root=UUID=xxxとしてもダメだったので直接指定した。
たぶんgrubのバージョンが古い、か記述内容が悪い。

mdXXXが変化した流れは、
OS起動時にiptablesが永遠に起動しない?
=> インストールCDで起動して修正する
=> mdXXが変わった。swapだけ戻してみたところ戻ったがUUIDに変更した。

$ rcsdiff -r1.6 /etc/config-archive/etc/fstab,v /etc/fstab
===================================================================
RCS file: /etc/config-archive/etc/fstab,v
retrieving revision 1.6
diff -r1.6 /etc/fstab
17,20c17,20
< /dev/md1              /boot           ext2            noauto,noatime  1 2
< /dev/md3              /               ext4            noatime         0 1
< /dev/md4              /mnt/share      ext4            noatime         0 1
< /dev/md2              none            swap            sw              0 0
---
> UUID="87371e13-1bc9-4545-9c6e-4ef68e95551a"   /boot           ext2            noauto,noatime  1 2
> UUID="57dc8825-419e-46e4-9c80-acc1d644f7ac"   /               ext4            noatime         0 1
> UUID="e5ab4584-6bde-4e4d-ae0d-ce990d5dae7d"   /mnt/share      ext4            noatime         0 1
> UUID="9867bd93-a5da-4919-b69c-5a73a887c1d1"   none            swap            sw              0 0

$ rcsdiff -u -r1.24 /etc/config-archive/boot/grub/grub.conf,v /boot/grub/grub.conf
===================================================================
RCS file: /etc/config-archive/boot/grub/grub.conf,v
retrieving revision 1.24
diff -u -r1.24 /boot/grub/grub.conf
--- /boot/grub/grub.conf        2011/06/08 01:00:24     1.24
+++ /boot/grub/grub.conf        2011/08/02 09:16:16
@@ -10,7 +10,7 @@

 title Gentoo Linux 2.6.38-hardened-r6
 root (hd0,0)
-kernel /boot/kernel-genkernel-x86_64-2.6.38-hardened-r6 root=/dev/ram0 init=/linuxrc ramdisk=8192 udev domdadm real_root=/dev/md3
+kernel /boot/kernel-genkernel-x86_64-2.6.38-hardened-r6 root=/dev/ram0 init=/linuxrc ramdisk=8192 udev domdadm real_root=/dev/md126
 initrd /boot/initramfs-genkernel-x86_64-2.6.38-hardened-r6

 title Gentoo Linux 2.6.36-hardened-r9

swapoffして再作成したら戻った。
sudo swapoff -a
sudo mdadm --misc --stop /dev/md2
sudo mdadm --create /dev/md2 --metadata=0.90 --level=1 --raid-devices=2 /dev/sda2 /dev/sdb2

$ cat /proc/mdstat
Personalities : [raid1]
md124 : active raid1 sdb1[1] sda1[0]
      256896 blocks [2/2] [UU]

md2 : active raid1 sdb2[1] sda2[0]
      15631168 blocks [2/2] [UU]

md127 : active raid1 sdb4[1] sda4[0]
      929617216 blocks [2/2] [UU]

md126 : active raid1 sdb3[1] sda3[0]
      31254336 blocks [2/2] [UU]

unused devices: <none>

起動時のモジュールの追加。
$ rcsdiff /etc/config-archive/usr/share/genkernel/arch/x86_64/modules_load,v /usr/share/genkernel/arch/x86_64/modules_load
===================================================================
RCS file: /etc/config-archive/usr/share/genkernel/arch/x86_64/modules_load,v
retrieving revision 1.7
diff -r1.7 /usr/share/genkernel/arch/x86_64/modules_load
17c17
< MODULES_NET="r8169 mii ipv6"
---
> MODULES_NET="r8169 mii ipv6 bridge iptable_filter"

$ sudo genkernel --makeopts="-j8 KCFLAGS=\\\"-march=amdfam10 -mcx16 -msahf -mpopcnt --param l1-cache-size=64 --param l1-cache-line-size=64 --param l2-cache-size=512 -mtune=amdfam10 -Os\\\"" --kernel-config=/etc/kernels/kernel-config-x86_64-2.6.38-hardened-r6 initramfs

起動時にiptablesがONだと起動できない状態に変化無し。
$ rc-update show | grep ipt
             iptables |      default

OS起動時のソフトウェア起動の並列化をOFF。
$ rcsdiff /etc/config-archive/etc/rc.conf,v /etc/rc.conf
===================================================================
RCS file: /etc/config-archive/etc/rc.conf,v
retrieving revision 1.9
diff -r1.9 /etc/rc.conf
10c10
< rc_parallel="YES"
---
> rc_parallel="NO"

いつの更新でOS起動が出来なくなっていたかは不明。

0 件のコメント: