機(jī)電之家資源網(wǎng)
單片機(jī)首頁(yè)|單片機(jī)基礎(chǔ)|單片機(jī)應(yīng)用|單片機(jī)開(kāi)發(fā)|單片機(jī)文案|軟件資料下載|音響制作|電路圖下載 |嵌入式開(kāi)發(fā)
培訓(xùn)信息
贊助商
深入解剖 LILO
深入解剖 LILO
 更新時(shí)間:2009-8-12 16:57:59  點(diǎn)擊數(shù):0
【字體: 字體顏色
前面的文章我們講述了 LILO 的配置,本文我們將深入底層來(lái)講述LILO 的技術(shù)細(xì)節(jié),也將告訴讀者怎樣
去掉LILO 以及重新安裝LILO。
前文我們講述了LILO 配置的靈活性,本文我們將講述LILO 的內(nèi)部技術(shù)細(xì)節(jié)以及啟動(dòng)時(shí)的主要操作及其功
能,以幫助我們調(diào)整LILO 的安裝。LILO 最大的好處就是它獨(dú)立于文件系統(tǒng),可以啟動(dòng)各種操作系統(tǒng):
從Microsoft、OS/2、SCO Unix、Unixware、PC-DOS到Linux等等。

LILO 能處理最多16個(gè)不同的映像,LILO 寫(xiě)入MBR 時(shí)就作為主引導(dǎo)程序,寫(xiě)入擴(kuò)展分區(qū)的引導(dǎo)扇區(qū)時(shí)就是
第二引導(dǎo)程序。采用LILO,可以有多種組合方式啟動(dòng)系統(tǒng)。

我們先來(lái)看看引導(dǎo)過(guò)程,硬盤(pán)上的數(shù)據(jù)被準(zhǔn)確的分配到對(duì)應(yīng)的“磁道”和“扇區(qū)”,硬盤(pán)上的數(shù)據(jù)分布首
先是引導(dǎo)扇區(qū),然后是文件分配表(FAT),接下來(lái)就是數(shù)據(jù)區(qū)。

硬盤(pán)分區(qū)時(shí),被分為基本分區(qū)和擴(kuò)展分區(qū);痉謪^(qū)可以作為引導(dǎo)分區(qū),可以通過(guò)任何引導(dǎo)程序標(biāo)記為可
引導(dǎo)。擴(kuò)展分區(qū)可以分成好幾個(gè)邏輯分區(qū),很多的BIOS 不允許從邏輯分區(qū)啟動(dòng)。

Linux 最多支持4個(gè)基本分區(qū),如果需要額外的分區(qū),那么就要其中的一個(gè)基本分區(qū)變成擴(kuò)展分區(qū),然后在
擴(kuò)展分區(qū)里面,劃分邏輯分區(qū)。很重要的一點(diǎn)是有些邏輯分區(qū)的分區(qū)表不能被識(shí)別為設(shè)備的第一塊。分區(qū)
表通常存放于分區(qū)的引導(dǎo)扇區(qū),而且,通常只有整個(gè)盤(pán)的分區(qū)啟動(dòng)扇區(qū)用作引導(dǎo)扇區(qū),稱(chēng)為主引導(dǎo)記錄(MBR)。

LILO 可以用于以下情形:

1、第一硬盤(pán)的引導(dǎo)扇區(qū)。
2、軟盤(pán)的引導(dǎo)扇區(qū)。
3、位于第一硬盤(pán)的Linux 文件系統(tǒng)分區(qū)上的引導(dǎo)扇區(qū)。

LILO 不能用于以下情形:

1、交換分區(qū)。
2、擴(kuò)展分區(qū)中的邏輯分區(qū)的引導(dǎo)扇區(qū)。

所以,如果你在第二硬盤(pán)上安裝了Linux ,而不能啟動(dòng)的話,可以采取在第一硬盤(pán)上建立 /boot 的辦法來(lái)解決。

引導(dǎo)加載過(guò)程由很多程序組成,我們先來(lái)看看LILO 安裝
時(shí)的各種不同程序:

MAP 安裝程序:這個(gè)程序把LILO 的文件放到合適的位置
并記錄這些信息(會(huì)在LILO 啟動(dòng)時(shí)用到),這個(gè)程序就是
/sbin/lilo ,每次配置文件有改動(dòng)或者有新內(nèi)核時(shí),需要重新運(yùn)行一遍。

