什么是 centos /root/core.* 文件?他们吃我的硬盘直到它满了

yul*_*ika 3 core-dump

我有一个带有 130GB 硬盘的 vps 服务器。最近服务器崩溃了,我访问ssh并使用dh -h

Filesystem            Size  Used Avail Use% Mounted on
/dev/vzfs             130G  130G   0  99% /
none                  2.0G  4.0K  2.0G   1% /dev
Run Code Online (Sandbox Code Playgroud)

然后使用du -sh /*我找到root fold的 59GB。然后du -sh /root/*,一个包含一些文件的长列表,例如

...
43M     /root/core.7856
59M     /root/core.7859
59M     /root/core.7862
43M     /root/core.7883
43M     /root/core.7885
43M     /root/core.7889
59M     /root/core.7892
59M     /root/core.7904
43M     /root/core.7906
59M     /root/core.7913
43M     /root/core.7915
59M     /root/core.7940
59M     /root/core.7942
43M     /root/core.7947
43M     /root/core.7951
...
Run Code Online (Sandbox Code Playgroud)

我使用fileZilla最近 3 天创建的 1204 core.* 文件访问我的服务器。

那么什么是 centos /root/core.* 文件?它们是如何创建的?我可以删除它们而不损坏我的服务器吗?以及如何避免再次创建它们?

解决问题

linux邮件系统引起的问题。我/etc/mail/trusted-usersetc/mail/submit.cf第 552 行更改了权限。然后,不再/root/core.* files创建。

And*_*ese 7

这些是所谓的核心转储。一些信号的默认处理程序除了杀死信号的接收者之外,还会写出死亡时的内存内容和进程状态以进行事后分析。除非您打算剖析这些文件,否则您可以安全地删除它们。

您还可以抑制核心的创作通过设置适当的资源限制,以转储0(这是通过设置在做core的项目/etc/security/limits.conf0)。

您应该注意,您的系统创建这些文件的速度相当快这一事实应该提醒您,有些事情进展得不太顺利,因为某些进程经常以非预期的方式终止。这可能是由错误(自动重生)程序引起的,或者是由更严重的问题(如内存缺陷)引起的。您可能想要查看您的日志文件和dmesg输出以控制它。

  • 关闭核心转储生成是完全安全的。但是你应该明白这个核心转储不是你真正的问题,而只是一个症状。你应该开始查看 `/var/log` 中的文件,看看是否有关于崩溃进程的记录。另一种方法是调用 `dmesg` 并查看内核要说什么(我猜有问题的进程会被 `SIGBUS` 或 `SIGSEGV` 杀死,至少后者 - 分段错误 - 通常被记录由内核)。 (3认同)