centos

如何设置centos nohup日志大小

小樊
62
2025-08-04 16:25:05
栏目: 智能运维

在 CentOS 系统中,nohup 命令用于在后台运行程序,即使关闭终端或断开连接也不会终止。默认情况下,nohup 会将输出重定向到 nohup.out 文件中。如果你想要限制 nohup.out 文件的大小,可以使用 logrotate 工具来实现。

以下是如何设置 nohup.out 日志大小的步骤:

  1. 安装 logrotate(如果尚未安装):

    sudo yum install logrotate
    
  2. 创建 logrotate 配置文件: 你可以为特定的日志文件创建一个自定义的 logrotate 配置文件,或者使用默认的配置文件并进行修改。

    创建一个新的配置文件:

    sudo vi /etc/logrotate.d/myapp
    

    在文件中添加以下内容:

    /path/to/your/nohup.out {
        size 100M
        rotate 5
        compress
        missingok
        notifempty
        create 640 root root
    }
    

    解释:

    • size 100M:当日志文件达到 100MB 时,进行轮转。
    • rotate 5:保留 5 个轮转后的日志文件。
    • compress:压缩轮转后的日志文件。
    • missingok:如果日志文件不存在,不会报错。
    • notifempty:如果日志文件为空,不进行轮转。
    • create 640 root root:创建新的日志文件,权限为 640,属主和属组为 root。
  3. 测试 logrotate 配置: 你可以手动测试 logrotate 配置是否正确:

    sudo logrotate -f /etc/logrotate.d/myapp
    
  4. 确保 logrotate 定期运行logrotate 通常由 cron 定期运行。你可以检查 /etc/cron.daily/logrotate 文件,确保它存在并且没有被禁用。

通过以上步骤,你可以设置 nohup.out 日志文件的大小,并确保日志文件在达到指定大小时自动轮转和压缩。

0
看了该问题的人还看了