LinuxSir.cn,穿越时空的Linuxsir!

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

redhat9 编译新内核之后无法识别SATA硬盘。

[复制链接]
发表于 2005-7-11 22:37:30 | 显示全部楼层 |阅读模式
redhat 9.0本身的内核把SATA识别成hde,编译了2.4.31内核之后,却无法识别硬盘了。在配置中我把:
ATA/IDE/MFM/RLL suppot=>IDE,ATA and ATAPI block devices=>Silicon Image chipset support
和:
SCSI support=>SCSI low-level drivers=>Silicon Image SATA support
两项都编译进了内核,开机之后无论hde还是sda1都提示没有这个设备。

请教该如何解决?

lspci输出:
00:00.0 Host bridge: nVidia Corporation: Unknown device 01e0 (rev c1)
00:00.1 RAM memory: nVidia Corporation: Unknown device 01eb (rev c1)
00:00.2 RAM memory: nVidia Corporation: Unknown device 01ee (rev c1)
00:00.3 RAM memory: nVidia Corporation: Unknown device 01ed (rev c1)
00:00.4 RAM memory: nVidia Corporation: Unknown device 01ec (rev c1)
00:00.5 RAM memory: nVidia Corporation: Unknown device 01ef (rev c1)
00:01.0 ISA bridge: nVidia Corporation nForce2 ISA Bridge (rev a4)
00:01.1 SMBus: nVidia Corporation nForce2 SMBus (MCP) (rev a2)
00:02.0 USB Controller: nVidia Corporation nForce2 USB Controller (rev a4)
00:02.1 USB Controller: nVidia Corporation nForce2 USB Controller (rev a4)
00:02.2 USB Controller: nVidia Corporation nForce2 USB Controller (rev a4)
00:05.0 Multimedia audio controller: nVidia Corporation nForce MultiMedia audio [Via VT82C686B] (rev a2)
00:06.0 Multimedia audio controller: nVidia Corporation nForce2 AC97 Audio Controler (MCP) (rev a1)
00:08.0 PCI bridge: nVidia Corporation: Unknown device 006c (rev a3)
00:09.0 IDE interface: nVidia Corporation nForce2 IDE (rev a2)
00:1e.0 PCI bridge: nVidia Corporation nForce2 AGP (rev c1)
01:07.0 Ethernet controller: Realtek Semiconductor Co., Ltd. RTL-8139/8139C/8139C+ (rev 10)
01:09.0 USB Controller: VIA Technologies, Inc. USB (rev 50)
01:09.1 USB Controller: VIA Technologies, Inc. USB (rev 50)
01:09.2 USB Controller: VIA Technologies, Inc. USB 2.0 (rev 51)
01:0b.0 RAID bus controller: CMD Technology Inc Silicon Image SiI 3112 SATARaid Controller (rev 02)
03:00.0 VGA compatible controller: nVidia Corporation: Unknown device 0342 (rev a1)

lsdev输出:
Device            DMA   IRQ  I/O Ports
------------------------------------------------
8139too                      9000-90ff
Audio                    11
cascade             4     2
CMD                          9c00-9c07 a000-a003 a400-a407 a800-a803 ac00-ac0f
dma                          0080-008f
dma1                         0000-001f
dma2                         00c0-00df
ehci_hcd                  9
fpu                          00f0-00ff
ide0                     14  01f0-01f7 03f6-03f6 f000-f007
ide1                     15  0170-0177 0376-0376 f008-f00f
keyboard                  1  0060-006f
Mouse                    12
nVidia                       c000-c07f c400-c41f c800-c8ff f000-f00f
nvidia                    5
NVIDIA                       c000-c03f c800-c8ff
parport0                     0378-037a
PCI                          0cf8-0cff 9000-afff
pic1                         0020-003f
pic2                         00a0-00bf
Realtek                      9000-90ff
rtc                       8  0070-007f
serial                       02f8-02ff 03f8-03ff
timer                     0
timer0                       0040-0043
timer1                       0050-0053
usb-uhci                     9400-941f 9800-981f
vga+                         03c0-03df
VIA                          9400-941f 9800-981f

