LinuxSir.cn,穿越时空的Linuxsir!

 找回密码
 注册
搜索
热搜: shell linux mysql
查看: 1325|回复: 13

【已解决】编译内核出错,同样的问题出现两次了,希望知道解决方案

[复制链接]
发表于 2007-5-8 19:04:49 | 显示全部楼层 |阅读模式
环境:
gentoo 2006.1 x86
linux-2.6.10-r6
VMWare 6.0.0.44426 for windows
SATA硬盘
两个分区
/           ext3
swap    swap

参考青铜镜大哥的内核编译文档:
http://www.linuxfans.org/nuke/mo ... der=asc&start=0

问题:
青铜镜大哥提到的可能出现的错误,原文:
  1. 1、编译内核失败,不能进入系统,提示如下:
  2. audit(1129243020.326:0):initialized
  3. kernel panic – not syncing: VFS:Unable to mount root fs on unknown-block(0,0)
  4. 或是:
  5. VFS:Cannot open root device "hdxy" or unknow-block(0,0)
  6. Please append a correct "root=" boot option
  7. kernel panic-not syncing: VFS:Unable to mount root fs on unknow-block(0,0)
  8. 这种故障现象,是肝木克了脾土,够你郁闷好几天!
  9. 解决方法:把
  10. 08.05.11、<*> RAM disk support
  11. 09.27.07、<*> Compressed ROM file system support (cramfs) 这两项都要选上!!!!!!否则,呵呵!
复制代码
我确信这两项都选择了,SATA支持也选择了,另外关于ext3,ext2的文件支持也选择了编译进了内核,没有编译成模块

求助青铜镜大哥得到回复:
  1. 虚拟文件系统无法挂载SATA硬盘,
  2. 你看看下面的选项:
  3. 09.26、Pseudo filesystems --->
  4. 09.26.01、[*] /proc file system support
  5. 09.26.02、[*] /proc/kcore support
  6. 09.26.03、[*] /dev/pts Extended Attributes
  7. 09.26.04、[*] /dev/pts Security Labels
  8. 09.26.05、[*] Virtual memory file system support (former shm fs)
  9. 09.26.06、[*] tmpfs Extended Attributes
  10. 09.26.07、[*] tmpfs Security Labels
  11. 09.26.08、[*] HugeTLB file system support
复制代码
选择上依然无效

部分grub.conf
  1. title Gentoo
  2. root (hd0,0)
  3. kernel /boot/linux-2.6.20-gentoo-r6 root=/dev/sda1 nomce
复制代码

部分fstab
  1. /dev/sda2      none            swap            sw              0 0
  2. /dev/sda1         /                ext3        noatime           0 1
复制代码

这个问题出现过两次了,第一次是在x84的物理机器,gentoo2006.1 x64 ,SATA硬盘,最后用了三翻领大哥的.config,修改后成功编译
现在这个问题又出现了,想请教下大家,究竟这个问题是什么原因,应该怎么解决

谢谢

补充虚拟机设备:
[/code]
livecd ~ # lspci
00:00.0 Host bridge: Intel Corporation 440BX/ZX/DX - 82443BX/ZX/DX Host bridge (rev 01)
00:01.0 PCI bridge: Intel Corporation 440BX/ZX/DX - 82443BX/ZX/DX AGP bridge (rev 01)
00:07.0 ISA bridge: Intel Corporation 82371AB/EB/MB PIIX4 ISA (rev 08)
00:07.1 IDE interface: Intel Corporation 82371AB/EB/MB PIIX4 IDE (rev 01)
00:07.2 USB Controller: Intel Corporation 82371AB/EB/MB PIIX4 USB
00:07.3 Bridge: Intel Corporation 82371AB/EB/MB PIIX4 ACPI (rev 08)
00:0f.0 VGA compatible controller: VMware Inc [VMware SVGA II] PCI Display Adapter
00:10.0 SCSI storage controller: LSI Logic / Symbios Logic 53c1030 PCI-X Fusion-MPT Dual Ultra320 SCSI (rev 01)
00:11.0 PCI bridge: VMware Inc Unknown device 0790 (rev 01)
02:00.0 Ethernet controller: Advanced Micro Devices [AMD] 79c970 [PCnet32 LANCE] (rev 10)
02:01.0 Multimedia audio controller: Ensoniq ES1371 [AudioPCI-97] (rev 02)
02:02.0 USB Controller: VMware Inc Unknown device 0770
[/code]

