找回密码
 立即注册
搜索
查看: 1911|回复: 8

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

[复制链接]
     
发表于 2023-11-12 21:01 | 显示全部楼层 |阅读模式
本帖最后由 暗影翔 于 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的内容

  1. ☁  ~  ls /boot
  2. amd-ucode.img                       initramfs-5.15-x86_64.img          initramfs-6.5-x86_64.img  memtest86+           vmlinuz-6.5-x86_64
  3. efi                                 initramfs-6.1-x86_64-fallback.img  linux515-x86_64.kver      syslinux
  4. grub                                initramfs-6.1-x86_64.img           linux61-x86_64.kver       vmlinuz-5.15-x86_64
  5. initramfs-5.15-x86_64-fallback.img  initramfs-6.5-x86_64-fallback.img  linux65-x86_64.kver       vmlinuz-6.1-x86_64
  6. ☁  ~  sudo mount /dev/nvme1n1p1 /mnt
  7. [sudo] dpm 的密码:☁  ~  ls /mnt
  8. EFI                                 initramfs-6.1-x86_64-fallback.img  linux515-x86_64.kver  vmlinuz-6.1-x86_64
  9. grub                                initramfs-6.1-x86_64.img           linux61-x86_64.kver   vmlinuz-6.6-x86_64
  10. initramfs-5.15-x86_64-fallback.img  initramfs-6.6-x86_64-fallback.img  linux66-x86_64.kver
  11. initramfs-5.15-x86_64.img           initramfs-6.6-x86_64.img           vmlinuz-5.15-x86_64
  12. ☁  ~  ls /mnt/efi
  13. manjaro
  14. ☁  ~         
复制代码




回复

使用道具 举报

发表于 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删掉?
这样会有问题么?
回复

使用道具 举报

发表于 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 | 显示全部楼层
提示: 作者被禁止或删除 内容自动屏蔽
回复

使用道具 举报

     
发表于 2023-11-12 21:24 | 显示全部楼层
先看一下你的 Linux 主分区的 /etc/fstab , 确定一下 ESP (应该是 nvme1n1p1 吧) 是挂载到 /boot 还是 /boot/efi 的?
这个事没有固定标准
我自己的机器都是挂在 /boot 的

  1. 用u盘livecd进入重新装linux-kernel修复
复制代码


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

使用道具 举报

     
发表于 2023-11-12 21:56 | 显示全部楼层
要不你看看arch安装手册是怎么挂载esp和装grub的。还有既然都重装grub了要不你换refind试试,一个盘esp分区只要一个就行了。
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

Archiver|手机版|小黑屋|上海互联网违法和不良信息举报中心|网上有害信息举报专区|962110 反电信诈骗|举报电话 021-62035905|Stage1st ( 沪ICP备13020230号-1|沪公网安备 31010702007642号 )

GMT+8, 2024-9-20 20:50 , Processed in 0.031527 second(s), 5 queries , Gzip On, Redis On.

Powered by Discuz! X3.5

© 2001-2024 Discuz! Team.

快速回复 返回顶部 返回列表