dmesg输出:
Linux version 2.4.31 (root@localhost.localdomain) (gcc version 3.2.2 20030222 (Red Hat Linux 3.2.2-5)) #4 一 7月 11 22:15:01 CST 2005
BIOS-provided physical RAM map:
BIOS-e820: 0000000000000000 - 000000000009f800 (usable)
BIOS-e820: 000000000009f800 - 00000000000a0000 (reserved)
BIOS-e820: 00000000000f0000 - 0000000000100000 (reserved)
BIOS-e820: 0000000000100000 - 000000003fff0000 (usable)
BIOS-e820: 000000003fff0000 - 000000003fff3000 (ACPI NVS)
BIOS-e820: 000000003fff3000 - 0000000040000000 (ACPI data)
BIOS-e820: 00000000fec00000 - 00000000fec01000 (reserved)
BIOS-e820: 00000000fee00000 - 00000000fee01000 (reserved)
BIOS-e820: 00000000ffff0000 - 0000000100000000 (reserved)
127MB HIGHMEM available.
896MB LOWMEM available.
On node 0 totalpages: 262128
zone(0): 4096 pages.
zone(1): 225280 pages.
zone(2): 32752 pages.
Kernel command line: ro root=LABEL=/ hdc=ide-scsi
ide_setup: hdc=ide-scsi
Initializing CPU#0
Detected 2205.016 MHz processor.
Console: colour VGA+ 80x25
Calibrating delay loop... 4404.01 BogoMIPS
Memory: 1033436k/1048512k available (1296k kernel code, 14688k reserved, 487k data, 124k init, 131008k highmem)
Dentry cache hash table entries: 131072 (order: 8, 1048576 bytes)
Inode cache hash table entries: 65536 (order: 7, 524288 bytes)
Mount cache hash table entries: 512 (order: 0, 4096 bytes)
Buffer cache hash table entries: 65536 (order: 6, 262144 bytes)
Page-cache hash table entries: 262144 (order: 8, 1048576 bytes)
CPU: L1 I Cache: 64K (64 bytes/line), D cache 64K (64 bytes/line)
CPU: L2 Cache: 512K (64 bytes/line)
Intel machine check architecture supported.
Intel machine check reporting enabled on CPU#0.
CPU:     After generic, caps: 0383fbff c1c3fbff 00000000 00000000
CPU:             Common caps: 0383fbff c1c3fbff 00000000 00000000
CPU: AMD Athlon(tm) XP 3200+ stepping 00
Enabling fast FPU save and restore... done.
Enabling unmasked SIMD FPU exception support... done.
Checking 'hlt' instruction... OK.
POSIX conformance testing by UNIFIX
mtrr: v1.40 (20010327) Richard Gooch (rgooch@atnf.csiro.au)
mtrr: detected mtrr type: Intel
PCI: PCI BIOS revision 2.10 entry at 0xfb410, last bus=3
PCI: Using configuration type 1
PCI: Probing PCI hardware
PCI: Probing PCI hardware (bus 00)
PCI: nForce2 C1 Halt Disconnect fixup
PCI: Using IRQ router default [10de/01e0] at 00:00.0
isapnp: Scanning for PnP cards...
isapnp: No Plug & Play device found
Linux NET4.0 for Linux 2.4
Based upon Swansea University Computer Society NET3.039
Initializing RT netlink socket
apm: BIOS version 1.2 Flags 0x07 (Driver version 1.16)
Starting kswapd
allocated 32 pages and 32 bhs reserved for the highmem bounces
VFS: Disk quotas vdquot_6.5.1
pty: 2048 Unix98 ptys configured
Serial driver version 5.05c (2001-07-08) with MANY_PORTS MULTIPORT SHARE_IRQ SERIAL_PCI ISAPNP enabled
ttyS00 at 0x03f8 (irq = 4) is a 16550A
ttyS01 at 0x02f8 (irq = 3) is a 16550A
Real Time Clock Driver v1.10f
Floppy drive(s): fd0 is 1.44M
FDC 0 is a post-1991 82077
NET4: Frame Diverter 0.46
RAMDISK driver initialized: 16 RAM disks of 4096K size 1024 blocksize
Uniform Multi-Platform E-IDE driver Revision: 7.00beta4-2.4
ide: Assuming 33MHz system bus speed for PIO modes; override with idebus=xx
NFORCE2: IDE controller at PCI slot 00:09.0
NFORCE2: chipset revision 162
NFORCE2: not 100% native mode: will probe irqs later
NFORCE2: BIOS didn't set cable bits correctly. Enabling workaround.
NFORCE2: BIOS didn't set cable bits correctly. Enabling workaround.
NFORCE2: 00:09.0 (rev a2) UDMA133 controller
    ide0: BM-DMA at 0xf000-0xf007, BIOS settings: hdaMA, hdbMA
    ide1: BM-DMA at 0xf008-0xf00f, BIOS settings: hdcMA, hddMA
