導讀 | GRUB是多啓動規範的實現,它允許用戶可以在計算機內同時擁有多個操作系統,並在計算機啓動時選擇希望運行的操作系統。GRUB可用於選擇操作系統分區上的不同內核,也可用於向這些內核傳遞啓動參數。 |
1.grub損壞不重啓系統修復方法
1.1 先查看磁盤的信息
我的電腦只有一個硬盤sda,所以系統肯定被裝在了sda,在grub裏會被識別爲hd0。
1.2 模擬演示grub損壞
用dd命令覆蓋了sda硬盤的前400個字節,破壞了bootloader,這裏只破壞前446個字節就行。
這裏千萬不要重啓電腦,這裏演示的是不重啓修復grub。
1.3進入grub
使用sync把剛剛的操作同步到磁盤,輸入grub進入grub的界面。
1.4 查找到內核分區安裝grub
root (hd0,0)是指的內核所在的分區,hd0是第一硬盤,後面的0是第一分區
setup(hd0)安裝grub到hd0硬盤
此時模擬損壞的grub已經修復完成,可以重啓。
2. 當grub配置文件被損壞時的修復方法
2.1 模擬損壞grub.conf配置文件
我們先查看一下grub.conf文件,並且將grub.conf改名爲grub.conf.bak,這樣模擬grub.conf文件已經損壞。
2.2 重啓之後的界面
哈哈,重啓之後果然進不了系統了,給我們一個grup>提示符。
2.3開始查找內核的所在的分區
輸入root (hd0, 在這裏按tab鍵,出現下面的分區,我們只需要type爲83的分區,所以我們輸入root (hd0,0)
2.4 指定啓動內核所在位置
輸入kernel / 按tab後發現有很多文件夾,我們知道內核放在boot文件夾下,所以輸入kernel /boot/vm 此處按tab自動補全就行,root=/dev/sda1的意思是指定根分區設備文件的位置,然後回車確認。
2.5指定臨時鏡像文件所在位置
輸入initrd / 按tab後發現有很多文件夾,我們知道臨時鏡像放在boot文件夾下,所以輸如initrd /boot/initra 此處按tab自動補全就行,然後回車確認
此時輸入boot按照我們設定的內核文件和臨時鏡像文件啓動系統,如:grub>boot
哈哈,系統啓動後成功進入系統,把grub.conf還原就行啦。