小男孩‘自慰网亚洲一区二区,亚洲一级在线播放毛片,亚洲中文字幕av每天更新,黄aⅴ永久免费无码,91成人午夜在线精品,色网站免费在线观看,亚洲欧洲wwwww在线观看

分享

Linux與Windows雙系統(tǒng)下的Grub引導(dǎo)管理器安裝——boot.ini與menu.lst的例解

 szhlwang 2012-01-09
——boot.ini與menu.lst的例解
大多數(shù)人日常工作所用的系統(tǒng)是Windows,如果想嘗試或者轉(zhuǎn)向Linux,那么進(jìn)行Windows與Linux共存的雙系統(tǒng)安裝是個不錯的主意。但雙系統(tǒng)的安裝較之單系統(tǒng),在磁盤分區(qū)和引導(dǎo)管理器兩個方面增加了復(fù)雜性,本文對雙系統(tǒng)下引導(dǎo)管理器的安裝來加以介紹。
筆者假定你已經(jīng)有了一個可以正常運行的Win2k/XP系統(tǒng),并且已經(jīng)為Linux準(zhǔn)備好了硬盤分區(qū):Windows位于第一塊硬盤的第一個分區(qū),在 Linux下表示為hda1,在Grub下表示為(hd0,0),而Linux位于hdaX,用Grub表示為(hd0, X-1)?!狶inux下的硬盤分區(qū)計數(shù)是從hda1開始的,而Grub的硬盤分區(qū)計數(shù)是從(hd0,0)開始的,所以hdaX就是(hd0,X- 1)。這里X如果在1-4之內(nèi),說明Linux分區(qū)是主分區(qū),如果X大于4,說明Linux分區(qū)是邏輯分區(qū),本文并不限定Linux必須位于主分區(qū),它在邏輯分區(qū)一樣是可以引導(dǎo)的。
首先說明本文的思路,筆者推薦由Windows到Linux的引導(dǎo)序列,即首先引導(dǎo)Windows的 ntloader,然后通過 ntloader加載Linux分區(qū)的Grub引導(dǎo)扇區(qū),最后通過Grub引導(dǎo)Linux系統(tǒng)。本文涉及到的引導(dǎo)管理器包括ntloader和Grub, ntloader是Windows系統(tǒng)自帶的,在安裝Win2k/XP后就已經(jīng)安裝了,Windows 2000以及Windows Xp就是由ntloader加載的。Grub是Linux系統(tǒng)下很強(qiáng)大的引導(dǎo)管理器,在常見的Linux版本里都是有的,一般是自動安裝的。
下面具體說明安裝序列:
一、在已經(jīng)準(zhǔn)備好的Linux分區(qū)上安裝Grub
這個過程通常是由Linux系統(tǒng)的安裝程序自動進(jìn)行的,當(dāng)安裝程序進(jìn)行到引導(dǎo)管理器的安裝,并就Grub的安裝給出一些提示時,要當(dāng)心了:我們選擇 Grub,而不是lilo,并且Grub要安裝在該Linux分區(qū),不要安裝到硬盤主引導(dǎo)記錄MBR(master boot record)上。安裝程序詢問Grub的安裝位置時,應(yīng)該是上文提到的hdaX或者(hd0,X-1),如果你寫成hda或者(hd0),就會安裝到 MBR上。
之所以強(qiáng)調(diào)Grub安裝到Linux分區(qū),而不是MBR,因為本文是雙系統(tǒng)安裝,要顧忌到與Windows系統(tǒng)的兼容性(“兼容” 在這里并不準(zhǔn)確,實際是共生的意思)。我們的原則,就是把對已經(jīng)安裝的Windows系統(tǒng)的修改限制到最小的必要的程度,不去進(jìn)行并非必要的修改,以此保障Linux 與Windows兩個系統(tǒng)的和平共處?!昂啙嵓疵馈保昂唵巍币矔踩?。
如果安裝到MBR,也是可以的,但可能會有下面的問題:
1、如果所安裝的Windows系統(tǒng)修改了MBR的默認(rèn)設(shè)置,那么再把Grub安裝到MBR,就對MBR的內(nèi)容進(jìn)行了修改,可能會導(dǎo)致 Windows不能正常啟動。通常的Windows安裝并不會改動MBR的內(nèi)容,但如果你安裝了一些引導(dǎo)管理程序,它們往往是通過MBR進(jìn)行設(shè)置的。時下很流行的一些“一鍵恢復(fù)”程序,有些也是通過MBR設(shè)置的;
2、日后重裝Windows系統(tǒng)時,MBR里的Grub會被擦除,這會造成Linux系統(tǒng)不能引導(dǎo)。雖然這個問題也是可以解決的,但筆者更欣賞一勞永逸的安裝方式,Grub安裝到Linux分區(qū)下,可以避免日后的麻煩;
3、在一些個別情形下,Grub不能正常引導(dǎo)系統(tǒng)。這個現(xiàn)象并不常見,但仍有可能發(fā)生,要知道Grub目前仍然是版本前的軟件,而將Grub裝到MBR里,就會把問題弄得更復(fù)雜。
當(dāng)你所安裝的Linux系統(tǒng)不能指定將Grub安裝到Linux的所在分區(qū)時,我們的選擇是:
暫將Grub安裝到MBR,如果Linux系統(tǒng)能被Grub加以引導(dǎo),進(jìn)入Linux系統(tǒng)后,我們再手工將Grub裝入Linux分區(qū),然后恢復(fù)MBR;或者在安裝程序內(nèi)暫時不進(jìn)行Grub的安裝,退出安裝程序后手工安裝Grub。
恢復(fù)MBR需要用DOS、win98/me的啟動軟盤引導(dǎo)系統(tǒng),以/mbr參數(shù)執(zhí)行引導(dǎo)軟盤上的磁盤分區(qū)程序fdisk.exe,即在DOS命令行(plain dos)下執(zhí)行A:\>fdisk /mbr。如果機(jī)器沒有軟驅(qū),那么就需要用光盤或者U盤來引導(dǎo)機(jī)器進(jìn)入DOS;在Windows 2k/XP下,一個叫Vfloppy的軟件可以用軟盤鏡像文件來實現(xiàn)對軟盤的虛擬引導(dǎo),如果你的機(jī)器沒有USB接口(或沒有可以引導(dǎo)DOS的U盤),也沒有光驅(qū)和軟驅(qū),可以一試。
我曾經(jīng)用Xubuntu的LiveCD在一臺設(shè)置了“一鍵恢復(fù)”的TCL電腦安裝時,安裝程序沒有給出任何選擇,自動將Grub安裝到了MBR 上,結(jié)果不能進(jìn)入任何系統(tǒng)。最后還是用DOS下的A:\ > fdisk /mbr恢復(fù)了MBR,能夠正常引導(dǎo)Windows后,手工將Grub裝到了Linux下的根分區(qū),然后通過ntloader加載Grub,才實現(xiàn)了對 Linux的引導(dǎo)。
手工安裝Grub的簡便方法是用一張帶有Grub的Linux LiveCD(比如常見的Knoppix、Morphix、Ubuntu,都是可以的),啟動系統(tǒng),在Linux的安裝程序內(nèi)如果能進(jìn)入shell也是可以的,總之就是為了執(zhí)行Linux指令,在終端下執(zhí)行以下指令:
# grub
grub > root (hd0,X-1)
grub > setup (hd0,X-1)
grub > quit
以上指令首先定位Grub所需的/boot目錄在分區(qū)(hd0,X-1),然后將Grub的引導(dǎo)代碼寫入(hd0,X-1)分區(qū)的第一個扇區(qū),所以你首先應(yīng)該確保(hd0,X-1)分區(qū)內(nèi)的/boot/grub目錄下已經(jīng)有stage1、stage2、*_stage*等文件,這些文件可以通過釋放Grub 的打包文件來獲得,或者直接從LiveCD光盤內(nèi)的/boot/grub目錄復(fù)制。
如果LiveCD帶有g(shù)rub-install腳本,也可以直接執(zhí)行
# mount /dev/hdaX /mnt
# grub-install --root-directory=/mnt /dev/hdaX
以上指令首先將帶有Grub目錄/boot/grub的/hdaX掛載到/mnt,然后將Grub安裝到/hdaX。
二、將Grub裝配到ntloader內(nèi)
Grub已經(jīng)安裝到了Linux分區(qū)內(nèi),但它還不能引導(dǎo)系統(tǒng),我們需要把它和ntloader聯(lián)接起來,由ntloader對Grub加以引導(dǎo)。這是通過把hdaX分區(qū)內(nèi)的Grub引導(dǎo)扇區(qū)轉(zhuǎn)換為文件,并裝配到Windows的ntloader內(nèi)來實施的。
仍然用LiveCD啟動Linux系統(tǒng)(因為你所安裝的Linux系統(tǒng)目前還是不能引導(dǎo)的),或者在安裝程序可以進(jìn)入shell的情況下,執(zhí)行以下指令:
# mount -t vfat /dev/hda1 /mnt
# dd if=/dev/hdaX of=/mnt/linux.lnx bs=512 count=1
以上兩條指令將Windows的啟動分區(qū)(本文中為hda1)掛載到/mnt下,然后把Linux分區(qū)(hdaX)的第一個扇區(qū)(大小為512字節(jié))復(fù)制為Windows啟動分區(qū)根目錄下名為linux.lnx的文件。
注意:如果你的Windows啟動分區(qū)(即Windows下的C盤)不是fat32文件系統(tǒng),而是ntfs文件系統(tǒng),你需要在軟驅(qū)內(nèi)放入格式化的DOS軟盤,并將第一條指令替換為:
# mount -t msdos /dev/fd0 /mnt
因為ntfs文件系統(tǒng)不經(jīng)過特殊處理,在Linux下是不可寫的,即使你將指令中的vfat替換為ntfs,實現(xiàn)了掛載,也是一樣,所以我們在這里把linux.lnx寫入DOS格式的軟盤,然后通過軟盤在Windows下把linux.lnx放入C盤。
接著是在Windows下編輯C盤根目錄下的boot.ini文件,boot.ini通常是隱藏、只讀的系統(tǒng)文件,所以需要把它的“隱藏”、“只讀”屬性去掉,才可以編輯。在“我的電腦”工具菜單“文件夾選項”下的“查看”欄中取消“隱藏受保護(hù)的操作系統(tǒng)文件”和“隱藏已知文件類型的擴(kuò)展名”,并選擇“顯示所有文件和文件夾”,就可以看到C盤根目錄下的boot.ini文件了。在boot.ini內(nèi)的[operating systems]欄增添一行:
c:\linux.lnx=”Grub Menu”
并將[boot loader]欄內(nèi)的“timeout=0”,改為“timeout=5”,這樣引導(dǎo)Windows時將會顯示帶有“Grub Menu”字樣的操作系統(tǒng)選擇菜單,并持續(xù)5秒鐘,如果選擇Grub Menu,就會進(jìn)入Grub菜單。
三、設(shè)置menu.lst文件
menu.lst 是對Grub進(jìn)行設(shè)置的一個文本文件,可以用文本編輯器加以編輯,位于/boot/grub目錄內(nèi)。我們在前面雖然已經(jīng)把 Grub安裝到了Linux根分區(qū)上,但如果沒有生成menu.lst文件并對它加以設(shè)置,Grub是沒有任何作用的。對menu.lst文件進(jìn)行設(shè)置是個復(fù)雜的工作,特別是有關(guān)kernel和initrd的各種特殊參數(shù),幸而系統(tǒng)安裝的menu.lst文件內(nèi)通常有詳盡的注釋。并且你的Grub如果是由安裝程序自動設(shè)置的,那么通常menu.lst已經(jīng)被設(shè)置好了,我們僅僅根據(jù)自己的需要進(jìn)行一些修改和調(diào)整,而不必重寫menu.lst。即使你的 menu.lst不是由安裝程序生成的,也不必?fù)?dān)心,還可以參考、分析安裝光盤或者LiveCD上的menu.lst文件來對Linux分區(qū)內(nèi)的 menu.lst加以設(shè)置。
如果Grub已經(jīng)由安裝程序裝到了MBR,并且能夠引導(dǎo)所安裝的Linux,那么自動生成的Linux系統(tǒng)根分區(qū)下的 /boot/grub/menu.lst就已經(jīng)被配置好了,我們只須把Grub重新安裝到Linux系統(tǒng)根分區(qū),恢復(fù)Windows下的原初MBR,按照上文的方法把Linux系統(tǒng)根分區(qū)的Grub引導(dǎo)代碼裝載到ntloader就可以了。因為Grub的安裝位置不是在menu.lst文件內(nèi)指定,而是在 linux shell中執(zhí)行g(shù)rub,進(jìn)入Grub命令行后,應(yīng)用Grub的內(nèi)部指令root和setup來指定,或者在可執(zhí)行的shell腳本文件grub- install中,以參數(shù)的形式指定設(shè)備文件(如/dev/hda或/dev/hdaX)。
假使所安裝的Linux系統(tǒng)沒有使用Grub,而是使用lilo作為引導(dǎo)管理器,只要lilo能夠?qū)崿F(xiàn)引導(dǎo),我們就可以借鑒linux系統(tǒng)內(nèi)的 /etc/lilo.conf文件來對menu.lst加以設(shè)置。Lilo.conf是lilo的配置文件,其格式雖然與menu.lst不同,但關(guān)鍵部分是相同的,如指定kernel和initrd的位置,向內(nèi)核傳遞引導(dǎo)參數(shù),指定缺省引導(dǎo)的系統(tǒng)和延時時長,在lilo.conf中內(nèi)核參數(shù)是在 APPEND后,我們可以將lilo.conf中的參數(shù)移植到menu.lst中。
四、Menu.lst的一個實例:
以下作為實例的menu.lst是我在windows 2000系統(tǒng)中安裝的grub4nt的配置文件,所以可以看到(hd0,0)既是Windows的引導(dǎo)分區(qū),又是Grub文件及一些linux內(nèi)核文件的所在分區(qū)。雖然Grub4nt不能在menu.lst中應(yīng)用savedefault命令外(可能因為grub4nt不支持在fat32文件系統(tǒng)上的寫操作),其他設(shè)置與標(biāo)準(zhǔn)的Gnu Grub并無不同,大家可以通過這個實例來具體了解配置文件menu.lst。
default 0
timeout 5
foreground = 333333
background = eeeeee
color light-gray/blue black/light-gray
gfxmenu (hd0,0)/boot/morphix/message
title ubuntu linux
kernel (hd0,2)/vmlinuz ro root=/dev/hda3
title ubuntu linux (rescue mode)
kernel (hd0,2)/vmlinuz ro single root=/dev/hda3
title Other operating systems:
root
title PUD LiveHD
kernel (hd0,0)/boot/pud/linux lang=us ramdisk_size=100000 init=/etc/init apm=power-off vga=791 nomce initrd=miniroot.gz quiet BOOT_IMAGE=knoppix
initrd (hd0,0)/boot/pud/miniroot.gz
title Windows
root (hd0,0) 或者 rootnoverify (hd0,0)
makeactive
chainloader +1
title submenu -> Morphix LiveHD
configfile (hd0,1)/boot/grub/menu.lst
這里不對menu.lst做全面解釋了,只結(jié)合實例,介紹幾個重點環(huán)節(jié),完整說明請閱讀網(wǎng)上Grub的使用手冊。
Default 0
default用來設(shè)置缺省引導(dǎo)系統(tǒng),數(shù)字序列從0開始,本例會在menu.lst內(nèi)自動尋找以title開始的詞條,并引導(dǎo)第一個title詞條,你可以根據(jù)自己的需要改成其他數(shù)字,如1(第二個title詞條);
timeout 5
timeout用來設(shè)置Grub引導(dǎo)的延時時長,本例中為5秒鐘,系統(tǒng)在等待5秒后用戶如果沒有手動選擇要引導(dǎo)的系統(tǒng),Grub就會自動引導(dǎo)由default指定的系統(tǒng);
title ubuntu linux
title 用來指示Grub所引導(dǎo)系統(tǒng)的設(shè)置的開始,title后面的文字在Grub菜單中會被作為系統(tǒng)的名稱顯示出來,本例中Grub引導(dǎo)菜單會顯示 ubuntu linux、ubuntu linux (rescue mode)、other operating systems、PUD LiveHD、Windows、submenu -> Morphix六個詞條,其中第三個詞條并非一個真實的系統(tǒng),僅起指示的作用,故其root部分為空;
kernel (hd0,2)/vmlinuz ro root=/dev/hda3
kernel 用來指示linux系統(tǒng)的內(nèi)核文件的所在位置及引導(dǎo)參數(shù),(hd0,2)/vmlinuz指內(nèi)核為hda3(第一塊硬盤第三個主分區(qū))內(nèi)根目錄下的 vmlinuz文件,根文件系統(tǒng)(/)位于hda3,注意:指示內(nèi)核文件所用路徑中的分區(qū)必須用Grub的表示法,不能用linux的表示法,而根文件系統(tǒng)的位置必須用linux下的設(shè)備文件名來表示(本例中為/dev/hda3)。有時,vmlinuz并不是真實的內(nèi)核文件,而是內(nèi)核文件的一個鏈結(jié)文件(link file),但這不影響Grub的引導(dǎo),它能根據(jù)鏈結(jié)文件找到真實的內(nèi)核并加以引導(dǎo),這在內(nèi)核文件帶有很長的版本號時會非常有用,簡化了內(nèi)核文件名的拼寫,減少了拼寫錯誤的出錯幾率;
kernel的這種設(shè)置是最為簡單的方式,也是比較通用的設(shè)置方式,使用安裝過的內(nèi)核直接引導(dǎo)已安裝的根文件系統(tǒng)(即linux系統(tǒng)),而不需進(jìn)行initrd的設(shè)置;在不清楚內(nèi)核的特殊設(shè)置參數(shù)時,可以用這種設(shè)置來嘗試引導(dǎo)系統(tǒng)。如果在以上設(shè)置中加上 single,即改為kernel (hd0,2)/vmlinuz ro root=/dev/hda3 single,則系統(tǒng)引導(dǎo)后會進(jìn)入單用戶(root用戶)的文本模式,即救援模式(rescue mode),在系統(tǒng)升級、維護(hù)或查找、排除故障時會比較有用;
initrd (hd0,0)/boot/pud/miniroot.gz
initrd用來指示initrd文件(即初始內(nèi)存磁盤文件,linux系統(tǒng)中常用的引導(dǎo)技術(shù))的位置,關(guān)于硬盤分區(qū)的表示方法與kernel的要求相同,必須用(hd0,0)這種Grub的表示方法;
root (hd0,0)
root用來定位分區(qū),本例中為hda1,Windows系統(tǒng)的所在分區(qū)。如果在kernel和initrd之前使用它,可以用來簡化文件位置的表述,比如
kernel (hd0,2)/vmlinuz ro root=/dev/hda3
可以寫成
root (hd0,2)
kernel /vmlinuz ro root=/dev/hda3
而initrd也可如是模仿;
makeactive
makeactive用來激活root所定位的分區(qū),它只能用于主分區(qū),不能用于擴(kuò)展分區(qū)上的邏輯分區(qū),雖然可以用這種技術(shù)來引導(dǎo)Grub安裝在了主分區(qū)的linux系統(tǒng)但有比較大的局限性,所以通常是用來引導(dǎo)Windows系統(tǒng);
chainloader +1
chainloader +1用來對makeactive所激活的主分區(qū)加以引導(dǎo),同上:它只能引導(dǎo)主分區(qū),所以通常是用來引導(dǎo)Windows系統(tǒng),而linux系統(tǒng)可以安裝在擴(kuò)展分區(qū)上的邏輯分區(qū),通常是使用kernel和initrd這種功能更為強(qiáng)大、靈活的引導(dǎo)方式;
configfile (hd0,1)/boot/grub/menu.lst
configfile 用來將其他的menu.lst菜單引入Grub菜單,在同一機(jī)器上安裝了多個linux系統(tǒng)、存在多個menu.lst文件時,這個語句非常有用,它可以簡化menu.lst文件的設(shè)置,不必重抄那些復(fù)雜的引導(dǎo)參數(shù),只須把別的系統(tǒng)的menu.lst文件加以引用就可以了,在 Grub引導(dǎo)時選擇這個子菜單,就會進(jìn)入所引用的menu.lst的引導(dǎo)菜單。
本例中的PUD LiveHD是將PUD(一種中文繁體Debian LiveCD版本)光盤上的內(nèi)容復(fù)制到hda1(在本例中為Windows的C:盤) 中,然后使用grub4nt對其加以引導(dǎo),這樣就實現(xiàn)了LiveCD到硬盤的移植,我稱之為LiveHD;而Morphix LiveHD則是將Morphix(一種模塊化的Debian LiveCD)光盤上的內(nèi)容復(fù)制到一個單獨的ext2/3分區(qū),本例中為(hd0,1),即hda2,實現(xiàn)LiveHD的引導(dǎo)。很有趣的是,PUD只能放入fat32分區(qū),Morphix只能放入ext2分區(qū),反之則不能引導(dǎo),這應(yīng)該是不同版本的LiveCD的內(nèi)核所支持文件系統(tǒng)的不同所致。
注: Grub4nt是Grub在windows 2k/XP下的擴(kuò)展,建基于Grub for DOS,/boot/grub目錄放在fat/fat32文件系統(tǒng)內(nèi),可以在ntloader內(nèi)通過一個小文件grldr實現(xiàn)Grub的引導(dǎo),而無須寫入 MBR,它是中國人的作品,作為一種新穎別致的引導(dǎo)方式,向世界上的linux愛好者展示了中國人的智慧,本文會在后面專門予以介紹。五、boot.ini文件的調(diào)整
boot.ini是一個文本文件,可以用文本編輯器打開,它是win 2k/XP下ntloader的設(shè)置文件,下面是我的機(jī)器上的boot.ini實例:
[boot loader]
timeout=0
default=multi(0)disk(0)rdisk(0)partition(1)\WINNT
[operating systems]
c:\ubuntu.lnx=Xubuntu Linux
c:\morphix.lnx=Morphix LiveHD
c:\grldr=Grub Menu
multi(0)disk(0)rdisk(0)partition(1)\WINNT="Win2k" /fastdetect
我們逐行來對它加以解釋。
[boot loader]一節(jié)用來指定缺省引導(dǎo)的系統(tǒng)及其等待時間,本例中缺省引導(dǎo)第一塊IDE硬盤的第一個分區(qū)(表示為multi(0)disk(0)rdisk (0)partition(1),而如果你的windows Xp系統(tǒng)在硬盤的第二個分區(qū),則表示為multi(0)disk(0)rdisk(0)partition(2)\WINDOWS,這種表示法不同于 linux,它不區(qū)別主分區(qū)和邏輯分區(qū),而依據(jù)分區(qū)在磁盤上的順序從數(shù)字1開始計數(shù))內(nèi)的windows 2000系統(tǒng),沒有延時,立即引導(dǎo)。
若把Timeout的值從0改為5,則延時5秒,供用戶選擇boot菜單;改為-1,則系統(tǒng)不進(jìn)行自動引導(dǎo),始終等待著用戶的鍵盤輸入來進(jìn)行選擇。
[operating systems]一節(jié)用來描述boot菜單中要引導(dǎo)的不同系統(tǒng),“=”后面的字符是boot菜單的顯示內(nèi)容,而“=”前面的部分是ntloader實際引導(dǎo)的內(nèi)容,multi(0)disk(0)rdisk(0)partition(1)\WINNT指ntloader所要引導(dǎo)的windows系統(tǒng)位于第一塊硬盤的第一個分區(qū)內(nèi)的\winnt目錄,c:\ubuntu.lnx和c:\morphix.lnx則是應(yīng)用dd命令在linux下將grub在根分區(qū)內(nèi)的引導(dǎo)扇區(qū)轉(zhuǎn)換生成的文件,而c:\grldr是grub4nt的引導(dǎo)文件,用來實現(xiàn)grub在ntloader的引導(dǎo)。
[operating systems]內(nèi)的不同詞條的順序是可以調(diào)整的,例如我們可以將c:\grldr=Grub Menu從本節(jié)第三行改為第一行,這樣Grub Menu就會在boot菜單的第一行顯示。
而缺省引導(dǎo)的系統(tǒng)也是可以改變的,例如我們可以將[boot loader]內(nèi)的multi(0)disk(0)rdisk(0)partition(1)\WINNT改為c:\grldr,這樣缺省引導(dǎo)的就是 grub4nt的Grub菜單,而不是windows 2000了。這里要注意:c:\grldr放入[boot loader]一節(jié)時,正確的寫法應(yīng)該是
default=c:\grldr
一定不要將“=Grub Menu”帶上,否則boot菜單的顯示效果將不是我們所想要的,切記!
六、grub4nt的使用
將grub 加載到ntloader里的方法,除了上文第二部分所介紹的將Linux根分區(qū)內(nèi)的Grub引導(dǎo)扇區(qū)轉(zhuǎn)換為ntloader可以引導(dǎo)的文件,還有另外一種方法,就是使用grub4nt。grub4nt通過grldr這個小文件,使ntloader直接加載Windows系統(tǒng)C:盤下的\ boot\grub\menu.lst(新版本的grub4nt會尋找根目錄的\menu.lst)。
在windows下的boot.ini文件內(nèi)[operating systems]一節(jié)增添一行如下:
c:\grldr=grub4nt
對grub4nt 的menu.lst設(shè)置,既可以把Linux系統(tǒng)根分區(qū)內(nèi)的/boot/grub/menu.lst直接移植過來(GNU Grub下的savedefault在grub4nt下不能使用,會導(dǎo)致grub4nt的出錯),也可以在grub4nt的menu.lst文件內(nèi)通過 configfile直接引入Linux系統(tǒng)根分區(qū)內(nèi)的/boot/grub/menu.lst菜單,而后者不失為一種簡單安全的方法,省掉了對內(nèi)核引導(dǎo)參數(shù)的復(fù)雜設(shè)置。
即在grub4nt的menu.lst文件內(nèi)這樣設(shè)置:
title GNU Grub menu
configfile (hda0,X)/boot/grub/menu.lst
七、總結(jié)
本文對Windows與Linux并存于同一機(jī)器時引導(dǎo)管理器的安裝給出了描述,可以看出,筆者推薦的是以Windows 2k/XP下的ntloader為主引導(dǎo)器,通過ntloader來加載Grub,最后由Grub實現(xiàn)Linux的引導(dǎo)。這樣一種引導(dǎo)序列的特點是,對 Windows的引導(dǎo)幾乎沒有加以改動,僅僅在其中插入了對Grub的加載。當(dāng)然,相反的序列也是可以的,即首先引導(dǎo)Grub(可以將Grub裝入MBR 或者處于激活狀態(tài)的主分區(qū)),由Grub來加載ntloader(通過chainloader +1命令),然后實現(xiàn)對Windows的引導(dǎo)。但后者可能會引發(fā)其他的問題。
無論如何,本文中Linux的引導(dǎo)都是通過Grub進(jìn)行的,不管是將Grub裝入Linux根分區(qū)、由ntloader加載Linux根分區(qū)的 Grub引導(dǎo)扇區(qū),還是通過grub4nt的grldr、由ntloader加載grldr來實現(xiàn)對Grub的引導(dǎo)。其實,Grub的引導(dǎo)扇區(qū)文件和 grldr只是對Grub加載的不同實現(xiàn)方式罷了。
               

本文來自ChinaUnix博客,如果查看原文請點:http://blog./u3/93926/showart_1874310.html

    本站是提供個人知識管理的網(wǎng)絡(luò)存儲空間,所有內(nèi)容均由用戶發(fā)布,不代表本站觀點。請注意甄別內(nèi)容中的聯(lián)系方式、誘導(dǎo)購買等信息,謹(jǐn)防詐騙。如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請點擊一鍵舉報。
    轉(zhuǎn)藏 分享 獻(xiàn)花(0

    0條評論

    發(fā)表

    請遵守用戶 評論公約

    類似文章 更多