Ubuntu修改grub.cfg文件後進不去Ubuntu系統了,開機進入grub2界面

問題

首先,本人作死,在沒有充分了解/boot/grub.grub.cfg文件的情況下,修改了其“menuentry”項,導致再次開機時無法進入Ubuntu,而是進入grub2的命令行。

解決辦法

搞了一下午加一晚上,最終被一篇博客(https://linux.cn/article-3457-1.html)的一行字救了命:

你知道怎麼找到正確的分區嗎?hd0,1 即 /dev/sda1,hd1,1 即 /dev/sdb1,hd3,2 即 /dev/ sdd2。我想你可以自己推算剩下的了。

這句話留到後面有用,另外該博客就是針對解決本問題而寫的,非常有用,但是下面我的個人實踐也可提供參考。

grub2命令行中:

1、輸入set查看現在電腦的root和prefix所在的位置:

比如我的root和prefix就是:

prefix = hd1,gpt4/boot/grub
root = hd1,gpt4

確認一下(hd1,gpt4)下確實有boot沒錯。怎麼查看確認?

一般ls (hd1,gpt4)/就可以,但是我的就不行,ls不顯示,必須在ls (hd1,gpt4)/後加tab才能看的出可用的文件。

2、告訴grub您想要使用的內核的位置:

# linux /boot/vm + tab鍵 出來一系列可選的內核,選擇一個(比如最新的版本)
# 後面還要加上root=/dev/sd**,根據上文紅字說明,我的(hd1,gpt4)就對應sdb4
linux /boot/vmlinuz-5.0.0-42-generic root=/dev/sdb4

3、設置initrd文件,必須是和內核相同的版本號:

# 同樣的 initrd /boot/init + tab鍵出來一系列版本的可選initrd文件,選擇版本跟內核相同的
initrd /boot/initrd.img-5.0.0-42.generic

4、啓動

boot

然後就可以成功進入系統,把錯誤修改的grub.cfg的內容改回來啦。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章