如果用的时间长,服务器硬盘满了,主要是日志文件太多导致的,连上ssh后,输入下面两个命令就能清理了。

命令一

清理正在使用日志(此命令不是删除,是清理,删除会导致服务器崩溃,可以直接执行本命令)

sudo truncate -s 0 /var/log/syslog

命令二

删除以前自动日志的自动备份文件

sudo find /var/log -name "*.gz" -o -name "*.bz2" -o -name "*.[0-9]" -exec rm -f {} \;

命令三:1、2都不用,直接执行这个组合技

# 1. 清理系统日志(立即释放约 700MB)
sudo journalctl --vacuum-size=200M
sudo truncate -s 0 /var/log/syslog
sudo truncate -s 0 /var/log/mail.log
sudo truncate -s 0 /var/log/auth.log

# 2. 清理 apt 缓存
sudo apt clean
sudo apt autoremove -y

# 3. 删除旧的压缩日志(在 BillionMail 目录)
find /opt/BillionMail -name "*.gz" -exec rm -f {} \;

# 1. 启动 Docker 服务
sudo systemctl start docker

# 2. 检查 Docker 状态
sudo systemctl status docker

# 3. 进入 BillionMail 目录并启动服务
cd /opt/BillionMail
docker compose up -d

# 如果成功启动,立即清理 Docker 日志
docker compose down  # 先停止
sudo truncate -s 0 /var/lib/docker/containers/*/*-json.log
docker compose up -d  # 重新启动

# 停止服务
cd /opt/BillionMail
docker compose down

# 清空邮件存储(这是实际邮件内容)
rm -rf /opt/BillionMail/vmail-data/*
rm -rf /opt/BillionMail/postfix-data/*

# 清空数据库中的邮件记录(谨慎!)
# 进入 PostgreSQL 容器
docker compose up -d postgres
docker exec -i billionmail-postgres-1 psql -U billionmail -d billionmail <<EOF
TRUNCATE TABLE emails;
TRUNCATE TABLE email_attachments;
TRUNCATE TABLE mail_queue;
EOF

# 清理 BillionMail 的日志(3GB)
rm -rf /opt/BillionMail/logs/*
# 或者只清理旧日志
find /opt/BillionMail/logs -name "*.log" -exec truncate -s 0 {} \;

# 清理系统邮件日志
sudo truncate -s 0 /var/log/mail.log
sudo truncate -s 0 /var/log/mail.err
sudo truncate -s 0 /var/log/mail.warn

# 清空邮件存储(vmail-data 是 552MB)
rm -rf /opt/BillionMail/vmail-data/*

# 清空 postfix 队列和存储(7GB)
rm -rf /opt/BillionMail/postfix-data/*

# 通过数据库清空邮件索引(保留账号)
# 先找到 PostgreSQL 的数据目录
ls -la /opt/BillionMail/postgresql-data/

# 连接数据库(密码可能在 /opt/BillionMail/DBPASS_file.pl)
# 尝试以下命令
sudo -u postgres psql -d billionmail -c "TRUNCATE TABLE emails;"

# 查看清理效果
df -h

# 重启服务器然后用就能打开bm后台了
reboot
声明:本站所有文章,如无特殊说明或标注,均为本站原创发布。任何个人或组织,在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站、书籍等各类媒体平台。如若本站内容侵犯了原著者的合法权益,可联系我们进行处理。