我们lsof
可以看到以下输出
lsof /var | grep delete
rsyslogd 9664 root 4w REG 253,2 25589554694 67267903 /var/log/messages-20210513 (deleted)
rsyslogd 9664 root 7w REG 253,2 9865832185 67294059 /var/log/secure-20210619 (deleted)
libvirtd 9666 root 21r REG 253,2 10406312 134328488 /var/lib/sss/mc/initgroups (deleted)
qmgr 10241 postfix 8r REG 253,2 10406312 134328488 /var/lib/sss/mc/initgroups (deleted)
gdm-sessi 13304 root 8r REG 253,2 10406312 134328488 /var/lib/sss/mc/initgroups (deleted) <-----------------------
dbus-daem 14198 gdm 4r REG 253,2 10406312 134328488 /var/lib/sss/mc/initgroups (deleted)
dbus-daem 14535 gdm 5r REG 253,2 10406312 134328488 /var/lib/sss/mc/initgroups (deleted)
sssd 16743 root 15r REG 253,2 10406312 134328488 /var/lib/sss/mc/initgroups (deleted)
sssd_be 16746 root 22r REG 253,2 10406312 134328488 /var/lib/sss/mc/initgroups (deleted)
经过调查,我们发现gdm-session
from ~40G
/var
作为已删除的文件
所以在我们杀死 PID 之后 -->13304
我们/var
从98%
使用减少到59.4G
使用
因为我们正在处理非常重要的生产服务器
我们想知道是否可以避免这种行为,即某些已删除的文件可能会通过访问gdm-session
而导致操作系统崩溃/var
100%
- /var大小为100G
感谢任何有用的建议?
答案1
您可以通过以下方式定义进程的最大文件大小限制prlimit
prlimit --fsize=1G:2G -p 12345
将 PID 进程的软文件大小限制和硬文件大小限制12345
分别设置为 1 GB 和 2 GB(或 gibi ...不完全确定)。这甚至可以在该过程开始之后完成。
请注意,如果达到限制,这将终止该进程。更多内容请参见info
页面。