如何利用Grub命令來啟動損壞的Linux
這里說一下這種情況下的處理方法,即:屏幕上提示 “ grub> ” ,但你的硬盤上數據沒有丟失,各分區都是好的。
這種情況是你的 grub 信息損壞了,但比較嚴重的是系統啟動不了。
當然,在正常啟動情況下,屏幕上出現 grub 的啟動項選擇菜單時按 c 鍵也是可以進入 “grub>” 狀態的。這時候我們需要用 grub 的命令來手工啟動系統。
只需要用到四個命令 boot 、 kernel 、 initrd 、 boot。
但 grub 本身命令很多,比如查看文件內容的 cat ,你輸入 help 會得到。
首先,輸入 “ root (hd ” ,然后按兩次 TAB 鍵; /* 這會列出你電腦上可能的磁盤設備,硬盤為 hd0/hd1 或 sd0/sd1 等 */
然后,選擇你的安裝 Linux 系統的硬盤,比如 hd0 ,輸入 “ root (hd0, ” 再按兩次 TAB 鍵; /* 這會列出你的第一塊硬盤上的分區情況,你會知道哪個是 swap 交換分區, 0x82 ,哪個是 Linux 分區 0x83 */
選擇你認為可能的 /boot 目錄所在的分區, 輸入 “ root (hd0, 1) ” 回車;
接著,輸入 “ cat /boot/vm ” , 按兩次 TAB 鍵,如果出現一些 vm 開頭的文件,比如 vmlinuz-2.6.15-26-386 說明這里是 /boot 所在的分區。
刪除上一次的輸入,再輸入 “ cat /boot/initrd ” , 按兩次 TAB 鍵,如果出現一些 initrd 開頭的文件,比如 initrd.img-2.6.15-26-386 說明這個 /boot 所在的分區有 initrd ,即 ramdisk 鏡像;
刪除上一次的輸入,再輸入 “ cat /sbin/init ” , 按兩次 TAB 鍵,如果出現一些 init 開頭的文件,比如 /sbin/init 說明這個分區是 / 所在的分區;
如果沒有出現 /sbin/init 文件,說明 (hd0,1) 分區僅僅是 /boot 分區而不是 / 分區。重新輸入 “ root (hd0,N) ” 命令,這里 N 是某個 Linux 分區,然后再試 “ cat /sbin/init ” , 直到屏幕上出現 /sbin/init ,說明你找到了 / 分區,嚴格來說,應該是 /sbin 目錄所在的分區;
依次輸入命令:
root (hd0,1) /* 假設 /dev/hda2 是你的 /boot 所在的分區 */
kernel /boot/vmlinuz-2.6.15-26-386 ro dev=/dev/hda3 /* 假設 /dev/hda3 是你的 / 所在的分區 */
initrd /boot/initrd.img-2.6.15-26-386
boot
即可啟動系統。
這里的關鍵問題是如何確定系統的幾個分區: /boot / /sbin
新文章:
- CentOS7下圖形配置網絡的方法
- CentOS 7如何添加刪除用戶
- 如何解決centos7雙系統后丟失windows啟動項
- CentOS單網卡如何批量添加不同IP段
- CentOS下iconv命令的介紹
- Centos7 SSH密鑰登陸及密碼密鑰雙重驗證詳解
- CentOS 7.1添加刪除用戶的方法
- CentOS查找/掃描局域網打印機IP講解
- CentOS7使用hostapd實現無AP模式的詳解
- su命令不能切換root的解決方法
- 解決VMware下CentOS7網絡重啟出錯
- 解決Centos7雙系統后丟失windows啟動項
- CentOS下如何避免文件覆蓋
- CentOS7和CentOS6系統有什么不同呢
- Centos 6.6默認iptable規則詳解