歡迎來到Linux教程網
Linux教程網
Linux教程網
Linux教程網
您现在的位置: Linux教程網 >> UnixLinux >  >> Linux綜合 >> Linux資訊 >> 更多Linux

如何在大硬盤上安裝Linux

一. 問題的提出 在 IBM 80x86 系列 PC 機中, 引導系統時對硬盤的尋址是采用的基本輸入輸出系統 (BIOS) 根據 CMOS 中存儲的硬盤參數進行引導的. 讀取了硬盤的主引導記錄 (MBR, Main Boot Record) 後根據其內部存儲的數據或者定位到相應的分區而由該分區的引導扇區中的完成對該分區中系統的引導, 或者是直接從主引導分區中加載引導所需要的信息完成引導, 比如 LILO. 由於歷史的原因, 很多系統在引導時所使用的硬盤讀取方式仍然為舊的中斷調用 int 13h. 該中斷中對硬盤的尋址方式以三維的方式出現, 這三維分別為: 柱面, 磁頭, 磁道(CYLs, HEADs, SECs). 其中柱面號是保存在中央處理器(CPU)的 CX 寄存器的高 10 位 (bit) 中, 占用 10 個二進制位(bit). 這樣決定了其尋址范圍只能是 0 - 1023. 隨著現在計算機科學的發展, 硬盤容量的不斷擴大, 該中斷調用的局限也暴露出來. 這就是無法使用 LILO 引導安裝在1024柱面以後的 Linux 系統. 事實上, 並非完全不能. 對硬盤的訪問還可以采取另外一種形式, 就是使用線性地址空間, 不再使用柱面, 磁頭, 磁道的三維地址定位方式. 這也是使用 GNU / Linux 系統提供的 LILO 對安裝在硬盤任何位置的操作系統進行引導的關鍵. 二. 對 LILO 的分析 作為一個成熟的操作系統的引導系統, LILO 當然可以采用上面所說的兩種方式對硬盤中的系統進行引導. 當然一般的情況是使用常見的三維地址空間對硬盤進行訪問, 而對於一些比較特殊的系統是需要使用線性模式對硬盤進行訪問. 這時需要在要引導的系統對應的引導記錄上加上參數, 以便 LILO 能夠做出正確的處理. 一般在進行 Linux 系統安裝的時候, 執行到 LILO 的安裝這一步時, 會問你是否使用 linear 模式, 如果使用的話, 需要填上一些參數. 而這時的系統提示是問你是否有比較特殊的系統與 Linux 共存. 這個消息實際上迷惑了幾乎所有人. (注: 這裡所說的提示信息是 RedHat Linux 系列和一些在此基礎上進行改進版本的) 其實可以在這個時候加上一些特殊參數以實現一些特殊的功能.具體的什麼參數對應什麼功能已經超出了本文的范圍, 你可以參考 LILO 的手冊文檔, 該文檔已經由中國 Linux 論壇的 ZEO 翻譯成中文. 這裡只對其中的一個參數感興趣, 就是硬盤的 CHS 參數. 三. 問題的解決 如果你有一塊超過 8 G 的大硬盤, 並且需要把 Linux 安裝在比較靠後的位置, 可以在安裝的時候, 選擇 linear 模式, 並且給它加上硬盤參數.安裝時候的硬盤參數可以這樣寫: hd?=CYLs, HEADs, SECs 其中的大寫字母需要用實際的硬盤參數來替換, 這些參數可以從硬盤的標槍上查到, 也可以看看 BIOS 設置裡硬盤參數對應 LBA 模式的那一行. 問號是根據硬盤確定的, 實際使用的時候, 它可以是 a, b, c, d 四個字母中的一個. 比如:hda=1869,63,255這是 IBM 15.2G 硬盤的參數. 當然進入了 Linux 以後, 可以通過編輯 /etc/lilo.conf 加上這個文件, 然後運行一遍 lilo 達到同樣的目的. 下面是本人未加參數前的 lilo.conf的內容: boot = /dev/hda map = /boot/map install = /boot/boot.b prompt timeout = 50 image = /boot/vmlinuz label = linux root = /dev/hda1 initrd = /boot/initrd-2.2.12-20.img read-only 按照 linear 方式加入參數以後是如下格式: boot = /dev/hda map = /boot/map install = /boot/boot.b prompt linear <-----加進了這一行 timeout = 50 image = /boot/vmlinuz label = linux root = /dev/hda1 initrd = /boot/initrd-2.2.12-20.img read-only append = "hda=1869,63,255" <------加進了這一行 修改成這樣以後, 保存, 在命令提示符下打 lilo 命令, 當再次起動 Linux系統的時候, LILO 就按照線性模式對系統進行引導.除了在硬盤上尋址定位的方式不同以外, 對其他方面沒有什麼影響.上面只是舉個例子, 實際上是沒有什麼實用的, 但請注意, append參數是針對每個系統引導記錄的, 一定要放在 image 的下面或者是 other 的下面,這樣它才可以發揮作用.




Copyright © Linux教程網 All Rights Reserved