缺少grub.cfg文件,而是在ubuntu 16.04上有menu.lst

想要在实时ubuntu会话本身永久添加启动参数(pci = nomsi)。

能够通过使用此命令添加它 – gksu gedit /etc/default/grub

但系统仍然没有从这些参数开始。 我认为这与没有“grub.cfg”文件有关。

这是我的第一次linux体验。 我是完整noobie,我想让这个系统运行9天。 请指导我解决这个问题。

以前的问题以及我如何到达这里 – 1. link1 2. link2 3. link3

要添加内核参数,您可以编辑/etc/default/grub文件,然后添加内核参数:

 sudo nano /etc/default/grub 

然后你可以看到像这样的行:

 GRUB_CMDLINE_LINUX_DEFAULT="quiet splash" 

您必须在quiet splash后添加pci=nomsi作为内核参数,然后按Ctrl + x保存更改。

您可以通过以下命令检查更改:

 cat /etc/default/grub 

改变后你必须看到这样的事情:

 GRUB_CMDLINE_LINUX_DEFAULT="quiet splash pci=nomsi" 

作为最后一步,您必须通过此命令应用更改:

 sudo update-grub 

更新:如果你看到这个错误/usr/sbin/grub-probe: error: failed to get canonical path of aufs'. ,重新安装和重新映射可能会有所帮助。

这样做的步骤:

作为第一步,使用以下命令检查您的Ubuntu和您的启动分区:

 lsblk 

它可以安装在/boot挂载点上。

然后在引导活动磁盘后 ,使用以下命令将Ubuntu分区挂载到/mnt

 sudo mount /dev/sd*# /mnt 

例如:

 sudo mount /dev/sda8 /mnt 

所以/dev/sd*#被挂载到你的Ubuntu分区。

如果你有一个单独的/boot分区,你还需要在/mnt/boot安装它:

 sudo mount /dev/sd*# /mnt/boot 

例如:

 sudo mount /dev/sda2 /mnt/boot 

其中/dev/sd*#更新到/boot分区。

这应该安装它有足够的访问权限,以获得规范的路径,如果需要,但我们可能不需要这个。

要完成,只需使用正确的根和目标更新grub:

 sudo grub-install --root-directory=/mnt /dev/sdX 

其中/dev/sdX是我们想要GRUB的磁盘(不是分区)

例如:

 sudo grub-install --root-directory=/mnt /dev/sda 

作为替代方法,您可以在活动磁盘中使用boot-repair

 sudo add-apt-repository ppa:yannubuntu/boot-repair sudo apt-get update sudo apt-get install -y boot-repair && boot-repair