ubutun日志文件自动流转

使用场景:

使用nohup ./xxx > 123.log 2>&1 &

执行程序后,123.log会随着时间的持续越来越大,那么如何在不影响原来程序的情况下,不重启,达到轮转日志的目的呢,并且是系统级的配置,无需修改程序。

解决方法:

复制代码
sudo vim /etc/logrotate.d/wx_services

/wx/ipad/run.log
/wx/LangBot-master/run.log {
    # 每天轮转一次
    daily
    # 保留30天的日志
    rotate 30
    # 文件达到100MB也触发轮转(双重保险)
    size 100M
    # 轮转时压缩旧日志(节省空间)
    compress
    # 压缩时使用gzip格式
    compressext .gz
    # 轮转后保留原始文件(不影响服务输出)
    copytruncate
    # 空文件也轮转(避免日志丢失)
    notifempty
    # 创建新日志文件时保持相同权限
    create 644 root root
    # 轮转日志的命名格式(带日期)
    dateext
    dateformat -%Y%m%d
}

# 测试配置是否正确(无报错即正常)
sudo logrotate -d /etc/logrotate.d/wx_services

# 手动执行一次轮转(立即生效)
sudo logrotate -f /etc/logrotate.d/wx_services

修改配置后无需重启,他的本质是crontab去执行,如果你想立即生效,可以手动执行一次轮转。

相关推荐
Full Stack Developme7 小时前
JVM 与 Linux 交互的核心原理
linux·运维·jvm
HackTwoHub7 小时前
最新Nessus2026.6.8版本主机漏洞扫描/探测工具Windows/Linux
linux·运维·服务器·安全·web安全·网络安全·安全架构
qq_163135757 小时前
Linux 【04-mkdir命令超详细教程】
linux
qq_163135757 小时前
Linux 【08-mv命令超详细教程】
linux
qq_1631357510 小时前
Linux 【07-rm命令超详细教程】
linux
zh路西法11 小时前
【SSH 免密登录全流程】Windows Linux 通用方案
linux·windows·ssh
ScilogyHunter11 小时前
GCC完全指南
linux·gcc
CodeStats12 小时前
从 CPU 指令到 JVM 进程:彻底讲透 Java 执行 main 方法时,类加载、主线程、栈帧入栈的完整底层逻辑
java·linux·开发语言
努力努力再努力wz13 小时前
【内存管理与高并发内存池系列】从 mmap 到 malloc:文件映射、匿名映射与 glibc 内存分配机制详解
linux·c语言·数据结构·数据库·c++·qt·链表
Jurio.14 小时前
开源 Codex Sticky:在终端 Codex CLI 长对话中始终固定底部输入框
linux·rust·github·开源软件·codex·codex cli