修改crashkernel为0

原文地址:https://www.madbull.site/?p=2437

欢迎参观我的 网站 :无敌牛 -- 技术/著作/典籍/分享等

在 Ubuntu 系统中,crashkernel 是用于 kdump (内核崩溃转储)功能的内存预留参数。如果你不需要内核崩溃转储功能,可以将 crashkernel 设置为 0 或直接移除该参数,这样可以释放一部分内存。


方法:修改 GRUB 配置以禁用 crashkernel

步骤 1:编辑 GRUB 配置文件

复制代码
`sudo vim /etc/default/grub`

找到这一行(通常默认存在或可能不存在):

复制代码
`GRUB_CMDLINE_LINUX_DEFAULT="quiet splash crashkernel=..."`

步骤 2:修改或删除 crashkernel

  • 方式一(推荐) :显式设置为 0GRUB_CMDLINE_LINUX_DEFAULT="quiet splash crashkernel=0"
  • 方式二 :完全删除 crashkernel=... 参数(效果等同于不预留内存) GRUB_CMDLINE_LINUX_DEFAULT="quiet splash"

注意:如果系统原本没有 crashkernel 参数,则无需操作;若有(如 crashkernel=1G-4G:192M,4G-64G:256M),请替换或删除。

步骤 3:更新 GRUB 配置

复制代码
# 对于 BIOS 系统(传统)或 UEFI 系统通用:
sudo update-grub

在某些 Ubuntu 版本(如使用 systemd-boot 的 ARM/云镜像),可能需要其他方式,但绝大多数桌面/服务器版使用 GRUB。

步骤 4:重启生效

复制代码
`sudo reboot`

验证是否生效

重启后,检查内核启动参数:

复制代码
`cat /proc/cmdline`

确认输出中 没有 crashkernel= 或显示为 crashkernel=0

同时可检查是否加载了 kdump 相关服务:

复制代码
systemctl status kdump-tools   # Ubuntu 旧版本
systemctl status kdump         # 较新版本(如 22.04+)

如果不需要 kdump,建议也禁用并停止该服务:

复制代码
sudo systemctl disable --now kdump
# 或
sudo systemctl disable --now kdump-tools

补充说明

  • crashkernel=0 表示 不为 kdump 预留任何内存,节省系统资源。
  • 如果你从未配置过 kdump,系统可能默认未启用,但某些 Ubuntu 安装镜像(尤其是服务器版)会默认启用 crashkernel
  • 修改后若将来需要启用 kdump,可重新设置为合适的值(如 crashkernel=256M)并安装 linux-crashdump 包。

相关推荐
充电zcx15 小时前
Linux:4:开发工具详解
linux·运维·服务器
码农客栈19 小时前
linux 交叉编译tslib
linux
鱼月半19 小时前
两台电脑直连网络不通怎么办?
linux·网络协议
光电笑映20 小时前
网络通信基础:从协议分层到 Socket 编程预备
linux·运维·服务器·网络
酸菜。20 小时前
dw_apb_gpio总结
linux
wunaiqiezixin20 小时前
MIT 6.S081 file system 实验篇(lab9):Large files (moderate)
linux·unix·os·xv6·mit6.s081
GeW21 小时前
RHCE 考试通过率提升:核心考点、实验环境与排错技巧
linux
吴声子夜歌21 小时前
Shell编程实例——与解析相关的任务(二)
linux·运维·shell
mengge.cloud21 小时前
0917Docker 小白实验教程(理论+实操)
linux·服务器·网络·docker
Escalating_xu1 天前
【内存管理发展史】从 8086 实模式到分页:CPU 如何把虚拟地址变成物理地址
linux·缓存