Linux日志系统-05:案例1
2021/5/10 7:29:14
本文主要是介绍Linux日志系统-05:案例1,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
一、案例要求:
创建一个日志文件/tmp/test_logrotate.log,然后使用logrotate来管理日志,每天滚动一次,文件大小上限为10M,保留5个日志,旧日志用时间命名。
二、实现步骤
1、创建日志文件
touch /tmp/test_logrotate.log
2、创建logrotate子配置文件
vim /etc/logrotate.d/test_logrotate.conf
/tmp/test_logrotate.log{ daily size 10M rotate 5 dateext compress }
3、测试1
(1)向test_logrotate.log文件中添加小于10M的内容
dd if=/dev/zero of=/tmp/test_logrotate.log bs=9M count=1 ls -lh /tmp/test_logrotate.log
(2)执行任务
logrotate /etc/logrotate.d/test_logrotate.conf ls /tmp/test_logrotate*
出现错误:文件切割权限问题
[root@192 logrotate.d]# logrotate /etc/logrotate.d/test_logrotate.conf error: skipping "/tmp/test_logrotate.log" because parent directory has insecure permissions (It's world writable or writable by group which is not "root") Set "su" directive in config file to tell logrotate which user/group should be used for rotation.
解决方法:
方法一:去掉对应日志父目录的“w”组权限 ---- g-w
方法二:在对应的logrotate配置文件中添加“su <dir_user> <dir_group>”
采用方法二解决:
再次执行下面命令,可知日志文件没有被分割,因为日志文件大小是9M,不足10M。
logrotate /etc/logrotate.d/test_logrotate.conf ls /tmp/test_logrotate*
(3)向test_logrotate.log文件中添加大于10M的内容
dd if=/dev/zero of=/tmp/test_logrotate.log bs=11M count=1 ls -lh /tmp/test_logrotate.log
(4)执行任务
logrotate /etc/logrotate.d/test_logrotate.conf ls /tmp/test_logrotate*
4、测试2
(1)在配置文件中添加create参数
PS:create 0664 root root #指定滚动后创建的新文件的权限为0644,数组为root,属组为root
(2)执行任务
这篇关于Linux日志系统-05:案例1的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!
- 2024-12-18git仓库有更新,jenkins 自动触发拉代码怎么配置的?-icode9专业技术文章分享
- 2024-12-18Jenkins webhook 方式怎么配置指定的分支?-icode9专业技术文章分享
- 2024-12-13Linux C++项目实战入门教程
- 2024-12-13Linux C++编程项目实战入门教程
- 2024-12-11Linux部署Scrapy教程:新手入门指南
- 2024-12-11怎么将在本地创建的 Maven 仓库迁移到 Linux 服务器上?-icode9专业技术文章分享
- 2024-12-10Linux常用命令
- 2024-12-06谁看谁服! Linux 创始人对于进程和线程的理解是…
- 2024-12-04操作系统教程:新手入门及初级技巧详解
- 2024-12-04操作系统入门:新手必学指南