多重引導(dǎo)程序grub的命令行shell工具
grub命令 是多重引導(dǎo)程序grub的命令行shell工具。
grub(選項(xiàng))
--batch:打開批處理模式;
--boot-drive=<驅(qū)動(dòng)器>:指定stage2的引導(dǎo)驅(qū)動(dòng)器;
--config-file<配置文件>:指定stage2的配置文件;
--device-map=<文件>:指定設(shè)備的映射文件;
--help:顯示幫助信息;
--install-partition=<分區(qū)>:指定stage2安裝分區(qū);
--no-config-file:不使用配置文件;
--no-pager:不使用內(nèi)部分頁器;
--preset-menu:使用預(yù)設(shè)菜單;
--probe-second-floppy:檢測(cè)第二個(gè)軟盤驅(qū)動(dòng)器;
--read-only:只讀模式。
利用grub命令來啟動(dòng)損壞的Linux系統(tǒng),可能你的電腦因?yàn)槟承┰驌p壞不能自動(dòng)啟動(dòng)了。當(dāng)然原因很多,可能的現(xiàn)象也很多。
這里說一下這種情況下的處理方法,即:屏幕上提示grub>
,但你的硬盤上數(shù)據(jù)沒有丟失,各分區(qū)都是好的。這種情況是你的grub信息損壞了,但比較嚴(yán)重的是系統(tǒng)啟動(dòng)不了。
當(dāng)然,在正常啟動(dòng)情況下,屏幕上出現(xiàn)grub的啟動(dòng)項(xiàng)選擇菜單時(shí)按c
鍵也是可以進(jìn)入grub>
狀態(tài)的。這時(shí)候我們需要用grub的命令來手工啟動(dòng)系統(tǒng)。
只需要用到四個(gè)命令boot、kernel、initrd、boot。
但grub本身命令很多,比如查看文件內(nèi)容的cat ,你輸入help會(huì)得到。
首先,輸入“ root (hd ” ,然后按兩次 TAB 鍵; /* 這會(huì)列出你電腦上可能的磁盤設(shè)備,硬盤為 hd0/hd1 或 sd0/sd1 等 */
然后,選擇你的安裝 Linux 系統(tǒng)的硬盤,比如 hd0 ,輸入 “ root (hd0, ” 再按兩次 TAB 鍵; /* 這會(huì)列出你的第一塊硬盤上的分區(qū)情況,你會(huì)知道哪個(gè)是 swap 交換分區(qū), 0x82 ,哪個(gè)是 Linux 分區(qū) 0x83 */
選擇你認(rèn)為可能的 /boot 目錄所在的分區(qū), 輸入root (hd0, 1)
回車;
接著,輸入cat /boot/vm
, 按兩次 TAB 鍵,如果出現(xiàn)一些 vm 開頭的文件,比如 vmlinuz-2.6.15-26-386 說明這里是 /boot 所在的分區(qū)。
刪除上一次的輸入,再輸入cat /boot/initrd
,按兩次 TAB 鍵,如果出現(xiàn)一些 initrd 開頭的文件,比如 initrd.img-2.6.15-26-386 說明這個(gè) /boot 所在的分區(qū)有 initrd ,即 ramdisk 鏡像;
刪除上一次的輸入,再輸入cat /sbin/init
,按兩次 TAB 鍵,如果出現(xiàn)一些 init 開頭的文件,比如/sbin/init
說明這個(gè)分區(qū)是/
所在的分區(qū);
如果沒有出現(xiàn)/sbin/init
文件,說明(hd0,1)
分區(qū)僅僅是/boot
分區(qū)而不是/
分區(qū)。重新輸入root (hd0,N)
命令,這里 N 是某個(gè) Linux 分區(qū),然后再試cat /sbin/init
, 直到屏幕上出現(xiàn)/sbin/init
,說明你找到了/
分區(qū),嚴(yán)格來說,應(yīng)該是/sbin
目錄所在的分區(qū);
依次輸入命令:
root (hd0,1) /* 假設(shè) /dev/hda2 是你的 /boot 所在的分區(qū) */
kernel /boot/vmlinuz-2.6.15-26-386 ro dev=/dev/hda3 /* 假設(shè) /dev/hda3 是你的 / 所在的分區(qū) */
initrd /boot/initrd.img-2.6.15-26-386
boot
即可啟動(dòng)系統(tǒng)。
這里的關(guān)鍵問題是如何確定系統(tǒng)的幾個(gè)分區(qū):/boot
/
/sbin