linux-系统日志的归档

一、背景

最近发现一台机器的根目录占用比较大,最后排查发现是auth.log增长的比较快,排查无攻击后则开始解决问题

二、解决

本次通过调整日志保留个数来达到减少空间占用的问题,共有两种方法

方法一、调整公共配置文件

  • 位置:/etc/logrotate.d/rsyslog
bash 复制代码
/var/log/syslog
{
	rotate 7 # 保留7个旧日志文件(即7天日志,因daily触发)
	daily
	missingok
	notifempty
	delaycompress # 但延迟到下次轮转后压缩(避免同时压缩导致性能问题)
	compress # 压缩旧日志,
	postrotate
		invoke-rc.d rsyslog rotate > /dev/null
	endscript
}

/var/log/mail.info
/var/log/mail.warn
/var/log/mail.err
/var/log/mail.log
/var/log/daemon.log
/var/log/kern.log
/var/log/auth.log
/var/log/user.log
/var/log/lpr.log
/var/log/cron.log
/var/log/debug
/var/log/messages
{
	rotate 4 # 保留4个旧日志文件(即4周日志,因weekly触发)
	weekly
	missingok
	notifempty
	compress
	delaycompress
	sharedscripts
	postrotate
		invoke-rc.d rsyslog rotate > /dev/null
	endscript
}

方法二、设置独立配置文件

如果想单独用一个文件来设置某一个日志的归档策略,比如auth.log,移除syslog文件中的/var/log/auth.log,创建一个新文件/etc/logrotate.d/auth-log

bash 复制代码
/var/log/auth.log {
    daily          # 改为每日轮转(可选,根据需求调整)
    rotate 7       # 保留7个旧日志文件
    compress       # 压缩旧日志
    missingok      # 日志丢失时不报错
    notifempty     # 空日志不轮转
    create 0640 root adm  # 创建新日志文件,权限0640,属主root,属组adm
    sharedscripts
    postrotate
        invoke-rc.d rsyslog rotate > /dev/null
    endscript
}
相关推荐
wuminyu4 分钟前
JVM锁膨胀与Futex源码解析
java·linux·c语言·jvm·c++
happymade5 分钟前
7000 台网络设备批量纳管 & 自动拓扑生成实战——MSRM3 完整操作流程与关键要点复盘
运维·服务器·网络·zabbix·grafana·msrm3
斑马13916 分钟前
Linux软件编程学习笔记(十一)——HTTP协议
linux·笔记·学习
做萤石二次开发的哈哈18 分钟前
萤石蓝海 AIoT 一站式工作台:海康LCD会议平板接入,多端大屏运维应用一站生成
运维·物联网·电脑·萤石开放平台·会议室管理·蓝海aiot一站式工作台·otap物模型
OpenPomeloxCommunity22 分钟前
Linux驱动基础(一):模块机制的设计与实现
linux
Shadow(⊙o⊙)30 分钟前
Linux网络——文件与网络的连接桥梁struct sock {
linux·运维·网络
烬羽31 分钟前
给 Agent 一个检索式记忆:把对话历史存进 Milvus,该记的都记得
javascript·数据库·agent
其实防守也摸鱼39 分钟前
教育信息技术应用创新---基础软件信息赛(题库)
大数据·运维·人工智能·web安全·自动化
磐链科技40 分钟前
区块链开发入门实战:用 Hardhat 与 Ethers.js 搭建你的第一个 DApp
开发语言·javascript·区块链
新时代牛马42 分钟前
Linux 性能调优与追踪完整篇:ftrace、perf、eBPF从采样到落地验证
linux·运维·服务器