歡迎來到Linux教程網
Linux教程網
Linux教程網
Linux教程網
Linux教程網 >> Linux綜合 >> Linux資訊 >> 更多Linux >> 如何在大硬盤上安裝 Linux

如何在大硬盤上安裝 Linux

日期:2017/2/27 9:42:48   编辑:更多Linux
  文 檔 名: 如何在大硬盤上安裝 Linux 作 者: Rocky S. Lee E - mail: [email protected] 發布日期: 2000 年 1 月 5 日 ================================== 許可證: 本文檔的發布遵循 DGPL, 任何人有權免費獲得, 閱覽, 轉載和發布本文檔, 不得用於任何形式的商業用途. 本文檔現在由 Rocky S. Lee 進行維護, 任何人可以對 其中存在的遺漏, 錯誤進行修改和指正. 修改者名單將列於 本文檔的作者名後. 簡短說明: 本文檔的目的在於介紹如何利用 LILO (LInux LOader) 對安裝在硬盤上 大於 1024 拄面 (一般來說是在大於 8 G 的硬盤分區上) 的 Linux 系統進行 正確和安全的引導. 如果您在閱都本文檔並按照本文檔介紹的方法後引導您的 Linux 系統時出了差錯或者發現本文介紹的方法有誤時, 請於作者聯系. 本文檔更加技術性的版本將在今後進行發布, 關注本文檔的 Linux 用戶 可以敬請留意以下站點: 華南木棉 BBS bbs.gznet.edu.cn 中國 Linux 論壇 www.linuxforum.net 西十八 BBS bbs.x18.scut.edu.cn 感謝 LinuxFarmer 在這篇文檔的創作上給予的無私幫助. 一. 問題的提出 在 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 的下面, 這樣它才 可以發揮作用. 四. 參考 LILO.CONF 中文手冊頁 中國 Linux 論壇 ZEO 翻譯




Copyright © Linux教程網 All Rights Reserved