<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="zh">
	<id>https://arolstar52-zhtest.hf.space/index.php?action=history&amp;feed=atom&amp;title=Kdump</id>
	<title>Kdump - 版本历史</title>
	<link rel="self" type="application/atom+xml" href="https://arolstar52-zhtest.hf.space/index.php?action=history&amp;feed=atom&amp;title=Kdump"/>
	<link rel="alternate" type="text/html" href="https://arolstar52-zhtest.hf.space/index.php?title=Kdump&amp;action=history"/>
	<updated>2026-07-15T18:16:51Z</updated>
	<subtitle>在这个wiki上该页的修订历史</subtitle>
	<generator>MediaWiki 1.43.9</generator>
	<entry>
		<id>https://arolstar52-zhtest.hf.space/index.php?title=Kdump&amp;diff=3045135&amp;oldid=prev</id>
		<title>imported&gt;InternetArchiveBot：​补救12个来源，并将0个来源标记为失效。) #IABot (v2.0.8</title>
		<link rel="alternate" type="text/html" href="https://arolstar52-zhtest.hf.space/index.php?title=Kdump&amp;diff=3045135&amp;oldid=prev"/>
		<updated>2021-02-07T09:17:15Z</updated>

		<summary type="html">&lt;p&gt;补救12个来源，并将0个来源标记为失效。) #IABot (v2.0.8&lt;/p&gt;