InstallCD载入的模块:
  1. lsmod
  2. Module                  Size  Used by
  3. ipv6                  170912  12
  4. sg                     19484  0
  5. mptspi                  8328  0
  6. mptscsih               13184  1 mptspi
  7. mptbase                36064  2 mptspi,mptscsih
  8. scsi_transport_spi     14208  1 mptspi
  9. pcnet32                22404  0
  10. mii                     3968  1 pcnet32
  11. rtc                     7476  0
  12. tg3                    88324  0
  13. e1000                  90432  0
  14. nfs                    85180  0
  15. lockd                  41352  1 nfs
  16. sunrpc                 99644  2 nfs,lockd
  17. jfs                   143340  0
  18. dm_mirror              13008  0
  19. dm_mod                 31896  1 dm_mirror
  20. pdc_adma                4868  0
  21. sata_mv                11656  0
  22. ata_piix                8072  0
  23. ahci                   11268  0
  24. sata_qstor              4996  0
  25. sata_vsc                4100  0
  26. sata_uli                3204  0
  27. sata_sis                3844  0
  28. sata_sx4                8452  0
  29. sata_nv                 4740  0
  30. sata_via                4868  0
  31. sata_svw                3844  0
  32. sata_sil24              8708  0
  33. sata_sil                5384  0
  34. sata_promise            6276  0
  35. libata                 61460  15 pdc_adma,sata_mv,ata_piix,ahci,sata_qstor,sata_vsc,sata_uli,sata_sis,sata_sx4,sata_nv,sata_via,sata_svw,sata_sil24,sata_sil,sata_promise
  36. sbp2                   15364  0
  37. ohci1394               24880  0
  38. ieee1394               53176  2 sbp2,ohci1394
  39. sl811_hcd               8320  0
  40. usbhid                 29792  0
  41. ohci_hcd               13572  0
  42. uhci_hcd               15240  0
  43. usb_storage            57280  0
  44. ehci_hcd               19976  0
  45. usbcore                78084  7 sl811_hcd,usbhid,ohci_hcd,uhci_hcd,usb_storage,ehci_hcd
复制代码

最后解决了,参考
http://gentoo-wiki.com/HOWTO_Ins ... inding_your_devices
重新认真编译了一遍

谢谢大家的帮助!
我自己总结出一下经验:
1 SATA硬盘支持需要编译到内核中,需要是编译到内核,而不是模块(如果SATA硬盘作为启动硬盘的话),特别注意2楼shooter兄弟所指出的选项,貌似这个Fusion MPT是独立与SCSI DEVICE之外的。具体这个Fusion MPT我去搜索了,但是没看懂,好像牵扯到太多的硬件知识,小弟不懂
2 磁盘的分区格式要支持,引用网友的话说即使分区是ext3也要把ext2的支持编译进内核
3 VMWare上安装也许有自己的特殊性吧,还是推荐大家参考wiki

再次谢谢大家
发表于 2007-5-9 08:37:13 | 显示全部楼层
Device Drivers --->
Fusion MPT device support --->
<M> Fusion MPT ScsiHost drivers for SPI

请选上,我也追寻了很久的~

启动项里加上doscsi的参数~
回复 支持 反对

使用道具 举报

 楼主| 发表于 2007-5-9 11:26:26 | 显示全部楼层
Post by shooter
Device Drivers --->
Fusion MPT device support --->
<M> Fusion MPT ScsiHost drivers for SPI

请选上,我也追寻了很久的~

启动项里加上doscsi的参数~


重新编译了内核,把兄弟所指内容编译成模块
grub.conf里也加上了 doscsi 参数
仍然上述错误

又试了一次,编译到内核,还是错误
回复 支持 反对

使用道具 举报

发表于 2007-5-9 11:57:42 | 显示全部楼层
可能缺了initrd文件
回复 支持 反对

使用道具 举报

发表于 2007-5-9 12:16:25 | 显示全部楼层
我用genkernel来做内核的,省力一点~
回复 支持 反对

使用道具 举报

发表于 2007-5-9 12:32:13 | 显示全部楼层
Post by shooter
我用genkernel来做内核的,省力一点~

我也是,genkernel --memuconfig all 。而且这种错误,不时哪个选项单一的原因造成的。
回复 支持 反对

使用道具 举报

 楼主| 发表于 2007-5-9 12:32:37 | 显示全部楼层
google了好多文章,受用最大的是
http://gentoo-wiki.com/HOWTO_Ins ... inding_your_devices
可惜还是没解决问题

难道与我选择的SATA I/O Adapter有关?
选择的是LSI Logic而不是Bus Logic
需要选择什么内核才支持呢?
回复 支持 反对

使用道具 举报

发表于 2007-5-9 15:02:02 | 显示全部楼层
LSI logic很简单
Device Drivers --->
Fusion MPT device support --->
<*> Fusion MPT ScsiHost drivers for SPI

SCSI的“SCSI low-level drivers“一个也不选。

直接编进内核试试。
我就是这样用的,没出现问题。
回复 支持 反对

使用道具 举报

发表于 2007-5-9 15:08:17 | 显示全部楼层
给你个能用的配置 linux-2.6.20-gentoo-r8

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?注册

x
回复 支持 反对

使用道具 举报

发表于 2007-5-10 10:28:11 | 显示全部楼层
最新的21内核默认有问题,会认不出硬盘~
同样的配置用20-r8的内核没问题~
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

快速回复 返回顶部 返回列表