+ -
当前位置:首页 → 问答吧 → 请教SATA的编译问题

请教SATA的编译问题

时间:2008-01-06

来源:互联网

我刚把LFS安装上,按照中文文档做的(版本 6.2),
软件包用的是 lfslivecd-x86-6.2-5.iso

编译完内核后,启动不了,显示:
Kernel panic - not syncing : VFS : Unable to mount root fs on unknown - block(0,0)

应该是驱动没有编译到内核中吧。
我把不想要的驱动全给关了,因为想知道这个驱动到底有啥用。
像网络的驱动,我都没开;打算下一步再编上;
不知道是少了那个选项,总是启动不了新内核;
按照网上的文章,都试过了,都不行,
请帮忙看看问题在哪里。


实在不行的话,我就用Centos5.1的内核启动了。

附上我的电脑信息:

lspci:
00:00.0 Host bridge: Intel Corporation 82945G/GZ/P/PL Memory Controller Hub (rev 02)
00:02.0 VGA compatible controller: Intel Corporation 82945G/GZ Integrated Graphics Controller (rev 02)
00:1b.0 Audio device: Intel Corporation 82801G (ICH7 Family) High Definition Audio Controller (rev 01)
00:1c.0 PCI bridge: Intel Corporation 82801G (ICH7 Family) PCI Express Port 1 (rev 01)
00:1c.1 PCI bridge: Intel Corporation 82801G (ICH7 Family) PCI Express Port 2 (rev 01)
00:1c.2 PCI bridge: Intel Corporation 82801G (ICH7 Family) PCI Express Port 3 (rev 01)
00:1c.3 PCI bridge: Intel Corporation 82801G (ICH7 Family) PCI Express Port 4 (rev 01)
00:1d.0 USB Controller: Intel Corporation 82801G (ICH7 Family) USB UHCI Controller #1 (rev 01)
00:1d.1 USB Controller: Intel Corporation 82801G (ICH7 Family) USB UHCI Controller #2 (rev 01)
00:1d.2 USB Controller: Intel Corporation 82801G (ICH7 Family) USB UHCI Controller #3 (rev 01)
00:1d.3 USB Controller: Intel Corporation 82801G (ICH7 Family) USB UHCI Controller #4 (rev 01)
00:1d.7 USB Controller: Intel Corporation 82801G (ICH7 Family) USB2 EHCI Controller (rev 01)
00:1e.0 PCI bridge: Intel Corporation 82801 PCI Bridge (rev e1)
00:1f.0 ISA bridge: Intel Corporation 82801GB/GR (ICH7 Family) LPC Interface Bridge (rev 01)
00:1f.2 IDE interface: Intel Corporation 82801GB/GR/GH (ICH7 Family) SATA IDE Controller (rev 01)
00:1f.3 SMBus: Intel Corporation 82801G (ICH7 Family) SMBus Controller (rev 01)
01:00.0 Ethernet controller: Realtek Semiconductor Co., Ltd. RTL8101E PCI Express Fast Ethernet controller (rev 01)
05:02.0 Network controller: RaLink RT2561/RT61 rev B 802.11g

/etc/fstab:

/dev/sda6 / ext3 defaults 1 1
/dev/sda8 swap swap pri=1 0 0
proc /proc proc defaults 0 0
sysfs /sys sysfs defaults 0 0
devpts /dev/pts devpts gid=4,mode=620 0 0
shm /dev/shm tmpfs defaults 0 0
上传的附件
config.rar (6.3 KB, 3 次查看)

作者: sofire   发布时间: 2008-01-06

旧版内核的 SATA 的选项在 SCSI 中找。
如果你有兴趣,可以尝试 CLFS 的 svn 版,建议 x86 的 i686 。
以后注意附件用 tar 包或 zip 包,rar 包可能会给读者带来一些麻烦。

补充:
我刚才看过你的 .config 文件了,你的 SATA 这个选项没有选。注意, 2.6.16.x 内核的 SATA 选项在SCSI的选项中找。

  Device Drivers --->
    SCSI device support --->
      xxxxxxxxxx --->

如上图示,2.6.16.x内核选项的SATA的选项在某个SCSI的子项的中间以下部分。

如果你感觉不喜欢这个版本的内核或者不喜欢旧的软件,你可以尝试更新。这个内核要更新2.6.19.x或更新的版本,头文件是需要更新下的,否则出错,我试过。这么多软件也都要更新,其实更新的时间可能能够做两次新版本的了。用 CLFS 的 svn 版吧。

cross-lfs.org/view
cross-lfs.org/view/svn
cross-lfs.org/view/svn/x86

如果你有64位处理器。如果你做64位的,建议单库。不推荐 Multilib ,因 多库太麻烦问题多多。而且,如果都用开源软件来做,为啥不用纯64位?

作者: tfkdmwmqtr   发布时间: 2008-01-06

我用了2.6.19.xx来编译。已经可以了。

"SATA 这个选项没有选",能明示是哪个没有选上吗?

作者: sofire   发布时间: 2008-01-07

我先前只看了 .config 文件,可能看漏了。
现在我解压了 linux-2.6.16.38 的源码包,看了下,你选的是:

  <*> Serial ATA (SATA) support   │ │
   │ │ <*> AHCI SATA support   │ │
   │ │ < > ServerWorks Frodo / Apple K2 SATA support   │ │
   │ │ <*> Intel PIIX/ICH SATA support

你选的是 Intel PIIX/ICH SATA support ,很可能就是它并不能支持你的 SATA 。

作者: tfkdmwmqtr   发布时间: 2008-01-07

2.6.19的内核,选择Intel PIIX/ICH SATA Support支持的时候,它的帮助写的是:
This option enables support for ICH5/6/7/8 Serial ATA.

而2.6.16.38的内核,写的是:
This option enables support for ICH5 Serial ATA

不肯定是不是说2.6.16的就不支持ICH7的芯片。

作者: sofire   发布时间: 2008-01-07

引用:
作者: sofire
2.6.19的内核,选择Intel PIIX/ICH SATA Support支持的时候,它的帮助写的是:
This option enables support for ICH5/6/7/8 Serial ATA.

而2.6.16.38的内核,写的是:
This option enables support for ICH5 Serial ATA

不肯定是不是说2.6.16的就不支持ICH7的芯片。
这样啊?
那有可能了。
2.6.16.x 的内核很旧的了,可能你的硬件有点新所以不支持了。
这编译内核真能长知识。

作者: tfkdmwmqtr   发布时间: 2008-01-07