hda: WDC WD800JB-00CRA1, ATA DISK drive
blk: queue c0316760, I/O limit 4095Mb (mask 0xffffffff)
hdc: _NEC DVD_RW ND-3540A, ATAPI CD/DVD-ROM drive
hdd: Pioneer DVD-ROM ATAPIModel DVD-121 0104, ATAPI CD/DVD-ROM drive
ide0 at 0x1f0-0x1f7,0x3f6 on irq 14
ide1 at 0x170-0x177,0x376 on irq 15
hda: attached ide-disk driver.
hda: host protected area => 1
hda: 156301488 sectors (80026 MB) w/8192KiB Cache, CHS=9729/255/63, UDMA(100)
Partition check:
hda: hda1 hda2 < hda5 hda6 hda7 >
ide: late registration of driver.
Initializing Cryptographic API
NET4: Linux TCP/IP 1.0 for NET4.0
IP Protocols: ICMP, UDP, TCP, IGMP
IP: routing cache hash table of 8192 buckets, 64Kbytes
TCP: Hash tables configured (established 262144 bind 65536)
Linux IP multicast router 0.06 plus PIM-SM
NET4: Unix domain sockets 1.0/SMP for Linux NET4.0.
RAMDISK: Compressed image found at block 0
Freeing initrd memory: 142k freed
VFS: Mounted root (ext2 filesystem).
Journalled Block Device driver loaded
kjournald starting.  Commit interval 5 seconds
EXT3-fs: mounted filesystem with ordered data mode.
Freeing unused kernel memory: 124k freed
usb.c: registered new driver usbdevfs
usb.c: registered new driver hub
PCI: Setting latency timer of device 00:02.0 to 64
usb-ohci.c: USB OHCI at membase 0xf884b000, IRQ 5
usb-ohci.c: usb-00:02.0, nVidia Corporation nForce2 USB Controller
usb.c: new USB bus registered, assigned bus number 1
hub.c: USB hub found
hub.c: 3 ports detected
PCI: Setting latency timer of device 00:02.1 to 64
usb-ohci.c: USB OHCI at membase 0xf884d000, IRQ 11
usb-ohci.c: usb-00:02.1, nVidia Corporation nForce2 USB Controller (#2)
usb.c: new USB bus registered, assigned bus number 2
hub.c: USB hub found
hub.c: 3 ports detected
PCI: Setting latency timer of device 00:02.2 to 64
ehci_hcd 00:02.2: nVidia Corporation nForce2 USB Controller
ehci_hcd 00:02.2: irq 9, pci mem f8856000
usb.c: new USB bus registered, assigned bus number 3
PCI: cache line size of 64 is not supported by device 00:02.2
ehci_hcd 00:02.2: USB 2.0 enabled, EHCI 1.00, driver 2003-Dec-29/2.4
hub.c: USB hub found
hub.c: 6 ports detected
ehci_hcd 01:09.2: VIA Technologies, Inc. USB 2.0
ehci_hcd 01:09.2: irq 5, pci mem f8858000
usb.c: new USB bus registered, assigned bus number 4
ehci_hcd 01:09.2: USB 2.0 enabled, EHCI 0.95, driver 2003-Dec-29/2.4
hub.c: USB hub found
hub.c: 4 ports detected
usb-uhci.c: $Revision: 1.275 $ time 21:12:40 Jul 11 2005
usb-uhci.c: High bandwidth mode enabled
usb-uhci.c: USB UHCI at I/O 0x9400, IRQ 5
usb-uhci.c: Detected 2 ports
usb.c: new USB bus registered, assigned bus number 5
hub.c: USB hub found
hub.c: 2 ports detected
usb-uhci.c: USB UHCI at I/O 0x9800, IRQ 11
usb-uhci.c: Detected 2 ports
usb.c: new USB bus registered, assigned bus number 6
hub.c: USB hub found
hub.c: 2 ports detected
usb-uhci.c: v1.275:USB Universal Host Controller Interface driver
usb.c: registered new driver hiddev
usb.c: registered new driver hid
hid-core.c: v1.8.1 Andreas Gal, Vojtech Pavlik <vojtech@suse.cz>
hid-core.c: USB HID support drivers
mice: PS/2 mouse device common for all mice
EXT3 FS 2.4-0.9.19, 19 August 2002 on ide0(3,6), internal journal
Adding Swap: 1293192k swap-space (priority -1)
hub.c: new USB device 00:02.1-1, assigned address 2
input: USB HID v1.10 Joystick [GreenAsia Inc.    USB Joystick     ] on usb2:2.0
hdd: attached ide-cdrom driver.
hdd: ATAPI 40X DVD-ROM drive, 256kB Cache, UDMA(66)
Uniform CD-ROM driver Revision: 3.12
SCSI subsystem driver Revision: 1.00
hdc: attached ide-scsi driver.
scsi0 : SCSI host adapter emulation for IDE ATAPI devices
  Vendor: _NEC      Model: DVD_RW ND-3540A   Rev: 1.01
  Type:   CD-ROM                             ANSI SCSI revision: 02
parport0: PC-style at 0x378 (0x778) [PCSPP,TRISTATE]
parport0: irq 7 detected
Attached scsi CD-ROM sr0 at scsi0, channel 0, id 0, lun 0
sr0: scsi3-mmc drive: 48x/48x writer cd/rw xa/form2 cdda tray
ip_tables: (C) 2000-2002 Netfilter core team
8139too Fast Ethernet driver 0.9.26
divert: allocating divert_blk for eth0
eth0: RealTek RTL8139 at 0xf8968000, 00:0a:eb:83:27:28, IRQ 5
eth0:  Identified 8139 chip type 'RTL-8100B/8139D'
eth0: link up, 100Mbps, full-duplex, lpa 0x45E1
spurious 8259A interrupt: IRQ7.
parport0: PC-style at 0x378 (0x778) [PCSPP,TRISTATE]
parport0: irq 7 detected
lp0: using parport0 (polling).
lp0: console ready
NVRM: loading NVIDIA Linux x86 NVIDIA Kernel Module  1.0-7664  Wed May 25 10:47:55 PDT 2005
NVRM: loading NVIDIA Linux x86 NVIDIA Kernel Module  1.0-7664  Wed May 25 10:47:55 PDT 2005
Linux agpgart interface v0.99 (c) Jeff Hartmann
agpgart: Maximum main memory to use for agp memory: 941M
agpgart: unsupported bridge
agpgart: no supported devices found.
Linux agpgart interface v0.99 (c) Jeff Hartmann
agpgart: Maximum main memory to use for agp memory: 941M
agpgart: unsupported bridge
agpgart: no supported devices found.
Intel 810 + AC97 Audio, version 1.01, 21:11:27 Jul 11 2005
PCI: Setting latency timer of device 00:06.0 to 64
i810: NVIDIA nForce Audio found at IO 0xc000 and 0xc800, MEM 0x0000 and 0x0000, IRQ 11
i810_audio: Audio Controller supports 6 channels.
i810_audio: Defaulting to base 2 channel mode.
i810_audio: Resetting connection 0
ac97_codec: AC97 Audio codec, id: ALG32 (ALC650)
i810_audio: AC'97 codec 0, new EID value = 0x05c7
i810_audio: AC'97 codec 0, DAC map configured, total channels = 6
Intel 810 + AC97 Audio, version 1.01, 21:11:27 Jul 11 2005
PCI: Setting latency timer of device 00:06.0 to 64
i810: NVIDIA nForce Audio found at IO 0xc000 and 0xc800, MEM 0x0000 and 0x0000, IRQ 11
i810_audio: Audio Controller supports 6 channels.
i810_audio: Defaulting to base 2 channel mode.
i810_audio: Resetting connection 0
ac97_codec: AC97 Audio codec, id: ALG32 (ALC650)
i810_audio: AC'97 codec 0, new EID value = 0x05c7
i810_audio: AC'97 codec 0, DAC map configured, total channels = 6
发表于 2005-7-12 22:51:08 | 显示全部楼层
兄弟这样,把sata的支持直接编入内核。另外scsi也要加进去。
试试?


最好用最新的linux-2.6.12.2的内核。比较好编译。。

<*> SCSI device support                                                                           │ │
  │ │                                 
  •    legacy /proc/scsi/ support                                                                  │ │
      │ │                                 ---   SCSI support type (disk, tape, CD-ROM)                                                      │ │
      │ │                                 <*>   SCSI disk support                                                                           │ │
      │ │                                 < >   SCSI tape support                                                                           │ │
      │ │                                 < >   SCSI OnStream SC-x0 tape support                                                            │ │
      │ │                                 <*>   SCSI CDROM support                                                                          │ │
      │ │                                 
  •      Enable vendor-specific extensions (for SCSI CDROM)                                        │ │
      │ │                                 <*>   SCSI generic support                                                                        │ │
      │ │                                 ---   Some SCSI devices (e.g. CD jukebox) support multiple LUNs                                   │ │
      │ │                                 
  •    Probe all LUNs on each SCSI device                                                          │ │
      │ │                                 
  •    Verbose SCSI error reporting (kernel size +=12K)                                            │ │
      │ │                                 [ ]   SCSI logging facility                                                                       │ │
      │ │                                       SCSI Transport Attributes  --->                                                             │ │
      │ │                                       SCSI low-level drivers  --->                                                                │ │
      │ │                                       PCMCIA SCSI adapter support  --->     

       
    在SCSI low-level drivers  --->      中看看有没有自己硬盘对应的,如果没有默   认就好。

       ATA/ATAPI/MFM/RLL support  --->        
    这里面的东西也要选一选 。如果是支持sata的,不要用模块。直接置入内核比较好。
  • 回复 支持 反对

    使用道具 举报

    发表于 2005-7-12 23:14:54 | 显示全部楼层
    我刚升到2.6.11-10,现在鼠标不能用,显卡也不对
    编译新内核只是为了声卡AD1888的:(

    北南大哥,我刚开始用redhat9.0,唯一问题就是声卡没声音
    查过你的帖子有兄弟和我一样的问题
    编译内核对菜鸟还是有很困难
    不知道哪个版本的LINUX对硬件支持好点?
    回复 支持 反对

    使用道具 举报

    发表于 2005-7-12 23:29:42 | 显示全部楼层
    如果不怕累,再下载一个Fedora core 4,刚出来不久的。

    鼠标也不难。比如USB的,要把USB 有关的加进去,其实内核不难。多尝试,多看他的选项说明就好办。
    <*> Support for Host-side USB                                                                                                  │ │
      │ │    [ ]   USB verbose debug messages                                                                                               │ │
      │ │    ---   Miscellaneous USB options                                                                                                │ │
      │ │   
  •    USB device filesystem                                                                                                    │ │
      │ │    [ ]   Enforce USB bandwidth allocation (EXPERIMENTAL)                                                                          │ │
      │ │   
  •    Dynamic USB minor allocation (EXPERIMENTAL)   
    --- USB Input Devices                                                                                                          │ │
      │ │    <*> USB Human Interface Device (full HID) support                                                                              │ │
      │ │   
  •    HID input layer support                                                                                                  │ │
      │ │    [ ]     Force feedback support (EXPERIMENTAL)                                                                                  │ │
      │ │   
  •    /dev/hiddev raw HID device support                                                                                       │ │
      │ │    < > Aiptek 6000U/8000U tablet support                                                                                          │ │
      │ │    < > Wacom Intuos/Graphire tablet support                                                                                       │ │
      │ │    < > KB Gear JamStudio tablet support                                                                                           │ │
      │ │    < > Griffin PowerMate and Contour Jog support                                                                                  │ │
      │ │    <M> MicroTouch USB Touchscreen Driver                                                                                          │ │
      │ │    < > eGalax TouchKit USB Touchscreen Driver                                                                                     │ │
      │ │    < > X-Box gamepad support                                                                                                      │ │
      │ │    < > ATI / X10 USB RF remote control   


    显示卡是NV的。。
      
  • Support for frame buffer devices   

       <*>   nVidia Riva support  

    最重要的是编了内核后,如果原来是有NV驱动安装的,还要重新安装。
  • 回复 支持 反对

    使用道具 举报

    发表于 2005-7-12 23:56:11 | 显示全部楼层
    在编译的时候我注意到driver/net/3c509出现过警告提示
    还有些没仔细看,基本都是driver/下的
    现在启动的时候有很多失败:(
    是不是和编译时出现的提示有关?

    我是用这些命令,你那种make kernel install时就出错了
    # cd /usr/src/linux
    # make dep -----链接程序代码与函数库.
    # make clean -----删除不必要的模块和文件.
    # make bzImage -----开始编译系统内核.
    # make modules -----开始编译外挂模块.
    # make modules_install -----安装编译完成的模块.
    # su -
    # /sbin/depmod -a -----创建模块的链接.
    回复 支持 反对

    使用道具 举报

     楼主| 发表于 2005-7-13 00:12:34 | 显示全部楼层
    Post by 北南南北
    兄弟这样,把sata的支持直接编入内核。另外scsi也要加进去。
    试试?


    最好用最新的linux-2.6.12.2的内核。比较好编译。。

    <*> SCSI device support                                                                           │ │
      │ │                                 
  •    legacy /proc/scsi/ support                                                                  │ │
      │ │                                 ---   SCSI support type (disk, tape, CD-ROM)                                                      │ │
      │ │                                 <*>   SCSI disk support                                                                           │ │
      │ │                                 < >   SCSI tape support                                                                           │ │
      │ │                                 < >   SCSI OnStream SC-x0 tape support                                                            │ │
      │ │                                 <*>   SCSI CDROM support                                                                          │ │
      │ │                                 
  •      Enable vendor-specific extensions (for SCSI CDROM)                                        │ │
      │ │                                 <*>   SCSI generic support                                                                        │ │
      │ │                                 ---   Some SCSI devices (e.g. CD jukebox) support multiple LUNs                                   │ │
      │ │                                 
  •    Probe all LUNs on each SCSI device                                                          │ │
      │ │                                 
  •    Verbose SCSI error reporting (kernel size +=12K)                                            │ │
      │ │                                 [ ]   SCSI logging facility                                                                       │ │
      │ │                                       SCSI Transport Attributes  --->                                                             │ │
      │ │                                       SCSI low-level drivers  --->                                                                │ │
      │ │                                       PCMCIA SCSI adapter support  --->     

       
    在SCSI low-level drivers  --->      中看看有没有自己硬盘对应的,如果没有默   认就好。

       ATA/ATAPI/MFM/RLL support  --->        
    这里面的东西也要选一选 。如果是支持sata的,不要用模块。直接置入内核比较好。



  • 这些东西都加上了,而且我没有用模块,都是直接编译进内核,dmesg和lsdev中已经显示了可以识别我的silicon Image 3112 SATA Controller,lspci也有一个CMD 9c00-9c07 a000-a003 a400-a407 a800-a803 ac00-ac0f,说明硬盘控制器已经正确加载了,但是就是找不到hde或者是sda设备,fdisk -l也只是显示了PATA硬盘,难道真要用2.6的kernel不成?
    回复 支持 反对

    使用道具 举报

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

    本版积分规则

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