暗影翔 发表于 2023-11-12 21:01

[求助]linux引导分区与主分区/boot内容不一致如何处理

本帖最后由 暗影翔 于 2023-11-12 21:13 编辑

自己电脑装得manjaro,长时间不开,滚的东西多容易出错,然后就用u盘livecd进入重新装linux-kernel修复。
长期有三个内核,5.15 lts,6.1 lts和最新内核。
三系统:windows10、debian、manjaro,为减轻出问题的概率(主要是windows启动分区太小),grub分区与windws启动分区分开,平常用grub分区启动。
本次修复把grub分区内容rm,重新装grub,livecd里的内核为5.15,进入修好的manjaro安装了6.1 lts和6.6。但是主分区的boot目录下还是5.15、6.1 lts和6.5。遂求助该如何处理?难道是删了boot下内容,不挂载grub分区,重装grub到/boot?
下面列出两个boot的内容

☁~ls /boot
amd-ucode.img                     initramfs-5.15-x86_64.img          initramfs-6.5-x86_64.imgmemtest86+         vmlinuz-6.5-x86_64
efi                                 initramfs-6.1-x86_64-fallback.imglinux515-x86_64.kver      syslinux
grub                              initramfs-6.1-x86_64.img         linux61-x86_64.kver       vmlinuz-5.15-x86_64
initramfs-5.15-x86_64-fallback.imginitramfs-6.5-x86_64-fallback.imglinux65-x86_64.kver       vmlinuz-6.1-x86_64
☁~sudo mount /dev/nvme1n1p1 /mnt
dpm 的密码:☁~ls /mnt
EFI                                 initramfs-6.1-x86_64-fallback.imglinux515-x86_64.kvervmlinuz-6.1-x86_64
grub                              initramfs-6.1-x86_64.img         linux61-x86_64.kver   vmlinuz-6.6-x86_64
initramfs-5.15-x86_64-fallback.imginitramfs-6.6-x86_64-fallback.imglinux66-x86_64.kver
initramfs-5.15-x86_64.img         initramfs-6.6-x86_64.img         vmlinuz-5.15-x86_64
☁~ls /mnt/efi
manjaro
☁~         



tsubasa9 发表于 2023-11-12 21:07

本帖最后由 tsubasa9 于 2023-11-12 21:09 编辑

没看懂你在干啥,但是grub是静态配置,更新内核需要手动grub-mkconfig

当然debian系可以自动调用update-grub包含了这一步
如果你说的是vmlinuz,要用mkinitcpio或update-initramfs生成

すぴぱら 发表于 2023-11-12 21:07

暗影翔 发表于 2023-11-12 21:11

tsubasa9 发表于 2023-11-12 21:07
没看懂你在干啥,但是grub是静态配置,更新内核需要手动grub-mkconfig
当然debian系可以自动调用update-gru ...

我有两个单独的启动分区,一个是windows安装自动生成的,另一个是为了解决多系统问题自建的500mb grub分区。
linux安装时会在主分区内建立一个boot文件夹,内容就是grub的启动。
但是我实际是有单独的grub分区。

暗影翔 发表于 2023-11-12 21:11

すぴぱら 发表于 2023-11-12 21:07
改fstab 把boot挂到你要的那个boot分区上,然后把旧的删了

大佬的意思是主分区里的/boot/删掉,然后通过fstab把grub删掉?
这样会有问题么?

tsubasa9 发表于 2023-11-12 21:14

暗影翔 发表于 2023-11-12 21:11
我有两个单独的启动分区,一个是windows安装自动生成的,另一个是为了解决多系统问题自建的500mb grub分 ...

改fstab后先重装以下grub就行
当然我不明白你指的grub分区是什么
一般/boot/efi是单独的efi分区,/boot则是直接在/下的目录不会单独分区

すぴぱら 发表于 2023-11-12 21:18

5long 发表于 2023-11-12 21:24

先看一下你的 Linux 主分区的 /etc/fstab , 确定一下 ESP (应该是 nvme1n1p1 吧) 是挂载到 /boot 还是 /boot/efi 的?
这个事没有固定标准
我自己的机器都是挂在 /boot 的

用u盘livecd进入重新装linux-kernel修复

目测可能是"进入"之前没挂载 ESP
正常来说, 挂载点应该是个空目录, 在挂载分区之后才会有内容

帆影FX 发表于 2023-11-12 21:56

要不你看看arch安装手册是怎么挂载esp和装grub的。还有既然都重装grub了要不你换refind试试,一个盘esp分区只要一个就行了。
页: [1]
查看完整版本: [求助]linux引导分区与主分区/boot内容不一致如何处理