使用 logrotate 轮换 wtmp/btmp 文件

为防止大量日志文件填满“/var/log”文件系统,有一种称为 logrotate 的工具。
每日 cron 作业每天调用此 logrotate 一次。
Logrotate 查阅其配置文件“/etc/logrotate.conf”以获取有关必须轮换哪些日志文件以及何时轮换的说明。

Logrotate 的配置文件是“/etc/logrotate.conf”。
Logrotate 处理 /var/log/wtmp 的旋转。
由于 wtmp 不属于特定包,它的 logrotate 配置不在 /etc/logrotate.d 中,而是直接在 /etc/logrotate.conf 中。

这是默认配置:

/var/log/wtmp {
    monthly
    create 0664 root utmp
    rotate 1
}

要使 wtmp 更频繁地旋转(因此防止它增长太多),请将旋转频率从每月更改为每周和/或者设置基于大小的旋转阈值。

logrotate 配置示例

  1. 要在系统上拥有一年的登录信息,请编辑“/etc/logrotate.conf”以进行以下配置:
/var/log/wtmp {
    monthly
    create 0664 root utmp
    rotate 1
}

将“monthly”轮换更改为“yearly”,或者将其保持为“monthly”并将轮换计数更改为 13,如下所示。

/var/log/wtmp {
    yearly
    create 0664 root utmp
    rotate 1
}

或者

/var/log/wtmp {
    monthly
    create 0664 root utmp
    rotate 13
}
之路教程 https://onitr oad .com

读取旧的 wtmp 文件

要从旧的旋转文件中读取“last”命令,请运行如下所示的命令:

# last -f [path to rotated file]
CentOS/RHEL:如何使用 logrotate 轮换 /var/log/wtmp 和 /var/log/btmp 文件

“last”命令的登录记录保存在数据文件“/var/log/wtmp”中。
命令“last”解析这个数据文件并返回输出。
还可以创建另一个数据文件 '/var/log/btmp ' 来存储错误的登录信息,可以使用命令 'lastb ' 读取该文件。

日期:2020-09-17 00:12:19 来源:oir作者:oir