在 CentOS 系统中,“message 磁盘满了”(通常指 /var/log/messages 或系统提示磁盘空间不足)一般不是“message 这个文件本身满了”,而是磁盘空间被占满,导致系统日志无法写入或系统报警。常见原因和排查方法如下:
/var/log 日志占满(最常见)/var/log/messages/var/log/maillog/var/log/secure/var/log/cron某些服务(如 nginx、mysql、docker)日志异常暴增。
df -i
如果 IUsed 接近 IFree,说明是小文件太多。
core.*lsof | grep deleted
文件删了但空间不释放。
/var 没单独挂载df -h
确认是哪块盘(通常是 /)
df -i
du -sh /* 2>/dev/null
du -sh /var/* 2>/dev/null
ls -lh /var/log/
lsof | grep deleted
# 清空 messages(不删文件)
> /var/log/messages
# 或
journalctl --vacuum-size=100M
vi /etc/logrotate.conf
确保有:
/var/log/messages {
rotate 7
daily
compress
missingok
notifempty
}
systemctl restart 服务名
你可以把下面命令的输出贴出来,我可以精准告诉你哪满了:
df -h
df -i
du -sh /var/log/*
如果你说的 “message 磁盘满了”是某个具体报错原文,也直接贴出来更好判断。