linux日志怎么进行转储,Linux logrotate命令用法详解:进行日志转储(轮替)
日志轮替之所以可以在指定的时间备份日志,是因为其依赖系统定时任务。如果大家还记得 /etc/cron.daily/ 目录,就会发现这个目录中是有 logrotate 文件的,查看一下这个文件,命令如下:
[root@localhost ~]# vi /etc/cron.daily/logrotate
#!/bin/sh
/usr/sbin/logrotate /etc/logrotate.conf >/dev/null 2>&1
#最主要的就是执行了logrotate命令
EXITVALUE=$?
if [ $EXITVALUE!= 0 ]; then
/usr/bin/logger -t logrotate "ALERT exited abnormally with [$EXITVALUE]"
fi
exit 0
也就是说,系统每天都会执行 /etc/cron.daily/logrotate 文件,运行这个文件中的“/usr/sbin/logrotate/etc/logrotate.conf>/dev/null 2>&1”命令。logrotate 命令会依据 /etc/logrotate.conf 配置文件的配置,来判断配置文件中的日志是否符合日志轮替的条件(比如,日志备份时间已经满一周),如果符合,日志就会进行轮替。所以说,日志轮替还是由 crond 服务发起的。
logrotate 命令的格式是什么样的呢?我们来学习一下。
[root@localhost ~]# logrotate [选项] 配置文件名
选项:
如果此命令没有选项,则会按照配置文件中的条件进行日志轮替
-v:显示日志轮替过程。加入了-v选项,会显示日志的轮替过程
-f: 强制进行日志轮替。不管日志轮替的条件是否符合,强制配置文件中所有的日志进行轮替
我们执行 logrotate 命令,并查看一下执行过程。
[root@localhost ~]# logrotate -v /etc/logrotate.conf
#查看日志轮替的流程
…省略部分输出…
rotating pattern:/var/log/alert.log weekly (6 rotations)
#这就是我们自己加入轮替的alert.log日志
empty log files are rotated, old logs are removed
considering log /var/log/alert.log
log does not need rotating
#时间不够一周,所以不进行日志轮替
…省略部分输出…
我们发现,/var/log/alert.log 加入了日志轮替,已经被 logrotate 识别并调用了,只是时间没有达到轮替的标准,所以没有进行轮替。那我们强制进行一次日志轮替,看看会有什么结果。
[root@localhost ~]# logrotate -vf /etc/logrotate.conf
#强制进行日志轮替,不管是否符合轮替条件
…省略部分输出…
rotating pattern:/var/log/alert.log forced from command line (6 rotations)
empty log files are rotated, old logs are removed
considering log /var/log/alert.log
log needs rotating
#日志需要轮替
rotating log /var/log/alert.log,log->rotateCount is 6
dateext suffix '-20130607'
#提取日期参数
glob pattern '-[0-9][0-9][0-9][0-9][0-9][0-9][0-9][0-9]'
glob finding old rotated logs failed
running prerotate script
fscreate context set to unconfined_u:object_r:var_log_t:s0
renaming /var/log/alert.log to /var/log/alert.log-20130607
#旧的日志被重命名
creating new /var/log/alert.log mode = 0600 uid = 0 gid = 0
#创建新日志文件,同时指定权限、所有者和属组
running postrotate script
…省略部分输出…
我们发现,alert.log 日志已经完成了日志轮替。查看一下新生成的日志和旧日志,如下:
[root@localhost ~]# ll /var/log/alert.log*
-rw-------.1 root root 0 6月 7 10:07 /var/log/alert.log
-rw-------.1 root root 237 6月 7 09:58 /var/log/alert.log-20130607
#旧的日志文件已经轮替
[root@localhost ~]# lsattr /var/log/alert.log
-----a-------e- /var/log/alert.log
#新的日志文件被自动加入了chattr的a属性
logrotate 命令在使用“-f”选项之后,就会不管日志是否符合轮替条件,而强制把所有的日志都进行轮替。
linux日志怎么进行转储,Linux logrotate命令用法详解:进行日志转储(轮替)相关推荐
- Linux Shell脚本入门--wget 命令用法详解
Linux Shell脚本入门--wget 命令用法详解 wget是在Linux下开发的开放源代码的软件,作者是Hrvoje Niksic,后来被移植到包括Windows在内的各个平台上.它有以下功能 ...
- linux 指令tftp传输文件_Linux tftp 命令用法详解-Linux命令大全(手册)
tftp 在本机和tftp服务器之间使用TFTP协议传输文件 补充说明 tftp命令 用在本机和tftp服务器之间使用TFTP协议传输文件. TFTP是用来下载远程文件的最简单网络协议,它其于UDP协 ...
- linux教程 sed命令的用法,Linux基础教程之文件三剑客sed命令用法详解
sed是一种流编辑器,它是文本处理中非常强大的工具,能够完美的配合正则表达式使用,用法简单实用,非常灵活. 工作原理:sed命令处理文本时,把当前处理的行存储在一个临时缓冲区中,称为"模式空 ...
- linux bin fuser,Linux中fuser命令用法详解
描述: fuser可以显示出当前哪个程序在使用磁盘上的某个文件.挂载点.甚至网络端口,并给出程序进程的详细信息. fuser显示使用指定文件或者文件系统的进程ID. 默认情况下每个文件名后面跟一个字母 ...
- linux中用less命令,Linux less 命令用法详解
原标题:Linux less 命令用法详解 less 是一个Linux命令行实用程序,用于显示文件或命令输出的内容,它一次只显示一个页面.它类似于 more ,但具有更高级的功能,允许您在文件中向前和 ...
- linux为什么用tar压缩,linux下tar压缩和解压命令用法详解
linux下tar压缩和解压命令用法详解 2017-03-25 14:06 分享人:老牛 将/usr/local/test目录下所有文件仅打包,不压缩到 /usr/local/auto_bak/目下 ...
- linux中cat、more、less命令区别详解
linux中cat.more.less命令区别详解 转自:https://blog.csdn.net/xyw_blog/article/details/16861681 众所周知linux中命令cat ...
- Linux下find命令用法详解
Linux下find命令用法详解 学神VIP烟火 学神IT教育:XueGod-IT 最负责任的线上直播教育平台 本文作者为VIP学员 烟火 第一部分:根据文件名查找 1.在当前目录查找名称为test的 ...
- 【Linux】Linux中rz和sz命令用法详解
[Linux]Linux中rz和sz命令用法详解 1. 简单介绍 rz,sz是Linux/Unix同Windows进行ZModem文件传输的命令行工具.优点就是不用再开一个sftp工具登录上去上传下载 ...
最新文章
- php如何读写excel
- oracle 更新丢失
- python 将PascalVOC(XML)格式的标注数据批量转换为YOLO(txt)格式的标注数据
- Android7.1的EDP屏替换
- 深圳php和java,深圳java技术培训学习(Java和PHP区别)
- C#颜色和名称样式对照表【转载】
- rfid在高速公路管理中的应用_RFID技术与ETC技术在弱电门禁系统中应用
- Intellij IDEA Debug调试技巧
- 基于ISM的大数据在建筑领域中的应用障碍分析
- python 倒数_【IT专家】python实现文件倒数N行读取
- Spring Boot加载指定属性文件
- 利用Splatting提交参数(Hash,哈希)
- 远程修改服务器登录密码,远程服务器修改登录密码
- 不会优化数据库,早晚被优化!
- XshellXftp免费版本申请
- 云队友丨知乎10万赞回答:真正厉害的人,是怎么分析问题的?
- Windows无法解压文件-potentially harmful
- .NET中Hangfire快速入门和使用-迷恋自留地
- C++的双缓冲队列机制
- 精美五子棋源码c语言,界面非常漂亮的五子棋源代码
热门文章
- R计算混淆矩阵(Confusion Matrix)
- qiime2安装和使用案例
- Hybrid de novo tandem repeat detection using short and long reads 使用短读和长读的混合从头到尾串联重复检测
- 树莓派开发7-Pi摄像头+mjpg-streamer
- 如何学习修改linux系统固件,基于Linux的固件,如何实现更新的好方法?
- tensorflow gan网络流程图
- Jupyter Notebook 使用流程
- Android中onClick(DialogInterface dialog,int which)函数和onClick(View v)函数
- LeetCode 421. Maximum XOR of Two Numbers in an Array--Python解法
- 使用poi读取公式错误,xlsx和xls在poi3.8后都支持公式读取,读取后有计算错误公式,解决方法