惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

Schneier on Security
Schneier on Security
K
Kaspersky official blog
Know Your Adversary
Know Your Adversary
Project Zero
Project Zero
F
Fox-IT International blog
Recorded Future
Recorded Future
P
Privacy International News Feed
S
Schneier on Security
Cisco Talos Blog
Cisco Talos Blog
GbyAI
GbyAI
Cyberwarzone
Cyberwarzone
CTFtime.org: upcoming CTF events
CTFtime.org: upcoming CTF events
F
Full Disclosure
雷峰网
雷峰网
爱范儿
爱范儿
有赞技术团队
有赞技术团队
T
Threat Research - Cisco Blogs
博客园 - 三生石上(FineUI控件)
大猫的无限游戏
大猫的无限游戏
博客园 - Franky
T
Tenable Blog
D
DataBreaches.Net
T
The Exploit Database - CXSecurity.com
S
Securelist
D
Darknet – Hacking Tools, Hacker News & Cyber Security
I
Intezer
S
SegmentFault 最新的问题
博客园_首页
Google DeepMind News
Google DeepMind News
A
Arctic Wolf
O
OpenAI News
Y
Y Combinator Blog
Microsoft Azure Blog
Microsoft Azure Blog
Latest news
Latest news
D
Docker
P
Proofpoint News Feed
J
Java Code Geeks
A
About on SuperTechFans
Application and Cybersecurity Blog
Application and Cybersecurity Blog
L
Lohrmann on Cybersecurity
P
Proofpoint News Feed
SecWiki News
SecWiki News
The Cloudflare Blog
Google Online Security Blog
Google Online Security Blog
S
Security @ Cisco Blogs
Martin Fowler
Martin Fowler
李成银的技术随笔
博客园 - 聂微东
T
Threatpost
N
News | PayPal Newsroom

方寸之間

安装定制化 Vim - 方寸之間 树莓派配置旁路由过程记录 - 方寸之間 Cloudflare Tunnel 不完全上手指南 - 方寸之間 解除 New Bing 地区和浏览器限制的方法 - 方寸之間 FRP 上手教程 - 方寸之間 深入理解 Linux nohup 命令 - 方寸之間 C++智能指针是什么 - 方寸之間 PGP 工作原理详解 - 方寸之間 如何恢复 Windows EFI 分区 - 方寸之間 Scaleway IPV6 server 申请及使用攻略 - 方寸之間 Arch Linux 升级系统提示签名无效 - 方寸之間 Arch Linux 音响有杂音的解决办法 - 方寸之間 Arch Linux 如何切换内核 - 方寸之間 Django 项目时区更改错误的解决方案 - 方寸之間 超简单的 Arch Linux + Windows 双启动教程 - 方寸之間 使用 UFW 配置 Linux 防火墙 - 方寸之間 Git 中的一个特殊 hash - 方寸之間 深入理解数据库事务 - 方寸之間 CRLF 和 LF 之间的区别与联系 - 方寸之間 DNS 的更新是如何工作的? - 方寸之間 浅析 Linux 的 cron 命令 - 方寸之間 如何快速查看 github 代码库中早期 commits - 方寸之間 黑科技:使用 GitHub 搭建自己的短链接服务 - 方寸之間 Build site with Franklin.jl - 方寸之間 iwd 的使用教程 - 方寸之間 超好用的 UML 工具推荐 - 方寸之間 ArchLinux 安装配置笔记 (Updated) - 方寸之間 如何将 Julia 添加到 Jupyter Notebook - 方寸之間 费曼技巧:最好的学习方式 - 方寸之間 How to Create Linux Desktop Entry - 方寸之間 Make a TODO robot with Github Actions - 方寸之間 C++继承 多态 虚函数 - 方寸之間 C++ inline 关键字详解 - 方寸之間 C++ Static 关键字详解 - 方寸之間 C++ type conversion notes - 方寸之間 Solution for _CRT_SECURE_NO_WARNINGS error - 方寸之間 IR Homework - 方寸之間 Customize Ubuntu themes, icons and Shell - 方寸之間 恢复右键菜单的新建命令 - 方寸之間 Hugo+Github 搭建个人博客 - 方寸之間
修复 Arch Linux 的内核缺失问题 - 方寸之間
Mercas · 2023-08-20 · via 方寸之間

Arch Linux 系统启动进入 grub 界面,提示 vmlinuz-zen not found,这里记录一下解决方案

起因#

早上打开电脑,Terminal 久违地更新一下系统,因为太久没更新,很多要更新的包,所以更新的时候打开浏览器去做别的事了,结果还没看两分钟,电脑突然黑屏了。。。什么反应都没有,但是能听到电脑还在转,也没多想,我就直接强制关机了。结果,再启动电脑,进入 grub 界面,直接不动了(一般默认 5s 自动选择),手动选择,提示:

Loading kernel linux-zen

error: file '/boot/vmlinuz-linux-zen' not found

Loading initial ramdisk

error: you need to load the kernel first

Press any key to continue...

猜测应该是因为更新内核的时候电脑被强制关机导致内核出问题了。在 Arch Linux BBS 上找到了一些解决方案,这里记录一下。

我使用的是linux-zen内核,所以后面的相关内容都有-zen后缀,这个根据你自己的配置更改,一般安装的都是linux内核,去掉-zen后缀即可。

解决方案#

使用 Arch Linux 安装介质#

  1. 进入 live 环境后,连接网络,我用的是 iwd

[root@archiso]# iwctl

[iwd]# station wlan0 connect wifi-ssid # 连接指定 Wi-Fi

[iwd]# station wlan0 show # 确认是否连接成功

[iwd]# exit

  1. 挂载/boot分区

mount /dev/sdaX /mnt

mount /dev/sdaY /mnt/boot

  1. chroot 系统,重新安装内核

arch-chroot /mnt

pacman -S linux-zen

  1. 重新生成 grub 引导

grub-mkconfig -o /boot/grub/grug.cfg

  1. 取消挂载分区,重启

exit

umount -R /mnt

reboot

启动之后,就可以正常进入系统了。

grub 命令行#

这个方法和上面的类似,不过不用使用安装介质

确认/分区位置#

  1. 使用ls列出电脑上所有硬盘,输出类似:

grub>ls

(hd0) (hd0, gpt1) ...... (hd1, gpt4)

  1. 确认/分区,可以使用cat/ls命令+Tab测试,例如:

grub>ls (hd0,gpt3)/ TAB

boot usr ....

上面的输出说明(hd0,gpt3)/ 分区。

手动加载内核#

  1. 设置根分区和 grub 路径前缀 假设(hd0,gpt3)是根分区:

grub>set root=(hd0,gpt3)

grub>set prefix=(hd0,gpt3)/boot/grub

  1. 加载内核和系统镜像

grub>cat (hd0,gpt3)/boot/grub/grub.cfg #确认`/`分区的设备名称,假设是`/dev/sda3`

grub>linux /boot/vmlinuz-linux-zen root=/dev/sda3

grub>initrd /boot/initrd-linux-zen.img

  1. 启动系统

grub>boot

  1. 重新配置 grub 启动之后,按照第一种方法的第 2、4、5 步,在命令行下重新生成一下 grub.cfg 文件即可。

参考链接#

https://bbs.archlinux.org/viewtopic.php?id=274616

https://wiki.archlinux.org/title/GRUB#Using_the_command_shell