|
樓主 |
發表於 2012-5-23 11:17:59
|
顯示全部樓層
本帖最後由 u32227 於 2012-5-23 13:13 編輯
u32227 發表於 2012-5-23 10:59
shuan0114大你好~
請再試一下這樣
以下提供參考~
default
指定預設的功能表項目,由0開始算起,例:
default 0該命令必須在第一個title之前指定
timeout
預設的等待時間,如果在指定的時間(以秒為單位)不按任何鍵,則會啟動缺省的功能表項目,例:
timeout 10該命令必須在第一個title之前指定
root
用來指定根設備,例:
root (hd0,0)
rootnoverify
該命令也可以用來指定根設備。root在設置根設備前,先測試一下該分區的檔案系統是否可以識別,而rootnoverify則省略這一測試。
rootnoverify (hd0,0)
chainloader
把開機磁區的內容裝入記憶體,參數+1指的是把分區的第一個磁區,例:
chainloader +1
boot
啟動作業系統。在使用該命令前,必須用kernel或者chainloader把系統內核或者開機磁區/開機檔案裝入記憶體。例:
boot
在設定檔中不需要使用這個命令。這是因為GRUB在執行了功能表項目的所有命令後,會自動加上boot。該命令一般在命令列介面裡使用。
設備名字
在GRUB中,硬碟設備用以下的方法來命名:
(hdm)
m是硬碟的序號。序號0相對於BIOS的第一隻硬碟。
硬碟上的分區用以下的方法來命名:
(hdm,n)
n是硬碟m裡分區的序號。主要磁碟分割最多有4個,其序號為0-3,擴展分區的序號從4開始。例:
硬碟0上的第一個主要磁碟分割:
(hd0,0)
硬碟1上的第一個擴展分區:
(hd1,4)
設備也可以用相應的BIOS設備號來表示。例如,第一隻硬碟設備的設備號是0x80,因此,以下的表示是等價的: (hd0,0), (0x80,0), (128,0)。
另外,對於一些檔案系統來說,例如FreeBSD中使用的ffs,或者是Solaris中使用的ufs,在分區中還繼續劃分為子分區。子分區的表示是在分區表示的基礎上加上從a開始計算的子分區序號。例如:
硬碟0上的第一個主要磁碟分割裡的第一個子分區:
(hd0,0,a)
軟碟設備用以下的方法來命名:
(fdm)
m是軟碟的序號。序號0相對於BIOS的第一隻軟碟。
軟碟設備後面同樣可以加上分區或者子分區的序號。
GRUB還有其它一些設備,比如說(cd)是光碟設備,(nd)是網路設備,等等。不過它們在特定的情形下才可以使用。
檔案名字
GRUB的檔案名字是在設備名字的基礎上加上檔的路徑,例子:硬碟0上第一個主要磁碟分割根目錄裡的aa.img文件:
(hd0,0)/aa.img
軟碟0上boot目錄裡的aa.img文件:
(fd0)/boot/aa.img
注意:目錄的分隔符號是 / ,而不是Windows/DOS下常用的 \ 。
另外,你還可以用磁區的位移和數量來指定資料,比如:
(hd0,0)0+100,200+1,300+300
表示硬碟0上第一個主要磁碟分割裡,從磁區0起的100個磁區,然後是從磁區200起的1個磁區,最後是從磁區300起的300個磁區。當位移為零時,可以省略不寫,因此,
(hd0,0)+1
表示的是硬碟0上第一個主要磁碟分割裡從磁區0起的1個磁區,也就是分區的第一個磁區。
GRUB中紀錄了一個根設備,它由root命令來指定,例如:
root (hd0,0)
根設備上的檔可以省略設備名,例如,使用了以上的root命令後,檔案名 +1 就等同於 (hd0,0)+1。
注意:在GRUB4DOS的擴展中,map命令中使用的檔案名的意義和以上所說的有所不同。在map命令裡,(hd0,0)+1表示的不是硬碟0上第一個主要磁碟分割的第一個磁區,而是整個分區。
啟動作業系統
一般來說,作業系統會在其所在分區的第一個磁區裡放入啟動代碼。因此,用以下的一組命令一般可以啟動硬碟0第一主要磁碟分割上的作業系統:
rootnoverify (hd0,0) chainloader +1 boot
對於不同的分區,只要修改設備名(hd0,0)就可以了。
註1:大部分的作業系統需要在第一隻硬碟的主要磁碟分割裡才能正常啟動。
註2:當把該組命令作為menu.lst裡某一功能表項目的內容時,最後的命令boot可以省略。
註3:該方法是通用的,它可以用來啟動以下提到的系統,只要分區的第一個磁區中存在啟動代碼。
|
|