Freebsd下日志轮转工具logrotate在/usr/ports/sysutils/logrotate,ports安装后,修改如下配置可以轮转指定的各日志文件。

freebsd下日志轮转配置文件是/etc/newsyslog.conf,一共有10列。其中3列是可选的:

  logfile_name:必选参数,需要处理的日志的绝对路径。

  owner:group:可选参数,表明该日志文件的所属属性。

  mode:必选参数,表示该文件的权限。

  count:必选参数,表示日志文件保存的数量。

  size:和when参数二选一,如果不配置,则用*。日志文件的最大尺寸,超过就会被轮转。单位是KB。

  when:和size参数二选一,如果不配置,则用*,表示日志轮转的周期。

    格式一:使用ISO8601日期格式(日期前面要加上 @ 符號,日期和時間則以T分開)

         @[[[[[cc]yy]mm]dd][T[hh[mm[ss]]]]]

  eg:假定现在的日期是1999-01-22 00:00:00,下面的日期格式都是相同的效果

                `19990122T000000'

                `990122T000000'

                `0122T000000'

                `22T000000'

                `T000000'

                `T0000'

                `T00'

                `22T'

                `T'

                `' 

格式二:以天,周,和月为基础的日期格式。分别是[$Dhh]、[$Ww[Dhh]]、[Mdd[Dhh]]  

          D表示天,

hh表示小时数,范围为:0-23

          W表示周,w表示周几,范围为:0-6 ,D和hh同上

          M表示月,dd表示天日,范围为:1-31,D和hh同上

          eg: $D23 表示每天23点轮转日志 (和 @T23相同)


  flags:可选参数,表示轮转时的一些动作,如启用压缩等。其中常见标记如下

     B,表明该log文件为二进制文件,而非普通的ascii文件。如pf的日志就是二进制文件

     C,表明如果该日志文件不存在,则由newsyslog创建一个文件

     J,表明使用bzip2对轮转的日志文件进行压缩

     Z,表明使用gzip对轮转日志文件进行压缩

  path_to_pid_file:可选参数,产生此日志的进程的pid文件。

  signal_number:可选参数,表明要发送给path_to_pid_file进程的信号。默认为发送HUP信号。


转载出处:http://linux.net527.cn/Linuxwendang/Freebsd/42605.html