centos

CentOS nohup如何进行日志轮转

小樊
31
2025-12-01 22:03:27
栏目: 智能运维

在 CentOS 系统中,使用 nohup 命令运行程序时,通常会将输出重定向到一个文件,例如 nohup.out。为了防止日志文件过大,我们需要对其进行轮转。可以使用 logrotate 工具来实现日志轮转。

首先,确保已经安装了 logrotate。如果没有安装,可以使用以下命令安装:

sudo yum install logrotate

接下来,创建一个 logrotate 配置文件,例如 /etc/logrotate.d/myapp,并添加以下内容:

/path/to/your/app/nohup.out {
    daily
    rotate 7
    compress
    missingok
    notifempty
    create 640 root root
}

这里的配置表示:

最后,确保 logrotate 定时任务已启用。编辑 /etc/cron.daily/logrotate 文件,确保其中包含以下内容:

#!/bin/sh

/usr/sbin/logrotate /etc/logrotate.conf
EXITVALUE=$?
if [ $EXITVALUE != 0 ]; then
    /usr/bin/logger -t logrotate "ALERT exited abnormally with [$EXITVALUE]"
fi
exit 0

现在,logrotate 将每天自动轮转 nohup.out 日志文件。如果需要手动触发日志轮转,可以运行以下命令:

sudo logrotate /etc/logrotate.d/myapp

这样,你就可以使用 nohup 命令在 CentOS 系统中进行日志轮转了。

0
看了该问题的人还看了