/boot目录是Linux系统启动核心,存放vmlinuz、initramfs、System.map、config及grub等关键文件;需设权限555并锁定重要文件;清理旧内核前确认当前版本,用apt autoremove或purge;升级前应备份当前内核及相关文件并配置GRUB回滚。

/boot 目录是 Linux 系统启动的“心脏地带”,里面存放着决定系统能否顺利开机的关键文件。管理好这里的内核镜像,既关系到日常更新的稳定性,也影响系统安全和磁盘空间使用效率。
关键内核文件各司其职
/boot 下不是一堆名字相似的文件那么简单,每类都有明确分工:
- vmlinuz-xxx:压缩后的可执行内核镜像,GRUB 加载并跳转执行的主体;
- initrd.img-xxx 或 initramfs-xxx:启动早期的临时根环境,含必要驱动与工具,用于挂载真实根文件系统;
- System.map-xxx:内核符号表,调试日志、kdump 分析时依赖,非启动必需但建议保留;
- config-xxx:该内核编译时启用/禁用功能的快照,排查驱动兼容性或定制内核时必查;
- grub/ 子目录:含 grub.cfg、模块和字体,控制 GRUB 菜单内容与引导逻辑。
权限与保护不可松懈
/boot 目录默认属主为 root,但权限设置容易被忽略:
- 目录权限应为 dr-xr-xr-x(即 555),禁止写入;
- 关键文件如 vmlinuz-*、initramfs-* 和 grub.cfg 建议用
chattr +i锁定,防止意外或恶意覆盖; - 若发现 /boot 可被普通用户写入,或某内核镜像权限为 644,需立即修正:
sudo chmod 600 /boot/vmlinuz-*并检查所属组。
清理旧内核要先识别再动手
Ubuntu/Debian 系统更新后常残留多版内核,易导致 /boot 空间告急。清理前务必确认哪些能删:
- 运行
dpkg --get-selections | grep -E 'linux-image|linux-headers'列出所有安装的内核包; - 用
uname -r查看当前运行版本,该版本对应的所有 linux-image、linux-headers、linux-modules 包必须保留; - 删除旧版时,推荐使用
sudo apt autoremove --purge(自动识别并卸载未用内核);手动清理则用sudo apt purge linux-image-5.4.0-123-generic linux-headers-5.4.0-123-generic; - 清理后执行
sudo update-grub,确保 GRUB 菜单同步更新。
备份与回滚有备无患
升级或更换内核前,保留一份可启动的旧配置很实用:
- 复制当前有效内核相关文件:
cp /boot/vmlinuz-$(uname -r) /boot/vmlinuz-$(uname -r).backup; - 同样备份 initramfs 和 System.map:
cp /boot/initramfs-$(uname -r).img /boot/initramfs-$(uname -r).img.backup; - 修改 /boot/grub/grub.cfg 中 default 行(或编辑 /etc/default/grub 后运行
update-grub),可将备份内核设为默认启动项; - 注意:直接编辑 grub.cfg 不持久,应改 /etc/default/grub 中的
GRUB_DEFAULT值再生成。


















