温馨提示×

Debian JS日志怎么清理

小樊
53
2026-07-13 02:42:06
栏目: 编程语言

在 Debian 系统里,“JS 日志”通常指 JavaScript 相关服务产生的日志(如 Node.js、前端构建工具、Nginx 里的 JS 错误、PM2 日志等)。下面按常见场景给你一套安全、可操作的清理方法


一、先确认是哪种“JS 日志”

1️⃣ Node.js 应用日志

常见位置:

  • ~/logs/
  • /var/log/myapp/
  • PM2 日志:~/.pm2/logs/

查看:

ls -lh ~/.pm2/logs/

2️⃣ Nginx 里的 JS 报错(前端)

Nginx 日志:

/var/log/nginx/access.log
/var/log/nginx/error.log

3️⃣ Systemd 服务日志(Node 服务)

journalctl -u your-node-service

二、安全清理方法(推荐)

✅ 方法 1:清空日志文件(不删文件,最安全)

: > /path/to/logfile.log

示例:

: > ~/.pm2/logs/app-out.log
: > ~/.pm2/logs/app-error.log

不会中断服务权限不会丢


✅ 方法 2:truncate(推荐)

truncate -s 0 /path/to/logfile.log

✅ 方法 3:journalctl 清理系统日志

sudo journalctl --vacuum-time=7d

只保留 7 天:

sudo journalctl --vacuum-size=100M

三、删除旧日志(谨慎)

rm -f /var/log/nginx/*.log.1
rm -f /var/log/myapp/*.log.old

⚠️ 不要直接 rm 正在写入的 .log 文件


四、自动清理(强烈推荐)

1️⃣ logrotate(最佳实践)

Debian 自带 logrotate

示例(Node 应用):

sudo nano /etc/logrotate.d/myapp

内容:

/var/log/myapp/*.log {
    daily
    rotate 7
    compress
    missingok
    notifempty
    copytruncate
}

测试:

sudo logrotate -d /etc/logrotate.d/myapp

2️⃣ PM2 自动清理

pm2 install pm2-logrotate
pm2 set pm2-logrotate:max_size 10M
pm2 set pm2-logrotate:retain 7

五、快速排查大日志

sudo du -sh /var/log/*
find / -name "*.log" -size +100M 2>/dev/null

六、常见错误 ❌

❌ 直接 rm 正在写入的日志
❌ 删除 /var/log 整个目录
❌ 不备份就清空生产日志


七、如果你愿意,我可以帮你精准定位

你可以直接贴出:

  • 日志路径
  • 是 Node / Nginx / Docker / 前端
  • 是否生产环境

我可以给你一条最合适、最安全的清理命令

0