温馨提示×

CentOS nohup日志如何实现日志轮转

小樊
32
2025-12-15 17:16:50
栏目: 智能运维

在 CentOS 系统中,使用 nohup 命令运行程序时,日志文件可能会变得非常大。为了防止日志文件过大,可以使用日志轮转工具 logrotate 来实现日志轮转。以下是配置和使用 logrotate 的步骤:

  1. 确保 logrotate 已经安装在你的 CentOS 系统上。如果没有安装,可以使用以下命令安装:

    sudo yum install logrotate
    
  2. 创建一个新的日志轮转配置文件。通常,logrotate 配置文件位于 /etc/logrotate.d/ 目录下。你可以创建一个新的配置文件,例如 myapp

    sudo vi /etc/logrotate.d/myapp
    
  3. 在新创建的配置文件中,添加以下内容:

    /path/to/your/logs/myapp.log {
        daily
        rotate 7
        compress
        missingok
        notifempty
        create 640 root root
    }
    

    这里的配置表示:

    • /path/to/your/logs/myapp.log 是你的应用程序日志文件的路径。
    • daily 表示每天轮转一次日志。
    • rotate 7 表示保留最近 7 天的日志文件。
    • compress 表示压缩旧的日志文件。
    • missingok 表示如果日志文件不存在,不会报错。
    • notifempty 表示如果日志文件为空,不进行轮转。
    • create 640 root root 表示创建新的日志文件时,设置文件权限为 640,属主为 root,属组为 root。
  4. 保存并关闭配置文件。

  5. 测试 logrotate 配置是否正确:

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

    这个命令会强制执行日志轮转,不会等待下一次轮转周期。

现在,你的应用程序日志文件将会每天轮转一次,并保留最近 7 天的日志。你可以根据需要调整配置文件中的选项。

0