歡迎您光臨本站 註冊首頁

SLES9安裝總結—No root device found:exiting to /bin/sh

←手機掃碼閱讀     火星人 @ 2014-03-29 , reply:0

Notes:安裝SLES(Suse Linux Enterprise Server)前先打開安裝盤,搜索「kernel」,看其版本是否與想要的版本相符(通常為2.6.5-7.97)。另,SLES SP3補丁中kernel為2.6.5-7.244。

1、SLES9安裝過程中格式化硬碟死機問題

(1)現象描述
按常遠見方式安裝,多數情況下會出現格式化LINUX分區后硬碟燈長亮,安裝過程無法繼續的問題,無論等多久。據說測試部的解決方法就是不斷換電腦,一般要換四五台,碰巧了才能裝上。我就沒碰巧,換了六七台也不行。

(2)原因分析
具體原因是,聯想開天M4000計算機用的是SATA介面的硬碟(「設備管理器」中IDE、SATA硬碟顯示的都是ATA/ATAPI控制器,Ultra ATA控制器,這種方式好像看不出來是啥介面),而LINUX默認使用IDE介面的驅動程序,所以不用安全模式就是裝不上。

(3) 解決方法
偶然發現,在安裝界面上選800*600解析度,同時用Safe Settings模式安裝就可以繼續進行下去。

2、如何打補丁?
在光碟機中放入SP3-CD1,打開YaST | Software | Patch CD Update,按提示操作即可。

3、SLES9打補丁不良影響之一,打補丁結束,系統丟失問題。

(1)現象描述
打補丁SP3后重啟系統,出現如下提示:
QUOTE:
……

RAMDISK:Compressed image found at block 0

VFS:Mounted root(ext2 filesystem)

Starting udev

Creating devices

Loading kernel/drivers/scsi/scsi_mod.ko

SCSI subsystem initialized

Loading kernel/drivers/scsi/sd_mod.ko

Loading kernel/drivers/scsi/libata.ko

Loading kernel/drivers/scsi/ata_piix.ko

PCI:Found IRQ 11 for device 0000:00:1f.2

PCI:Sharing IRQ 11 with 0000:00:1f.3

PCI:Sharing IRQ 11 with 0000:01:02.0

Ata:0x170 IDE port busy

Ata:SATA max UDMA/133 cmd 0xF0 ctl 0x3F6 bmdma 0xF0000 irq 14

Ata1 dev 0 ata max UDMA/133,156301488 sectors

Ata1 dev 0 configured for UDMA/133

SCSI0:ata_pixx

Vendor: ATA Model WDC WD800BD-88JM Rev :05.0

Type:Direct-Access ANSI SCSI revision:05

SCSI device sda:156301488 512-byte hdwr sectors(80026M)

SCSI device sda:device cache:write back

Sda:sda1 sda2

Attached scsi disk sda at scsi0,channel 0,id0 iwn0

Loading kernel/fs/jbd/jbd.ko

Loading kernel/fs/ext3/ext3.ko

Waiting for device /dev/hda8 to appear:……not found… device nodes:

Console disk fb0 full input kmem kmsg loop0 loop1 loop2 loop3 loop4 loop5 loop6 loop7 md0 mem null port psaux ptmx ptya0 ptya1 ptya2 ptya3 ptya4 ptya5 ptya6 ptya7 ptya8 ptya9 ptyaa ptyab ptyac ptyad ptyae ptyaf ptyb0 ptyb1……

No root device found:exiting to /bin/sh

Sh:can』t access tty:job control turned off

然後就什麼也沒有了,系統丟失,從屏幕提示看,此時已經過了grub,處於linux載入過程中,想修複比較麻煩。

(2)問題分析
經網上搜索,得到各種答案,有的說硬碟已滿,有的建議手工修復等等,經嘗試各種方法均失敗,只有如下一條最終奏效,

Talk about a shot in the dark... but here goes nothing. I'm going to make two assumptions, if either is wrong, forgive the wasted bandwidth and ignore the rest.

Are you using sata drive(s) and in your install before updates were they mounted as /dev/hdx?

I have heard that in some distros (don't know about sles) some kernel updates caused sata hard drives to be mounted as scsi devices where originally they were mounted as ide devices. Since I never really had the problem, I didn't read/persue the solutions very closely.

I seem to remember a suggestion to check the bios and set the sata drives as legacy or something like that in order to force the os to mount as regular ide type devices.

I also recall a suggestion to change /dev/hdx references in grub and fstab to /dev/sdx (might make a backup first).

As i said... a shot in the dark that I haven't tried/tested and may not even apply to you.

Good luck!

(3) 解決方法
上述資料中說的與上面貼的LINUX啟動失敗的屏幕提示非常吻合,經嘗試,第二種方法(更改grub及/etc/fstab為sdx)不奏效,於是到BIOS里更改SATA匯流排訪問方式:

Integrated peripherals | OnChip IDE Device [Press Enter] | On-Chip Serial ATA[Auto],改為SATA Only(SATA is operating in legacy mode)。

(4)修改BIOS的不良影響:
按上述方法修改BIOS,將導致光碟機不可用,包括自動引導功能(即使BIOS中first boot device選CDROM)。

4、 打補丁不良影響之二,grub無法解析配置文件,引導失敗。

(1)現象描述:
打補丁SP3后重啟系統,在grub界面出現如下提示:

…Parse error…

(2)原因分析:
這是由於打補丁過程中,更改了系統原來的grub配置文件/boot/grub/memu.lst導致。

CD啟動進入系統后發現,menu.lst已被改為如下內容:
QUOTE:
#Modified by YaST2.Last modification on Fri Mar 7 16:52:57 2008

Color white/blue black/light-gray

Default 0

Time out 8

Gfxmenu(null)/

###Don』t change this comment ? YaST2 identifier:Original name:linux###

Title Linux

Kernel(null)/ root=vga=0x314 selinux=0 splash=silent ide=nodma apm=off acpi=off barrier=off resume=/dev/hda7 elevator=cfq showopts

Initrd(null)/

###Don』t change this comment ? YaST2 identifier:Original name:windows###

……

註:插句題外話,進系統后解析度很難調,也不好確定到底是什麼顯卡及顯示器,但發現安裝時選的高解析度立刻就奏效,最終發現是通過kernel中的vga參數傳給內核的,這樣就覆蓋了系統中的/etc/X11/XFree86config中的顯示配置。

常見分析率對應的參數是,

vga=0x314 800*600
vga=0x317 1024*768
vga=0x31a 1280*1024
從上述內可知,引導位置都被更改為null了,導致grub無法找到系統所在的位置。

(3)解決方法:
把/boot/grub/menu.lst改為如下內容,重啟動系統即可:
QUOTE:
#Modified by YaST2.Last modification on Fri Mar 7 16:52:57 2008

Color white/blue black/light-gray

Default 0

Time out 8

Gfxmenu(hd0,7)/boot/message

###Don』t change this comment ? YaST2 identifier:Original name:linux###

Title Linux

Kernel(hd0,7)/boot/vmlinuz root=vga=0x314 selinux=0 splash=silent ide=nodma apm=off acpi=off barrier=off resume=/dev/hda7 elevator=cfq showopts

Initrd(hd0,7)/boot/initrd

###Don』t change this comment ? YaST2 identifier:Original name:windows###

……

上述內容中「(hd0,7)」為本PC中SLES的安裝位置,讀者在其他PC上安裝時,請根據具體情況修改。

[火星人 ] SLES9安裝總結—No root device found:exiting to /bin/sh已經有725次圍觀

http://coctec.com/docs/linux/show-post-192765.html