&lt;p&gt;&lt;b&gt;新页面&lt;/b&gt;&lt;/p&gt;&lt;div&gt;{{NoteTA&lt;br /&gt;
 |G1 = IT&lt;br /&gt;
 |T  = kdump&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;kdump&amp;#039;&amp;#039;&amp;#039;是[[Linux内核]]的一个功能，可在发生[[内核错误]]时创建[[核心转储]]。当被触发时，kdump会导出一个内存映像（也称为vmcore），该映像可用于[[调试]]和确定崩溃的原因。 [[主内存]]的转储映像作为[[可執行與可鏈接格式|可执行与可链接格式]]（ELF）对象导出，可以在处理内核崩溃时通过&amp;lt;code&amp;gt;/proc/vmcore&amp;lt;/code&amp;gt;直接访问，也可以自动保存到本地可访问的[[文件系统]]、 [[裸设备]]或通过[[计算机网络|网络]]访问的远程系统。&amp;lt;ref name=&amp;quot;lwn-108595&amp;quot;&amp;gt;{{Cite web|url=https://lwn.net/Articles/108595/|title=Crash dumps with kexec|accessdate={{date|2014-08-09|mdy}}|author=Jonathan Corbet|date={{date|2004-10-27|mdy}}|publisher=[[LWN.net]]|archive-date=2020-04-01|archive-url=https://web.archive.org/web/20200401060331/https://lwn.net/Articles/108595/|dead-url=no}}&amp;lt;/ref&amp;gt;&amp;lt;ref name=&amp;quot;oracle&amp;quot;&amp;gt;{{Cite web|url=http://docs.oracle.com/cd/E37670_01/E37355/html/ol_kdump_diag.html|title=13.2 About Kdump (Chapter 13: Support Diagnostic Tools)|accessdate={{date|2014-08-09|mdy}}|year=2012|publisher=[[Oracle Corporation]]|archive-date=2019-04-22|archive-url=https://web.archive.org/web/20190422020942/https://docs.oracle.com/cd/E37670_01/E37355/html/ol_kdump_diag.html|dead-url=no}}&amp;lt;/ref&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== {{Anchor|DUMP-CAPTURE-KERNEL|CRASH}}内部 ==&lt;br /&gt;
[[File:Kdump.svg|右|缩略图|一个“双核”布局，kdump使用kexec来启动另一个内核并获得内存转储。{{Rp|10}}]]&lt;br /&gt;
在内核崩溃的情况下，kdump通过引导另一个[[Linux]]内核（称为转储捕获内核）并使用它来导出和保存内存转储来保持系统一致性。因此，系统将会启动到一个干净、可靠的环境，而不是依赖已经崩溃的内核，（继续使用已崩溃的内核）这可能会导致各种问题，例如在写入内存转储文件时导致文件系统损坏。为了实现这个“双内核”布局，kdump在内核崩溃后立即使用[[kexec]]引导到转储捕获内核，使用kexec引导“覆盖”当前运行的内核，同时避免执行[[啟動程式|bootloader]]和硬件初始化系统固件（[[BIOS]]或[[統一可延伸韌體介面|UEFI]]）。转储捕获内核可以是专门为此目的而构建的单独的Linux[[内核|内核映像]]，也可以在支持可重定位内核的[[体系结构|系统架构]]上重用主内核映像。&amp;lt;ref name=&amp;quot;lwn-108595&amp;quot; /&amp;gt;&amp;lt;ref name=&amp;quot;ols2005-kdump&amp;quot;&amp;gt;{{cite web&lt;br /&gt;
 | url = http://lse.sourceforge.net/kdump/documentation/ols2005-kdump-presentation.pdf&lt;br /&gt;
 | title = Kdump: A Kexec-based Kernel Crash Dumping Mechanism&lt;br /&gt;
 | date = {{date|2006-06-14|mdy}}&lt;br /&gt;
 | accessdate = {{date|2014-08-09|mdy}}&lt;br /&gt;
 | author1 = Vivek Goyal&lt;br /&gt;
 | author2 = Eric W. Biederman&lt;br /&gt;
 | author3 = Hariprasad Nellitheertha&lt;br /&gt;
 | website = lse.sourceforge.net&lt;br /&gt;
 | format = PDF&lt;br /&gt;
 | archive-date = 2017-08-22&lt;br /&gt;
 | archive-url = https://web.archive.org/web/20170822113906/http://lse.sourceforge.net/kdump/documentation/ols2005-kdump-presentation.pdf&lt;br /&gt;
 | dead-url = no&lt;br /&gt;
 }}&amp;lt;/ref&amp;gt;&amp;lt;ref name=&amp;quot;kernel-docs&amp;quot;&amp;gt;{{cite web&lt;br /&gt;
 | url = https://www.kernel.org/doc/Documentation/kdump/kdump.txt&lt;br /&gt;
 | title = Linux kernel documentation: Documentation/kdump/kdump.txt&lt;br /&gt;
 | date = {{date|2013-08-12|mdy}}&lt;br /&gt;
 | accessdate = {{date|2014-08-09|mdy}}&lt;br /&gt;
 | publisher = [[kernel.org]]&lt;br /&gt;
 | archive-date = 2020-08-06&lt;br /&gt;
 | archive-url = https://web.archive.org/web/20200806075312/https://www.kernel.org/doc/Documentation/kdump/kdump.txt&lt;br /&gt;
 | dead-url = no&lt;br /&gt;
 }}&amp;lt;/ref&amp;gt;&amp;lt;ref&amp;gt;{{cite web&lt;br /&gt;
 | url = http://ftp.suse.com/pub/people/tiwai/kdump-training/kdump-training.pdf&lt;br /&gt;
 | title = Debugging using Kdump&lt;br /&gt;
 | date = {{date|2006-07-26|mdy}}&lt;br /&gt;
 | accessdate = {{date|2014-08-09|mdy}}&lt;br /&gt;
 | author = Takashi Iwai&lt;br /&gt;
 | publisher = [[SUSE]]&lt;br /&gt;
 | format = PDF&lt;br /&gt;
 | archive-date = 2016-11-30&lt;br /&gt;
 | archive-url = https://web.archive.org/web/20161130054707/http://ftp.suse.com/pub/people/tiwai/kdump-training/kdump-training.pdf&lt;br /&gt;
 | dead-url = no&lt;br /&gt;
 }}&amp;lt;/ref&amp;gt;{{rp|5–6}}&lt;br /&gt;
&lt;br /&gt;
通过预先保留少量RAM来引导并运行转储捕获内核时，主内存（RAM）的内容得以保留，转储捕获内核预先加载到此内存中，因此主内核使用的RAM都不是在处理内核崩溃时被覆盖。这些保留的RAM仅由转储捕获内核使用，在正常系统操作期间未被使用。某些架构（包括[[x86]]和[[ppc64]]）需要RAM的一个小的固定位置部分来引导内核，而不管它在哪里加载；在这种情况下，kexec会创建该部分RAM的副本，以便转储捕获内核也可以访问它。RAM保留部分的大小和可选位置通过[[Linux启动进程|内核启动参数]]crashkernel指定，并且在主内核启动之后使用kexec[[控制台应用程序]]来将转储捕获内核映像及其关联的[[initrd]]映像预加载到保留部分的RAM。&amp;lt;ref name=&amp;quot;lwn-108595&amp;quot; /&amp;gt;&amp;lt;ref name=&amp;quot;ols2005-kdump&amp;quot; /&amp;gt;&amp;lt;ref name=&amp;quot;kernel-docs&amp;quot; /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
除了作为Linux内核一部分的功能外，其他用户空间实用程序也支持kdump机制，包括上述的kexec实用程序。 除了作为kexec用户空间实用程序套件的补丁提供的官方实用程序外，某些[[Linux发行版]]还提供了其他实用程序，可简化kdump操作的配置，包括自动保存内存转储文件的设置。&amp;lt;ref&amp;gt;{{Cite web|url=https://access.redhat.com/documentation/en-US/Red_Hat_Enterprise_Linux/6/html/Deployment_Guide/s2-kdump-configuration-gui.html|title=29.2.2. Using the Kernel Dump Configuration Utility (Red Hat Enterprise Linux 6 Deployment Guide)|accessdate={{date|2014-08-09|mdy}}|publisher=[[Red Hat]]|archive-date=2017-07-05|archive-url=https://web.archive.org/web/20170705023802/https://access.redhat.com/documentation/en-US/Red_Hat_Enterprise_Linux/6/html/Deployment_Guide/s2-kdump-configuration-gui.html|dead-url=no}}&amp;lt;/ref&amp;gt;&amp;lt;ref&amp;gt;{{Cite web|url=https://www.suse.com/documentation/sles11/book_sle_tuning/data/cha_tuning_kdump_basic.html|title=kexec and kdump: Basic kdump Configuration (System Analysis and Tuning Guide)|accessdate={{date|2014-08-09|mdy}}|date={{date|2014-04-25|mdy}}|publisher=[[SUSE]]|archive-date=2016-03-04|archive-url=https://web.archive.org/web/20160304030148/https://www.suse.com/documentation/sles11/book_sle_tuning/data/cha_tuning_kdump_basic.html|dead-url=no}}&amp;lt;/ref&amp;gt;&amp;lt;ref&amp;gt;{{Cite web|url=http://fedoraproject.org/wiki/How_to_use_kdump_to_debug_kernel_crashes|title=How to use kdump to debug kernel crashes|accessdate={{date|2014-08-09|mdy}}|date={{date|2014-04-09|mdy}}|publisher=[[Fedora (operating system)|Fedora]]|archive-date=2020-11-12|archive-url=https://web.archive.org/web/20201112011053/https://fedoraproject.org/wiki/How_to_use_kdump_to_debug_kernel_crashes|dead-url=no}}&amp;lt;/ref&amp;gt; 可以使用[[GNU侦错器|GNU Debugger]]（gdb）或Red Hat的专用崩溃实用程序分析创建的内存转储文件。&amp;lt;ref&amp;gt;{{Cite web|url=http://people.redhat.com/~anderson/crash_whitepaper/|title=White Paper: Red Hat Crash Utility|accessdate={{date|2014-08-09|mdy}}|author=David Anderson|date={{date|2010-08-27|mdy}}|publisher=[[Red Hat]]|archive-url=https://web.archive.org/web/20181210212754/http://people.redhat.com/~anderson/crash_whitepaper/|archive-date=2018-12-10|dead-url=yes}}&amp;lt;/ref&amp;gt;&amp;lt;ref&amp;gt;{{Cite web|url=https://www.suse.com/documentation/sles11/book_sle_tuning/data/cha_tuning_kdump_analyze.html|title=kexec and kdump: Analyzing the Crash Dump (System Analysis and Tuning Guide)|accessdate={{date|2014-08-09|mdy}}|date={{date|2014-04-25|mdy}}|publisher=[[SUSE]]|archive-date=2016-03-04|archive-url=https://web.archive.org/web/20160304025314/https://www.suse.com/documentation/sles11/book_sle_tuning/data/cha_tuning_kdump_analyze.html|dead-url=no}}&amp;lt;/ref&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== 历史 ==&lt;br /&gt;
kdump功能与kexec一起被合并到内核版本2.6.13的Linux内核主线中，该版本于2005年8月29日发布&lt;br /&gt;
&amp;lt;ref&amp;gt;{{Cite web|url=http://kernelnewbies.org/Linux_2_6_13|title=Linux kernel 2.6.13|accessdate={{date|2014-08-09|mdy}}|date={{date|2005-08-29|mdy}}|archive-date=2020-10-19|archive-url=https://web.archive.org/web/20201019213140/https://kernelnewbies.org/Linux_2_6_13|dead-url=no}}&amp;lt;/ref&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== 参见 ==&lt;br /&gt;
&lt;br /&gt;
* {{tsl|en|debugfs}}{{Spaced en dash}}Linux一个专门为调试目的而设计的基于RAM的文件系统&lt;br /&gt;
* {{tsl|en|kdump (BSD)|kdump (BSD)}}{{Spaced en dash}} 用于查看由ktrace实用程序生成的跟踪文件的BSD实用程序&lt;br /&gt;
* [[Linux内核oops]]{{Spaced en dash}} 一个潜在的非致命性偏离正确的行为Linux内核&lt;br /&gt;
&lt;br /&gt;
== 参考文献 ==&lt;br /&gt;
{{Reflist|30em}}&lt;br /&gt;
&lt;br /&gt;
== 外部链接 ==&lt;br /&gt;
&lt;br /&gt;
* {{Official website|http://lse.sourceforge.net/kdump/}}&lt;br /&gt;
* [http://lse.sourceforge.net/kdump/documentation/ols2oo5-kdump-paper.pdf Kdump, a Kexec-based Kernel Crash Dumping Mechanism] {{Wayback|url=http://lse.sourceforge.net/kdump/documentation/ols2oo5-kdump-paper.pdf |date=20191029235346 }}, [[IBM]], 2005, by Vivek Goyal, Eric W. Biederman, and Hariprasad Nellitheertha&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{Linux内核}}&lt;br /&gt;
{{操作系统}}&lt;br /&gt;
&lt;br /&gt;
[[Category:用C編程的自由軟體]]&lt;br /&gt;
[[Category:Linux内核功能]]&lt;br /&gt;
[[Category:Unix编程工具]]&lt;/div&gt;</summary>
		<author><name>imported&gt;InternetArchiveBot</name></author>
	</entry>
</feed>