在Ubuntu中,您可以使用ulimit命令来限制核心转储文件(core dump)的大小。以下是如何设置核心转储文件大小限制的步骤:
打开终端。
查看当前的核心转储文件大小限制,运行以下命令:
ulimit -c
如果输出为0,表示核心转储文件被禁用。
要启用核心转储文件并设置大小限制,请运行以下命令:
ulimit -c unlimited
这将允许无限制大小的核心转储文件。如果您希望设置特定大小的限制,可以将unlimited替换为所需的大小(以KB为单位)。例如,要设置核心转储文件大小限制为100MB,请运行:
ulimit -c 104857600
请注意,这些更改仅对当前shell会话有效。要使更改永久生效,请将相应的ulimit命令添加到系统配置文件中。
对于基于systemd的系统(如Ubuntu 16.04及更高版本),请将以下行添加到/etc/systemd/system.conf和/etc/systemd/user.conf文件中(根据需要选择适当的文件):
default-core-file-size=100M
然后,重新加载systemd配置并重启系统:
sudo systemctl daemon-reload
sudo reboot
对于基于SysVinit的系统(如Ubuntu 14.04),请将以下行添加到/etc/security/limits.conf文件中:
* soft core unlimited
* hard core unlimited
这将为所有用户设置无限制的核心转储文件大小。如果您希望为特定用户设置限制,请将*替换为用户名。
完成这些步骤后,核心转储文件大小限制将生效。