CRUX2.6安裝經驗--蛋疼的第一次內核編譯

    好吧,華工的兄弟姐妹們,也許某天你們會百度到這裏來,沒錯,吳一民教授的操作系統內核的課就是要求自己虛擬機安裝一個CRUX2.6,還要自己編譯內核.隨便百度,CRUX2.6估計國內用的人不多.很多問題都是百度不到你要的結果的,請使用google針對錯誤提示進行搜索.我自己也是嘗試了n久才把問題解決了.寫下來當作是經驗介紹吧.

    CRUX的Handbook網址 http://crux.nu/Main/Handbook2-6#ntoc11

    下面是一些注意問題:

1.我使用的是VMWare WorkStation6.5版本,估計7.0變化也不大,在創建新的虛擬機的時候,建議使用IDE的硬盤形式,不要使用SCSI的.主要是後面內核編譯時要集成進硬盤驅動,我還未在SCSI下嘗試過,所以下面的經驗主要是基於IDE的.

2.如果不清楚你是用了什麼類型的硬盤形式,用fdisk -l查看,/dev/hda是IDE,/dev/sda是SCSI,大小2G最好,最少不能少於1.6G

3.光盤引導進入,fdisk分區,mkfs格式化不細說,不懂自己百度,需要注意的是,你最好記住文件系統格式你用的是什麼(ext2,ext3等)

4.按照Handbook的流程(掛載分區,設置swap分區等),mount之後輸入setup,此時注意的一點是,除了核心的東西,還要把grub包也加進來(除非你想用lilo引導,吳老師推薦用grub- -),如圖,你可以選擇單純的grub包或者這個opt目錄下的所有軟件包,選擇所有的opt軟件在那一行上面按空格即可

5.當完成這些之後就setup-chroot,進入bash.關於修改/etc/fstab,/etc/rc.d/net, /etc/hosts,/etc/resolv.conf文件後面再改,現在暫時不急.先使用lspci | grep IDE查看你的IDE硬盤的型號,如圖,後面選擇驅動的時候有用.

6.進入內核源代碼目錄,make menuconfig,這一步相當重要.注意,對於文件系統,如你使用ext3,那麼驅動應該集成進內核當中而不是作爲模塊,區別在於選項面括號內<*>表示集成進內核,<M>表示作爲模塊.對於IDE,除了基本的IDE驅動需要集成之後,還有一個針對特定硬盤型號的驅動,如圖(Device Drivers ---> ATA/ATAPI/MFM/RLL support --->),注意選上PCI IDE chip support等,此外在File system下,把你的文件系統的驅動也集成進內核,如果是ext2就確保ext2前面括號是<*>

7.之後的按照Handbook的流程去做,grub引導建議使用Manual setup的方式,不要用自動方式,Handbook也有,附上fstab的配置

主要是加上兩行:

/dev/hda1 / ext4 defaults 0 1    (按照你的文件系統)

/dev/hda2 swap swap defaults 0 0     (按照你的交換分區)

8.錯誤提示:

VFS: Cannot open root device "dev=hda1" or unknow-block(0,0)
Please append a correct "root=" boot option
Kernel Panic - not syncing: VFS: Unable to mount root fs on unknow-block(0,0)

這個一般是由於硬盤驅動沒有集成進內核導致的.

9.最後的大招,實在不行把所有IDE的驅動都集成進去.就是編譯的時候慢一點而已.-____-


發佈了37 篇原創文章 · 獲贊 4 · 訪問量 19萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章