温馨提示×

怎样清理ubuntu日志文件

小樊
41
2026-09-08 16:05:28
栏目: 智能运维

在 Ubuntu 中,日志文件通常集中在 /var/log 目录下,由 rsyslog / systemd-journald 管理。清理方式分为临时清理自动管理两类,下面按安全、推荐程度介绍。


一、最推荐:使用系统自带工具(安全)

1. 清理 systemd 日志(journal)

Ubuntu 默认使用 journald 记录日志:

# 查看当前日志占用空间
journalctl --disk-usage

# 清理超过 7 天的日志
sudo journalctl --vacuum-time=7d

# 限制日志总大小为 500MB
sudo journalctl --vacuum-size=500M

✅ 安全、官方推荐


2. 使用 logrotate(自动轮转,无需手动删)

Ubuntu 已默认配置:

sudo logrotate -f /etc/logrotate.conf

可编辑配置文件限制大小:

sudo nano /etc/logrotate.d/rsyslog

二、手动清理 /var/log(谨慎)

查看日志大小

sudo du -sh /var/log/*

清空单个日志(推荐“清空”而不是“删除”)

sudo truncate -s 0 /var/log/syslog
sudo truncate -s 0 /var/log/auth.log

⚠️ 不要直接 rm,可能导致服务无法写入


三、删除旧日志文件(*.gz)

sudo rm -f /var/log/*.gz
sudo rm -f /var/log/*.[0-9]

四、彻底禁用或限制 journal 日志(可选)

编辑:

sudo nano /etc/systemd/journald.conf

修改:

Storage=auto
SystemMaxUse=200M

重启:

sudo systemctl restart systemd-journald

五、一键清理脚本(示例)

#!/bin/bash
sudo journalctl --vacuum-time=7d
sudo truncate -s 0 /var/log/syslog
sudo truncate -s 0 /var/log/auth.log
sudo rm -f /var/log/*.gz

六、不推荐的做法

rm -rf /var/log
❌ 删除正在写入的日志文件
❌ 关闭日志服务(不利于排错)


如果你愿意,可以告诉我:

  • Ubuntu 版本
  • 日志占用多大
  • 是服务器还是桌面版

我可以给你更精确的清理方案

0