vgdisplay system 的结果以及用btrfs subvolume list 看btrfs 子卷,都是在chroot下面看么
后一个命令缺少参数
参数是 “/”
我今天遇到了和你一样的情况,一模一样……但是没法解决,我也是用的和你一样的解决方法 grub2-install 以后显示 not found 之类的东西,最后我选择了重装系统。最后我还是没搞定 leap 42.3 的双显卡驱动安装,按照 wiki 来的每次都不行,我今天已经 snapper rollback 好几次了
这么说,现阶段只能先用nouveau。
好了,开干吧。
chroot 一定要记得挂载 sda7。
先删除那两个子卷:
btrfs subvolume delete boot/grub2/i386-pc
btrfs subvolume delete boot/grub2/x86_64-efi
再删除 UEFI 项:
efibootmgr -Bb 0000
efibootmgr -Bb 0002
再把 /efi/fstab 里的 x86_64-efi 和 i386-pc 的项删除掉
然后重装
grub2-install —target=x86_64-efi /dev/sda7
grub2-mkconfig -o /boot/grub2/grub.cfg
装完把 efibootmgr -v 和 /etc/fstab 的内容发上来我看看对不对。
u应该是删除/etc/fstab的两个子卷吧?不是/efi/fstab。另外,咋删除呢?不会啊。是不是要用vi打开,然e后把这两行前面加上#?
总结一下:进入rescue模式以后先以root登录,之后执行
vgchange -a y sys tem
mount /dev/mapper/system-root /mnt
mount /dev/sda7 /mnt/boot/efi
mount --bind /dev /mnt/dev
mount --bind /dev/pts /mnt/dev/pts
mount --bind /proc /mnt/proc
mount --bind /sys /mnt/sys
mount -B /run /mint/run
chroot /mnt
上述命令的—bind是不是跟-B没有任何区别?
之后
btrfs subvolume delete boot/grub2/i386-pc
btrfs subvolume delete boot/grub2/x86_64-efi
efibootmgr -Bb 0000
efibootmgr -Bb 0002
是 etc/fstab,你仔细看看? 删除方法就是:
vi /etc/fstab
按 i 进入编辑模式
把那两行删除
按 :wq 保存退出
跟 -B 没有区别,你可以 mount —help 查看
这是重装grub2之前的全部准备工作。btrfs删除两项、/etc/fstab删除那两项、efibootmgr删除那两项。
注意:/dev/sda7所挂载到的地方是/mnt/boot/efi,而不是/mnt/boot。
下面再贴一下 efibootmgr -v,btrfs subvolume list / 和 /etc/fstab 的结果我确认下,确定没什么问题就可以重启了。
你重启下试试能不能进 openSUSE 吧,我觉得没什么问题了。有问题再贴图,估计也是 NVIDIA 驱动的事情了。
不插u盘,也就是不插liveCD,重启之后 仍然是missing operating system。插上优盘,选择boot linux system结果是
Loading kernel …
error:/boot/x86_64/loader/linux not found
error:you need to load the kernel first.
是不是因为最早的时候, 我把kernel删掉了?在这个帖子最开始的地方。
WTF?你可真敢干…
进 chroot,zypper se -v kernel-default 看下
当时不是为了解决显卡驱动的问题么……我看你在回复另一个人的帖子里 说要删掉一个内核 他有两个内核 一个什么4.4.多少 一个4.11.多少。等等我把我的帖子找出来。
我觉得我可能要教你终端联网然后 zypper dup 了
但是人家有两个内核删掉一个,你搞不好是两个都删掉了
用 zypper —no-refresh se -v kernel-default