![grub2-mkconfig 没有生成正确的安装路径(以及如何删除我不再使用的额外内核?)](https://linux22.com/image/124093/grub2-mkconfig%20%E6%B2%A1%E6%9C%89%E7%94%9F%E6%88%90%E6%AD%A3%E7%A1%AE%E7%9A%84%E5%AE%89%E8%A3%85%E8%B7%AF%E5%BE%84%EF%BC%88%E4%BB%A5%E5%8F%8A%E5%A6%82%E4%BD%95%E5%88%A0%E9%99%A4%E6%88%91%E4%B8%8D%E5%86%8D%E4%BD%BF%E7%94%A8%E7%9A%84%E9%A2%9D%E5%A4%96%E5%86%85%E6%A0%B8%EF%BC%9F%EF%BC%89.png)
我最近自动生成的 grub 文件的一部分是
menuentry 'Fedora (4.15.0-rc3+) 27 (Workstation Edition)' --class fedora --class gnu-linux --class gnu --class os --unrestricted $menuentry_id_option 'gnulinux-4.15.0-rc3+-advanced-d5882dba-97be-48b3-a49e-745751c0c28e' {
load_video
insmod gzio
insmod part_gpt
insmod lvm
insmod ext2
set root='lvmid/2Wagdx-NqX3-0XjZ-E0KB-kFjL-681l-r2Jrr9/xh2Nk7-zisd-PwAb-qEp6-2nrV-kolN-e93RHx'
if [ x$feature_platform_search_hint = xy ]; then
search --no-floppy --fs-uuid --set=root --hint='lvmid/2Wagdx-NqX3-0XjZ-E0KB-kFjL-681l-r2Jrr9/xh2Nk7-zisd-PwAb-qEp6-2nrV-kolN-e93RHx' d5882dba-97be-48b3-a49e-745751c0c28e
else
search --no-floppy --fs-uuid --set=root d5882dba-97be-48b3-a49e-745751c0c28e
fi
linuxefi /boot/vmlinuz-4.15.0-rc3+ root=/dev/mapper/linux-fedora ro rd.lvm.lv=fedora/root rd.lvm.lv=fedora/swap rhgb quiet rd.driver.blacklist=nouveau iommu=1 amd_iommu=on rd.driver.pre=vfio-pci
initrdefi /boot/initramfs-4.15.0-rc3+.img
}
请注意第 13 行的部分内容:
linuxefi ... root=/dev/mapper/linux-fedora ro rd.lvm.lv=fedora/root rd.lvm.lv=fedora/swap blah blah blah
现在我机器上的Linux 东西位于一个LVM 组中,该组以前称为fedora,并分为两个卷:root 和swap。这就是为什么你会看到
rd.lvm.lv=fedora/root
和
rd.lvm.lv=fedora/swap
但是当我添加 Ubuntu 安装时,我将组名称更改为 root,现在它有 3 个卷:fedora、ubuntu 和 swap。但每当我生成新的 grub 文件时,它似乎不记得这些新名称。修复非常简单:只需在启动期间将行更改为正确的安装点,然后在 Fedora 启动时手动修复它。但令我恼火的是,当我编译新内核并必须更新 grub 时,我必须每隔几周就这样做一次。
这让我看到一个快速侧边栏:(如何删除不再使用的内核?我的 grub 菜单现在非常混乱)
长话短说:对我的 LVM 组的旧命名约定的引用在哪里?
答案1
对于那些在 Google 上找到这个问题的人:
您可以编辑文件“/etc/default/grub”。查找以“GRUB_CMDLINE_LINUX”开头的行