安裝第2塊scsi卡和新的磁碟陣列櫃後系統無法啟動

2021-04-12 17:32:49 字數 2817 閱讀 4926

系統是一台hp lh-6000,好像已經買了好多年,安裝的是redhat 7.2, 一直執行正常。由於原來的硬碟空間不夠,所以,給機器加了一張scsi卡,原來已經內建有一張(設定為raid5), 然後,插入乙個外接的磁碟陣列櫃。那知道,重新開機出現如下錯誤:

mounting root filesystem

mount: error 6 mounting ext3

pivotroot: pivot_root(/sysroot, /sysroot/initrd) failed: 2

freeing unused kernel memory: 240k freed

kernel panic: no init found. try passing init= option to kernel.

硬體在其它地方測試都是沒問題的,如果將外接的磁碟陣列櫃的關閉電源,重新開機又可以正常進入!

在網上查詢,一般「mount: error 6 mounting ext3」都是說沒有把ext3驅動編譯到核心,但,原來的硬碟,已經是ext3格式了,可能性不大。

中間走了些彎路。不過,最後,似乎還是解決了。

主要是,開機自檢的時候,先出現那種內建的scsi卡,然後,再檢到新插進去的那張卡,所以,開始沒想到「碟符」調亂了。

解決方法,很簡單,如下:

ixpub.net 的 nntp 提了另外一種解決方法:

1. rescue mode login

2. adjust the order in your /etc/modules.conf, (rhel4 改為:/etc/modprobe.conf)

3. rebuild initrd (參考:

)修改檔案以後,需要重新編譯initrd檔案,使得在啟動時該模組被正確插入到模組中。

# cp /boot/initrd-(kernel-version).img /boot/initrd-(kernel-version).img.bak

# mkinitrd -f initrd-$(uname -r).img $(uname -r)

例如

cp /boot/initrd-2.4.21-27.0.2.el**p.img /boot/initrd-2.4.21-27.0.2.el**p.img.bak

mkinitrd -v -f /boot/initrd-2.4.21-27.0.2.el**p.img 2.4.21-27.0.2.el**p

這個例子對乙個執行2.4.21-27.0.2**p核心的系統重建了initrd.img,根據自己系統的實際執行版本自行條成mkinitrd的引數(可以使用uname -r得到本機執行的核心版本號)。

* mkinitrd的-v引數可以顯示initrd.img中包括的所有模組。

* mkinitrd的-f引數可以強制覆蓋initrd.img中已有的同名模組。

或者參考這裡:外部儲存搶占sda裝置號的解決辦法http://www.chinaunix.net/jh/34/823626.html

linux系統載入儲存時,時常會出現本地的裝置好sda被儲存搶占,而本地變成sdb、sdc等。這種現象是因為連線外部儲存的介面卡的優先順序比本地的scsi/fc的介面卡的優先順序高造成的。出現這種情況os啟動時會有swap報錯,給系統管理帶來一些麻煩,但這個問題可以通過更改os的核心實現改變驅動順序,具體過程如下。

1、修改/etc/modules.conf將本地的scsi卡或者光纖卡放置在後加的板卡後面.

alias eth0 tg3

alias eth1 tg3

alias scsi_hostadapter1 aic79xx

alias scsi_hostadapter qla2300 #再有些情況下修改這個檔案就能解決問題。

2、如果修改modules.conf沒有解決問題,開始下面的操作:

# cp /boot/initrd-2.4.21-el.img /root/

# file initrd-2.4.21-el.img -----該檔案是乙個壓縮檔案;

# mv initrd-2.4.21-el.img initrd-2.4.21.img.gz

# gzip -d initrd-2.4.21-el.img.gz

# file initrd-2.4.21-el.img

initrd-2.4.21-el.img:linux rev 1.0 ext2 filesystem data(mount or unclean)

# mount initrd-2.4.21-el.img /mnt -o loop

#cd /mnt

#ls

bin dev etc lib linuxrc loopfs proc sbin sysroot

#vi linuxrc

echo "loading aic79xx.o module"

in**od /lib/aic79xx.o

echo "loading qla2300.o module"

in**od /lib/qla2300.o

變更aic79xx和qla2300的上下位置。然後儲存。

3、# cd /root

# umount /mnt

#gzip -9 initrd-2.4.21-el.img

#mv initrd-2.4.21-el.img.gz initrd-2.4.21-el.img

#cp initrd-2.4.21-el.img /boot

#reboot

4、fdisk -l 完成操作。

為XenServer增加第2塊硬碟的方法

有一台xenserver伺服器是2塊硬碟,第一塊硬碟差不多已經用完,第2塊硬碟還沒開始使用,為了更充分的利用硬碟資源,決定掛上第2塊硬碟。一 查詢自己的host uuid 1xe host list 二 查詢要掛載的分割槽 按路徑來查詢分割槽 1ls dev disk by path 上圖中,scs...

Linux學習 第2章 Linux系統安裝(2)

1 設定系統安裝映象 2 啟動客戶機 掛起 暫停當前映象,下次使用時恢復即可。比啟動更快速。在通電時不要強制關閉虛擬機器,系統可能崩潰,要先機或掛起。3 修改啟動順序 vmware啟動後滑鼠點入虛擬機器裡,按f2鍵啟動boot,在boot選項中通過 將 cd rom driver 移動到第乙個位置,...

第2章 準備 2 11安裝 deelx

回到目錄 白話c 2.11.安裝 deelx deelx 是乙個在 c 環境下的與 perl 相容的正規表示式解析引擎。是 regexlab 開展的乙個研究開發專案。雖然boost及wxwidgets都各自提供了強大的正規表示式解析引擎,不過這二者都相當龐大,如果僅僅需要處理正規表示式,deelx非...