/var/log 中日志文件的压缩设置

/var/log 中日志文件的压缩设置

对于 中的日志文件/var/log
似乎wtmp和 以及旋转的wtmp.n都不是 ASCII 文件,只能通过命令读取last,因此如果它们是压缩的,则必须先解压缩它们,然后才能last -f ...读取。其他压缩日志文件可以使用 emacs 等编辑器轻松读取,因为它们是 ASCII 文本文件。

有没有办法为除wtmp.n?
(我假设如果取消注释#compress中的/etc/logrotate.conf

# uncomment this if you want your log files compressed
#compress

那么所有日志文件都将被压缩,包括wtmp。)

谢谢

答案1

/var/log/wtmp不是文本文件,但也不是压缩文件。它是一个二进制文件,要解码它,你需要一个专用工具,称为rawtmp可用包裹。

sudo apt-get install sac

要访问 wtmp 日志,请在终端中输入:

rawtmp | less

或者解码第一个 wtmp 档案:

rawtmp -w /var/log/wtmp.1 | less

编辑:要覆盖logrotate压缩设置,wtmp您只需编辑 /etc/logrotate.conf 文件:

sudo gedit /etc/logrotate.conf

添加nocompress指令:

/var/log/wtmp {
    nocompress
    missingok
    monthly
    create 0664 root utmp
    rotate 12
}

来自logrotate手册页:

   nocompress
          Old versions of log files are not compressed. See also compress.

相关内容