2013年3月18日月曜日

gentooでudevのUpdateにはご注意下さい...

最近のアップデートでudevが上がったらしく、ちょっとbootできなくなったのでその辺の修理方法をちょっと載せておきます。

ちなみにudevのバージョンはsys-fs/udev-197-r8です

udevとは?


udevとはいろいろなデバイスを接続したタイミングで、自動で使えるようにしてくれる便利な機能。 これが無いといちいちmkmodとかデバイスのメジャー番号とか指定してやらなくてはならないしとにかく面倒、で、これを酔うてるうちにUpdateしてしまい、窮地に追い込まれた始末。

まずい状態のx220


こんな感じでbootができない



修理方法


カーネルの設定が合わないらしく、udevの機能を利用してカーネルがデバイスをマウントできないらしいので再設定しなおす。 ここでOSを起動する環境が無い方は、Gentooのbootディスクを使ったり、KNOPPIXでbootしたりすればOK、自分はGentooのbootディスクでCDからbootしました
bootしましたら、HDDの環境へchrootします、実際のデバイスは自分の環境ですので読み替えてお願いします
karky7 ~ # mount /dev/sda5 /mnt/gentoo
karky7 ~ # mount -t proc none /mnt/gentoo/proc
karky7 ~ # mount -o bind /dev /mnt/gentoo/dev
karky7 ~ # chroot /mnt/gentoo /bin/bash

以下、chroot環境です
 ~ # env-update
 ~ # source /etc/profile

カーネルの再設定


今までの設定が不完全だったらしく、udevまわりの設定を再度見直し、以下のカーネル設定を修正
General setup  --->
  [ ] Enable deprecated sysfs features to support old userspace tools
  [*] Enable signalfd() system call
-*- Networking support  ---> 
  Networking options  --->
    <*> Unix domain sockets

Device Drivers  --->
  Generic Driver Options  --->
    [*] Maintain a devtmpfs filesystem to mount at /dev
    [*]   Automount devtmpfs at /dev, after the kernel mounted the rootfs
  < > ATA/ATAPI/MFM/RLL support (DEPRECATED)  --->

File systems  --->
  [*] Inotify support for userspace
  [*] /proc file system support 
  -*- sysfs file system support
設定が完了したらカーネルを再ビルドしてください
# make && make modules && make modules_install && make install
# reboot
これで起動することができました、皆さんシステムをupdateするときは、飲酒は止めましょう...笑

0 件のコメント:

コメントを投稿