/boot/*.*:其他LILO 啟動(dòng)時(shí)需要的文件存放在 /boot 目錄下,map 文件是十分重要的,map 安裝程序把新內(nèi)
核的位置記錄到這個(gè)文件。

引導(dǎo)加載程序:這個(gè)程序無(wú)需多言是最重要的部件了。它被
BIOS 調(diào)入內(nèi)存,然后調(diào)用內(nèi)核或者其他操作系統(tǒng)的引導(dǎo)扇區(qū)。

包含引導(dǎo)加載程序第一部分的引導(dǎo)扇區(qū)被調(diào)入內(nèi)存,然后調(diào)用引導(dǎo)加載程序的第二部分,一般位于文件
 /boot/boot.b,接下來(lái)就啟動(dòng)內(nèi)核。

如果從可引導(dǎo)軟盤(pán)啟動(dòng)的話,BIOS 把軟盤(pán)的第一個(gè)扇區(qū)調(diào)入內(nèi)存,一般,這個(gè)扇區(qū)包含一段程序來(lái)啟動(dòng)對(duì)應(yīng)的
操作系統(tǒng)。和軟盤(pán)一樣,如果LILO 寫(xiě)入MBR ,那么,MBR 就被調(diào)入內(nèi)存,執(zhí)行對(duì)應(yīng)的操作,給用戶(hù)提示選擇需
要引導(dǎo)的操作系統(tǒng)。具體地說(shuō),MBR 的頭 446 個(gè)字節(jié)由引導(dǎo)加載程序利用,剩余的64 字節(jié)是分區(qū)表信息。還剩
下的兩個(gè)字節(jié)就是分區(qū)激活標(biāo)志“55 AA” 了。

在軟盤(pán)上備份 MBR 信息:

bash# dd if=/dev/hda of=/dev/fd0 bs=512 count=1 

恢復(fù):(萬(wàn)一的情況下)

bash# dd if=/dev/fd0 of=/dev/hda bs=446 count=1 

刪除 LILO:

c:> fdisk /mbr 

恢復(fù) LILO:

重新安裝 Windows 以后,就會(huì)把LILO 干掉。無(wú)論什么原因
我們都應(yīng)該知道怎樣恢復(fù)LILO。

最好手頭有一張安裝 CD ,這年頭,干凈并且確實(shí)好用的
軟盤(pán)太少了。所以不推薦你使用軟盤(pán)。當(dāng)然,如果你認(rèn)為
你的軟盤(pán)質(zhì)量可靠,那么可以從CD-ROM
上建立應(yīng)急啟動(dòng)盤(pán):

dd if=/cdrom/disks/rescue of=/dev/fd0

在 DOS 下面,采用:

rawrite image-name a:

也可以在 www.bootdisk.com上下載一個(gè),按照說(shuō)明制作一張啟動(dòng)磁盤(pán)。

如果從 CD 啟動(dòng)的話,各個(gè)不同的Linux 版本有不同的方法進(jìn)入應(yīng)急狀態(tài)。Red Hat 啟動(dòng)后有一個(gè)應(yīng)急模式,
SuSE 的話,需要先進(jìn)入安裝界面,然后按Ctrl+Alt+Fn 鍵找到shell 提示符,可以在這個(gè)提示符下來(lái)恢復(fù)。

下面介紹恢復(fù)步驟:

首先建立掛接點(diǎn):
mkdir mount 

然后把丟失的 Linux 掛接到這里:
mount /dev/hda6 mount 

如果 /boot 位于另外的分區(qū),
需要把他掛接到 mount/boot 目錄下,例如:
mount /dev/hda1 mount/boot 

使用 chroot 命令,把 mount 作為根目錄,cd /boot 
命令實(shí)際上進(jìn)入的是 "mount/boot" 目錄:

chroot mount 

運(yùn)行 /sbin/lilo ,這樣就把 LILO 安裝回了 MBR,重新啟動(dòng)就會(huì)看到 LILO 提示符回來(lái)了。

  • 上一篇: 在沒(méi)有CD-ROM 驅(qū)動(dòng)器的筆記本電腦上安裝Linux
  • 下一篇: 實(shí)例講解 LILO 的配置和使用
  • 發(fā)表評(píng)論   告訴好友   打印此文  收藏此頁(yè)  關(guān)閉窗口  返回頂部
    熱點(diǎn)文章
     
    推薦文章
     
    相關(guān)文章
    網(wǎng)友評(píng)論:(只顯示最新5條。)
    關(guān)于我們 | 聯(lián)系我們 | 廣告合作 | 付款方式 | 使用幫助 | 機(jī)電之家 | 會(huì)員助手 | 免費(fèi)鏈接

    點(diǎn)擊這里給我發(fā)消息66821730(技術(shù)支持)點(diǎn)擊這里給我發(fā)消息66821730(廣告投放) 點(diǎn)擊這里給我發(fā)消息41031197(編輯) 點(diǎn)擊這里給我發(fā)消息58733127(審核)
    本站提供的機(jī)電設(shè)備,機(jī)電供求等信息由機(jī)電企業(yè)自行提供,該企業(yè)負(fù)責(zé)信息內(nèi)容的真實(shí)性、準(zhǔn)確性和合法性。
    機(jī)電之家對(duì)此不承擔(dān)任何保證責(zé)任,有侵犯您利益的地方請(qǐng)聯(lián)系機(jī)電之家,機(jī)電之家將及時(shí)作出處理。
    Copyright 2007 機(jī)電之家 Inc All Rights Reserved.機(jī)電之家-由機(jī)電一體化網(wǎng)更名-聲明
    電話:0571-87774297 傳真:0571-87774298
    杭州濱興科技有限公司提供技術(shù)支持

    主辦:杭州市高新區(qū)(濱江)機(jī)電一體化學(xué)會(huì)
    中國(guó)行業(yè)電子商務(wù)100強(qiáng)網(wǎng)站

    網(wǎng)站經(jīng)營(yíng)許可證:浙B2-20080178-1