当前位置: 首页 > news >正文

linux /var/log/syslog过大问题及解决 Systemd定时器用于清除

1 检查大小

bash ls -lh /var/log/syslog检查大小

bash sudo truncate -s 0 /var/log/syslog清空

2. Systemd定时器用于定时清除/var/log/syslog

1.清除脚本

#!/bin/bash

# 设置文件路径
LOG_FILE="/var/log/syslog"
MAX_SIZE=1073741824  # 1GB = 1073741824 字节

# 获取文件大小
FILE_SIZE=$(stat --format=%s "$LOG_FILE")

# 如果文件大小超过1GB
if [ "$FILE_SIZE" -gt "$MAX_SIZE" ]; then
    # 清空日志文件
    sudo truncate -s 0 "$LOG_FILE"
    echo "clear $LOG_FILE, MAX_SIZE > 1GB"
fi

2.创建服务文件

sudo vi /etc/systemd/system/clear-syslog.service
[Unit]
Description=Clear syslog if it exceeds 1GB

[Service]
Type=oneshot
ExecStart=/home/ido/chenFan/clear_syslog.sh

3.创建定时任务

sudo vi /etc/systemd/system/clear-syslog.timer
[Unit]
Description=Run clear-syslog.service daily

[Timer]
#OnCalendar=*:*:00
OnCalendar=daily
Unit=clear-syslog.service

[Install]
WantedBy=timers.target

OnCalendar=daily 表示每天执行一次。如果需要更频繁的执行,可以使用类似 OnCalendar=hourly 或者设置自定义的时间格式(例如,OnCalendar=--* 00:00:00 每天午夜)。
Unit=clear-syslog.service 表示该定时任务将触发 clear-syslog.service 服务单元。

3. 重新加载 systemd 配置并启动定时器

sudo systemctl daemon-reload
sudo systemctl enable clear-syslog.timer
sudo systemctl start clear-syslog.timer

4. 检查定时器状态

sudo systemctl status clear-syslog.timer
sudo systemctl list-timers

5. 测试

sudo dd if=/dev/urandom of=/var/log/syslog bs=1M count=1024     这个命令会从/dev/urandom生成随机数据并将其写入/var/log/syslog,总量为1GB
http://www.dtcms.com/a/37444.html

相关文章:

  • 深入理解 `Sinks.Empty<Void>` 和 `Mono<Void>`:如何触发完成信号并结合 WebSocket 示例
  • axios、axios二次封装、api解耦
  • CF 58A.Chat room(Java实现)
  • 【ProtoBuf】proto3语法(一)
  • ctfshow——版本控制泄露源码
  • OPPO高级大模型算法岗内推
  • LeetCode 热题100 141. 环形链表
  • linux 打包解压命令
  • 计算机毕业设计SpringBoot+Vue.js个性化图书推荐系统(源码+LW文档+PPT+讲解+开题报告)
  • KubeSphere安装mysql
  • WebSocket简单介绍 并接入deepseek
  • 高并发内存池的thread cache部分实现及测试
  • linux-c 字节序问题--大小端
  • C语言学习笔记-初阶(13)scanf介绍
  • 监听其他音频播放时暂停正在播放的音频
  • 3-2 WPS JS宏 工作簿的打开与保存(模板批量另存为工作)学习笔记
  • C++的类型转换
  • 设计一个光伏热泵系统的 PID 模糊控制器
  • windows本地升级npm
  • 短剧源码部署搭建小程序搭建IAA+IAP混合解锁模式
  • C语言--文件操作
  • BERT模型详解及代码复现
  • [Web 安全] PHP 反序列化漏洞 —— PHP 反序列化漏洞演示案例
  • mysql 学习19 MYSQL管理以及使用工具
  • 【机器学习】强化学习(2)——捋清深度强化学习的思路
  • Room记录搜索记录逻辑思路
  • QEMU源码全解析 —— 内存虚拟化(20)
  • MySQL 和 Elasticsearch 之间的数据同步
  • 国科大——数据挖掘(0812课程)——课后作业
  • 【阮一峰】20.注释指令