No Description

huangyan a9fcbe8113 README 文件 1 week ago
.idea 13e9da4573 管理主机内存清理工具 1 week ago
README.md a9fcbe8113 README 文件 1 week ago
build.bat 13e9da4573 管理主机内存清理工具 1 week ago
go.mod 13e9da4573 管理主机内存清理工具 1 week ago
go.sum 13e9da4573 管理主机内存清理工具 1 week ago
install.sh 13e9da4573 管理主机内存清理工具 1 week ago
log-cleaner 13e9da4573 管理主机内存清理工具 1 week ago
log-cleaner.service 13e9da4573 管理主机内存清理工具 1 week ago
main.go 13e9da4573 管理主机内存清理工具 1 week ago

README.md

MemoryCleanup

MemoryCleanup 是一个用于自动监控和清理 Linux 系统日志目录(默认 /var/log)下大文件的 Go 程序。

主要功能

  • 监控指定日志目录下的所有文件。
  • 当日志文件大小超过 500MB 时,自动将其内容截断清空,防止日志文件占用过多磁盘空间。
  • 实时监听日志目录的文件变化,自动处理新生成或被写入的日志文件。

使用方法

1. 编译

确保已安装 Go 环境(1.16 及以上),在项目根目录下执行:

go build -o log-cleaner main.go

2. 运行

以 root 或有权限的用户运行(需有权限访问 /var/log):

./log-cleaner

3. 配置

  • 默认监控目录为 /var/log,最大文件大小为 500MB。
  • 如需修改监控目录或文件大小限制,可在 main.go 中修改 logDirmaxSize 常量后重新编译。

4. 作为服务运行(可选)

可结合 log-cleaner.service 文件将其注册为 systemd 服务,实现开机自启和后台运行。

依赖

  • fsnotify 用于文件系统事件监听。

注意事项

  • 请确保运行用户有权限读取和截断日志目录下的文件。
  • 仅适用于 Linux 系统。