3rd Oct, 2008

隻 fedora upgrade 左之後boot 唔起

我轉左 Fedora 9 部機既 hardware 之後, 就因為咁 boot 唔起:

Readling all physical volumes.
No volume groups found
Volume group “VolGroup00″ not found
Unable to access resume device (/dev/VolGroup00/LogVol01)
mount: could not find fileysstem ‘/dev/root’
setuproot: moving /dev failed: No such file or directory
setuproot: error mounting /proc: No such file or directory
setuproot: error mounting /sys: No such file or directory
Mount failed for selinuxfs on /selinux: No such file or directory
switchroot: mount failed: No such file or directory

好明顯個 kernel 認唔到隻 harddisk, 解決方法:
http://www.justlinux.com/forum/showthread.php?threadid=151883

It may be that your new motherboard uses a different SATA chipset. Fedora builds a ramdisk with a list of drivers determined at install time. It wouldn’t work if you moved to a chipset whose driver wasn’t included on that ramdisk. The rescue mode installer will probe for supported hardware by trying every driver it knows about and so will pick up the disks.

If this is indeed the case you will need to add the name of the correct kernel module to Fedora’s ramdisk. You can find this by booting into rescue mode and seeing which modules are loaded. SATA disks show up as SCSI so
Code:

dmesg | grep ^scsi[0-9]

may be helpful.

The rest of the procedure must be carried out chrooted to your system. Fedora rescue mode mounts the existing system on /mnt/sysimage so you can access it with
Code:

chroot /mnt/sysimage /bin/bash -login

Now you must add the module as an alias to scsi_hostadapter in /etc/modprobe.conf. For example, if you determined that you needed the ahci module you would add
Code:

alias scsi_hostadapter ahci

Add it below any existing scsi_hostadapter lines. They will all be picked up.

Finally you need to create the new ramdisk. Fedora has a script to do this:
Code:

/sbin/new-kernel-pkg –update –mkinitrd

where is your kernel version. Normally you would use uname -r to find this but the kernel you have on your system may not be the same as on the rescue CD. To be safe you should look at /boot/grub/grub.conf. For example, on one of my systems I have this:
Code:

default=0 … title Fedora (2.6.25.3-18.fc9.i686) … title Fedora (2.6.25.14.fc9.i686)

Grub is set to boot the first kernel in the list (because default is 0) and so the kernel version is 2.6.25.3-18.fc9.i686. Of course you could repeat new-kernel-pkg for every installed kernel to eliminate all doubt.

即係要整隻救機碟

orz

相關文章

回應

會唔會考慮用其他Linux Distro? Ubuntu(or Kubuntu)都幾好用. 式者openSUSE都OK!

Walter on 2008-10-03 14:31

Ubuntu 同 openSUSE 都有用過, 各有各好, 如果係用家級就唔係咁建議用 Fedora。但對於我, 雖然Fedora d package 有時唔係咁岩 End User, 不過用黎做 development 用 fedora 問題不大。

腦功仔 on 2008-10-03 15:21

其實, 你應該用Debian.

Walter on 2008-10-03 15:34

換 hardware 真係好煩 …
but 偏偏成日想換 ….
真係矛盾 …

Moochi on 2008-10-03 23:27

其實, 可以唔整救機碟架. Fedora 隻 CD 係有個 rescue mode, 開機 menu 打 linux rescue 就得.

跟住隻 harddisk 應該 auto mount 左唔知邊度 (打 mount check 番). 咁你就可以搞個 initrd

Anonymous on 2008-10-04 11:00

我都有用 Debian, 不過一直比較接觸 Fedora 同 CenOS 多, 所以用返 Fedora 比較習慣。

我整左隻 USB 手指可以 boot live Fedora 同埋 Ubuntu, 所以應該係整救機手指。

腦功仔 on 2008-10-04 13:22

你的回應






Your response: