我查了一下,uname -r和pacman -Qi linux显示的版本号不一样,这个问题好像是因为我昨天更新了linux内核(从5.5.3更新到5.5.4)引起的。
现在我通过pacman的缓存回退版本暂时苟住了。
pacman -U /var/cache/pacman/pkg/linux-5.5.3.arch1-1-x86_64.pkg.tar.zst
但是如果我要更新到新版本内核,怎么解决这个问题呢?
-----------------------
参考了以下这几个帖子后我找到了问题的根源
https://bbs.archlinux.org/viewtopic.php?id=171880
https://bbs.archlinux.org/viewtopic.php?id=243913
https://bbs.archlinux.org/viewtopic.php?id=194797
但我还不太确定这个问题是怎么引发的。
(大多数情况下,这个问题可能是由于在使用pacman更新系统的时候没有正确挂载/boot导致的,我不太确定自己是否属于这个情况。)
简单地说,我在根目录/和/boot目录下都找到了vmlinuz-linux和另外两个镜像文件,检查之后我发现根目录/下的vmlinuz-linux是5.5.3版本的,而/boot目录下的vmlinuz-linux是5.5.4版本的。
于是我在grub引导界面按'e'键手动修改了linux和initrd后的文件目录,改成了/boot/vmlinuz-linux和/boot/initramfs-linux-fallback.img,按crtl+x(或F10)保存并且重新运行之后可以正常启动了。
再之后我运行
grub-mkconfig -o /boot/grub/grub.cfg
来重新生成grub的配置文件,然后就一切正常了。
(我还删除了根目录下的vmlinuz-linux和另外两个镜像文件,没有任何异常...所以说他们一开始为啥会在那里,grub又为啥会指向那里,这是一个谜...)
有任何补充说明,欢迎留言。
如果下次更新系统出现任何类似的问题,我会在这个帖子继续更新。
最近编辑记录 Nivdc (2020-02-21 16:32:29)
离线
没有正确挂载,你将本该作为根文件系统的fs挂载至了/boot
反社会,精神极其不稳定,随时可能炸碎身边所有人
离线
没有正确挂载,你将本该作为根文件系统的fs挂载至了/boot
我想起来了,我安装的时候确实挂错了个盘,看fstab的时候才发现的,大概就是这个原因吧。(但愿没别的地方弄错了)
离线