Skip to content

Commit 593f774

Browse files
committed
linux: arch kernel 6.16.1-arch1
Signed-off-by: Luc Ma <[email protected]>
1 parent b13456e commit 593f774

File tree

1 file changed

+27
-1
lines changed

1 file changed

+27
-1
lines changed

source/_posts/lnx/arch.md

Lines changed: 27 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -61,11 +61,37 @@ yay -S fcitx5-sogou
6161

6262
# 编译内核
6363

64+
要制作一个可启动的内核,涉及到 3 个步骤
65+
66+
- 编译内核,生成内核 ELF 可执行文件 vmlinuz (压缩格式),安装内核模块
67+
- 生成初始内存文件系统 initramfs
68+
- 更新 grub.cfg
69+
70+
总的来说,在 Arch Linux 上制作一个可启动的新内核,让系统能够用新内核正常工作,是相对比较简单的,这也是我放弃 openKylin,转向 Arch Linux 的主要原因,在 openKylin 上,光是找到目前正在运行的内核源码都费半天劲儿,包括内核源码库,整个发行版的软件包源码仓库,软件版本管理都有点混乱。
71+
6472
## vmlinuz
6573

74+
```bash
75+
make
76+
sudo make modules_installsudo grub-mkconfig -o /boot/grub/grub.cfg
77+
sudo make install
78+
```
79+
80+
内核配置 .config 可以通过 `zcat /proc/config.gz > .config` 得到一个基础配置,然后 `make menuconfig` 在此基础上修改保存。
81+
6682
## initramfs
6783

68-
## mkinitcpio
84+
```bash
85+
sudo mkinitcpio --generate /boot/initramfs-6.16.1-arch1.img --kernel 6.16.1-arch1
86+
```
87+
88+
## grub.cfg
89+
90+
```bash
91+
sudo grub-mkconfig -o /boot/grub/grub.cfg
92+
```
93+
94+
如果修改了默认的 grub 配置 (`/etc/default/grub`),同样需要 `grub-mkconfig -o /boot/grub/grub.cfg`, 让新配置(如 kernel cmd parameters)生效。
6995

7096
# 截屏 Greeter
7197

0 commit comments

Comments
 (0)