微软官方MSDN原版Win10系统下载

现在位置: 首页  > 系统教程  > Linux教程

Linux系统中Logrotate工具用法汇总

时间:2024-11-23 07:13:52   

大家好,今天Win10系统之家小编给大家分享「Linux系统中Logrotate工具用法汇总」的知识,如果能碰巧解决你现在面临的问题,记得收藏本站或分享给你的好友们哟~,现在开始吧!

Net - 系统监测网速展示流量统计工具系列软件最新版本下载

  Linux系统操作中,Logrotate是一款日志管理工具,可对Linux日志进行处理,在使用前,需要对Logrotate工具进行配置,下面小编就给大家介绍下Linux中Logrotate工具的用法,一起来了解下吧。

  1运行原理

  Logrotate是基于CRON来运行的,其脚本是/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

  /etc/cron.daily目录所有脚本运行频率是由CRON通过/etc/crontab控制,

  有两种运行方式: 1 直接执行单个命令; 2 目录规划,下面仅列举目录规划配置

  SHELL=/bin/bash

  PATH=/sbin:/bin:/usr/sbin:/usr/bin

  MAILTO=root

  HOME=/

  # run-parts

  */1 * * * * root run-parts /etc/cron.min

  01 * * * * root run-parts /etc/cron.hourly

  59 23 * * * root run-parts /etc/cron.daily

  22 4 * * 0 root run-parts /etc/cron.weekly

  42 4 1 * * root run-parts /etc/cron.monthly

  2配置文件

  /etc/logrotate.conf 全局默认文件

  /etc/logrotate.d/ 目录,下属文件通过include纳入前者

  常用选项

  weekly 《==默认一周执行一次 rotate 工作

  rotate 4 《==保留多少个日志文件。默认保留四个。

  create 《==创建新的文件。因为日志被改名,因此要创建一个新的来继续存储之前的日志

  dateext 《==文件后缀是日期格式,也就是切割后文件是:xxx.log-20131216,如果注释掉,切割出来是按数字递增,即前面说的 xxx.log-1

  compress 《==是否压缩日志。

  include /etc/logrotate.d # 将 /etc/logrotate.d/ 目录中的所有文件都加载进来

  /var/log/wtmp { 《==仅针对 /var/log/wtmp 所设定的参数

  monthly 《==每月一次切割,取代默认的一周

  minsize 1M 《==文件大小超过 1M 后才会切割

  create 0664 root utmp 《==指定新建的日志文件权限以及所属用户和组

  rotate 1 《==只保留一个日志。

  }

  通过include加载的文件示例如下

  [root@www ~]# vi /etc/logrotate.d/syslog

  /var/log/messages /var/log/secure /var/log/maillog /var/log/spooler /var/log/boot.log /var/log/cron

  {

  sharedscripts

  prerotate

  /usr/bin/chattr -a /var/log/messages

  endscript

  sharedscripts

  postrotate

  /bin/kill -HUP `cat /var/run/syslogd.pid 2》 /dev/null` 2》 /dev/null || true

  /bin/kill -HUP `cat /var/run/rsyslogd.pid 2》 /dev/null` 2》 /dev/null || true

  /usr/bin/chattr +a /var/log/messages

  endscript

  }

  日志文件: 被处理的日志绝对路径。使用空格符分隔多个文件名;

  执行脚本:

  可调用外部指令来进行额外的命令,这个设定需与 sharedscripts 。。。。 endscript 设定合用才行。命令介绍:

  prerotate:在启动 logrotate 之前进行的指令,例如修改文件的属性等动作;

  postrotate:在做完 logrotate 之后启动的指令,例如重新启动 (kill -HUP) 某个服务;

  那么 /etc/logrotate.d/syslog 内设定的六个文件的切割功能就变成了:

  1.该设定只对 /var/log/ 内的 messages, secure, maillog, spooler, boot.log, cron 有效;

  2.日志切割每周一次、保留四个、且切割下来的日志文件不进行压缩(未更改预设值);

  3.切割完毕后 (postrotate) 取得 syslog 的 PID 后,以 kill -HUP 重新启动 syslogd

  切割案例:Nginx

  ============================

  在 /etc/logrotate.d 新建 nginx

  /usr/local/nginx/logs/*.log {

  daily

  rotate 5

  dateext

  compress

  sharedscripts

  postrotate

  if [ -f /usr/local/nginx/logs/nginx.pid ]; then

  kill -USR1 `cat /usr/local/nginx/logs/nginx.pid`

  fi

  endscript

  }

  上面就是Linux中Logrotate工具的用法介绍了,本文介绍了Logrotate工具的运行原理和Logrotate文件的配置,如果你要管理Linux系统日志,可选择使用Logrotate日志管理工具。

以上就是关于「Linux系统中Logrotate工具用法汇总」的全部内容,本文讲解到这里啦,希望对大家有所帮助。如果你还想了解更多这方面的信息,记得收藏关注本站~

Win10系统之家独家♀使★用!』

相关文章

  • Linux系统中Logrotate工具用法汇总

    Linux系统中Logrotate工具用法汇总


      Linux系统操作中,Logrotate是一款日志管理工具,可对Linux日志进行处理,在使用前,需要对Logrotate工具进行配置,下面小编就给大家介绍下Linux中Logrotate工具的用法,一起来了解下吧。
      1运行原理
      Logrotate是基于CRON来运行的,其脚本是/etc/cron.daily/logrotate
      #!/bin/sh...
  • SUSE Linux系统中zypper命令用法汇总

    SUSE Linux系统中zypper命令用法汇总


      Zypper是SUSELinux下用于管理软件的程序,拥有多种功能,那么Linux下要如何使用Zypper命令来管理软件呢?下面小编就给大家介绍下SUSELinux使用Zypper命令的方法,感兴趣的朋友可以来了解下。
      Zypper是SUSELinux中用于安装,升级,卸载,管理仓库、进行各种包查询的命令行接口。本篇将会讨论zypper的几个不同命令的例子。
      ...
  • Linux系统中限制用户su-权限的方法汇总

    Linux系统中限制用户su-权限的方法汇总


      Linux下su-命令主要用于完整的切换到一个用户环境,而该命令通常所有用户都能使用,那么如果要限制一般用户使用,该如何做呢?下面小编就给大家介绍下Linux中限制用户su-权限的方法。
      但是,为了更进一步加强系统的安全性,有必要建立一个管理员的组,只允许这个组的用户来执行“su-”命令登录为root用户,而让其他组的用户即使执行“su-”、输入了正确的root密码,也无...
  • Linux系统中设置安全策略的方法汇总

    Linux系统中设置安全策略的方法汇总


      电脑系统的安全离不开安全策略的设置,如果安全策略设置没有设置好的话电脑的安全就得不到保证,下面小编就给大家介绍下Linux下安全策略设置的方法,一起来学习下吧。
      “安全第一”对于linux管理界乃至计算机也都是一个首要考虑的问题。加密的安全性依赖于密码本身而非算法!而且,此处说到的安全是指数据的完整性,由此,数据的认证安全和完整性高于数据的私密安全,也就是说数据发送者的不...