首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >CentOS 7中的kdump

CentOS 7中的kdump
EN

Unix & Linux用户
提问于 2018-12-29 06:37:25
回答 3查看 1.6K关注 0票数 2

我想从CentOS 6.9迁移到CentOS 7.5。在安装过程中,我看到了一个可以启用或禁用的选项kdump。我想知道什么是kdump,禁用它对服务器有什么不好的影响?我希望稍后在我的服务器上安装数据库,我只想确保kdump没有问题。

EN

回答 3

Unix & Linux用户

回答已采纳

发布于 2018-12-29 08:42:48

kdump是一种内核崩溃倾倒机制。在系统崩溃的情况下,kdump生成内核的崩溃转储,可用于进一步分析。根据故障的严重程度,此崩溃转储可能是唯一可供进一步分析的信息。

在系统崩溃的情况下,kdump通过使用kexec系统调用将第二个内核加载到内存中。第二个内核捕获第一个内核内存的内容。此信息保存为崩溃转储。

为了允许将第二个内核加载到内存中,必须为其永久保留系统内存的一部分。第一个内核无法访问这个内存区域。保留的内存量取决于系统架构和系统上安装的总内存量。例如,具有x86_64体系结构和2 GiB已安装内存的系统将需要为kdump保留至少163968 KiB (160.25 MiB)。

RHEL 7(和CentOS 7,扩展)安装了kdump机制,并在默认情况下激活了(大多数)新安装。Anaconda安装程序为配置kdump提供了有限的选项。其他安装选项(如Kickstart )默认情况下可能没有启用kdump

有关kdump (安装、配置、使用)的更多详细信息,请参阅关于内核管理的RHEL 7文档:内核崩溃转储指南

票数 2
EN

Unix & Linux用户

发布于 2018-12-29 08:49:27

kdump在内核崩溃时转储内核内存。所以

  1. 如果您的内核从未崩溃,禁用kdump是安全的。
  2. 如果您不关心内核崩溃,禁用kdump是安全的。
  3. 如果您没有支持契约,并且不具备自己调试内核崩溃所需的知识,并且不愿意一次性支付某人诊断内核崩溃的费用,那么禁用kdump是安全的。

否则就让它启用。

对大多数人来说(1)是真的。对于其余部分,无论是(2)还是(3)都可能是真的。如果您使用嵌入式linux制作了一个高价值的设备,那么kdump就会非常有价值。

票数 2
EN

Unix & Linux用户

发布于 2021-07-30 15:54:12

kdump只用于调试内核崩溃。启用它有一个主要缺点,占用大量内存。例如,在一个拥有2GB RAM的系统上,它将消耗掉8%的内存。由于RAM通常是服务器性能的一个限制因素,因此对大多数用户来说,这是对“最弱环节”的一次打击,因此这可能是一个重大损失。除了RAM命中之外,没有其他的缺点。

我要问您的问题是:您需要调试内核崩溃吗?

CentOS及其较新的克隆,如Rocky和AlmaLinux,以及商业对应的,通常都是为了在生产环境中保持稳定而选择的。在我运行生产服务器的19+年中,我从来没有经历过CentOS或任何生产服务器上的内核崩溃,甚至那些运行“不太稳定”的发行版也是如此。

在使用实验性驱动程序或设置为桌面系统编译自己的内核时,以及在使用Gentoo或LFS这样的“尖端”Linux系统时,我只经历过一次内核崩溃。在这些情况下,我知道我要进入的是什么,我确保kdump是启用的。即使在那里,撞车也是罕见的。我为生产服务器编译了许多自定义内核,它们中没有一个崩溃过。

绝大多数运行生产服务器的人都希望禁用kdump。如果您正在使用CentOS或任何相对稳定的发行版,而不编译您自己的内核,请禁用它。一些编译自己的内核的人,如果他们对他们正在使用的设置有信心的话,甚至可能想要禁用它。

票数 1
EN
页面原文内容由Unix & Linux提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://unix.stackexchange.com/questions/491418

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档