修改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 包。

相关推荐
青梅橘子皮8 小时前
Linux---基本指令
linux·运维·服务器
REDcker8 小时前
Linux信号机制详解 POSIX语义与内核要点 sigaction与备用栈实践
linux·运维·php
cui_ruicheng9 小时前
Linux进程间通信(三):System V IPC与共享内存
linux·运维·服务器
蚰蜒螟9 小时前
深入 Linux 内核同步机制:从 futex 到 spinlock 的完整旅程
linux·windows·microsoft
运维全栈笔记9 小时前
Linux安装配置Tomcat保姆级教程:从部署到性能调优
linux·服务器·中间件·tomcat·apache·web
dllmayday11 小时前
Linux 上用终端连接 WiFi
linux·服务器·windows
ACP广源盛1392462567311 小时前
IX8024与科学大模型的碰撞@ACP#筑牢科研 AI 算力高速枢纽分享
运维·服务器·网络·数据库·人工智能·嵌入式硬件·电脑
峥无12 小时前
Linux系统编程基石:静态库·动态库·ELF文件·进程地址空间全景图
linux·运维·服务器
用户23678298016812 小时前
从 chmod 755 说起:Unix 文件权限到底是怎么算的?
linux
Strugglingler12 小时前
【systemctl 学习总结】
linux·systemd·systemctl·journalctl·unit file