linux下日志占用空间过大的解决方法 博客分类: Linux linux
程序员文章站
2024-03-13 14:38:03
...
日志过大之后,如果每次都人工处理,是件很头疼的事情。这里介绍几种常用的方法,可使用简单的linux命令定时执行:
1.删除
时间比较早的日志觉得已经无用,删除即可。
这里以mysql的二进制日志为例:
-maxdepth 1表示只查找指定的文件夹,而不包括子目录。如果不指定-maxdepth,表示包括子目录。
-name查找符合条件的文件名
-ctime +15表示查找创建时间是15天之前的
-exec rm {} \;表示对符合条件的文件进行删除
整个语句的意思是,只查找/data/mysql_data下(不包括子目录),名称以mysql-bin.0开头,且创建时间是15天前的文件,并删除它们。
2.打包压缩
最常用的方法。以tar.gz包为例:
对以adclick.2011-06开头的所有文件,打包成adclick.2011-06.tar.gz,并删除原文件。
--remove-files表示删除原文件,很实用
3.转移
最常用的命令是rsync:
对/home/logs下的所有文件以及文件夹,同步到10.10.10.1服务器的public/logs目录下。当然10.10.10.1需要开启rsync服务。
以上命令写到crontab中,省心省事。
1.删除
时间比较早的日志觉得已经无用,删除即可。
这里以mysql的二进制日志为例:
find /data/mysql_data -maxdepth 1 -name "mysql-bin.0*" -ctime +15 -exec rm {} \;/data/mysql_data是日志所在的文件夹
-maxdepth 1表示只查找指定的文件夹,而不包括子目录。如果不指定-maxdepth,表示包括子目录。
-name查找符合条件的文件名
-ctime +15表示查找创建时间是15天之前的
-exec rm {} \;表示对符合条件的文件进行删除
整个语句的意思是,只查找/data/mysql_data下(不包括子目录),名称以mysql-bin.0开头,且创建时间是15天前的文件,并删除它们。
2.打包压缩
最常用的方法。以tar.gz包为例:
tar --remove-files -czf adclick.2011-06.tar.gz adclick.2011-06*
对以adclick.2011-06开头的所有文件,打包成adclick.2011-06.tar.gz,并删除原文件。
--remove-files表示删除原文件,很实用
3.转移
最常用的命令是rsync:
/usr/bin/rsync -vzrtopgu --progress --delete /home/logs/ 10.10.10.1::public/logs
对/home/logs下的所有文件以及文件夹,同步到10.10.10.1服务器的public/logs目录下。当然10.10.10.1需要开启rsync服务。
以上命令写到crontab中,省心省事。
推荐阅读
-
linux下日志占用空间过大的解决方法 博客分类: Linux linux
-
Linux 下git的安装 博客分类: 版本控制工具 LinuxGit安装
-
Linux下Mysql 5.7的安装及远程连接配置 博客分类: Linux linuxmysql
-
玩Linux五年积累的技巧(3) -- 系统(下) 博客分类: Linux linuxbash脚本技巧
-
玩Linux五年积累的技巧(3) -- 系统(下) 博客分类: Linux linuxbash脚本技巧
-
使用Eclipse编译c程序 数学函数提示undefined reference to “XXX”的解决方法 博客分类: Linux eclipseLinux eclipsegcc
-
Linux 下zip包的压缩与解压 博客分类: Linux linuxzipunziptargz
-
[转]ubuntu dns重启后失效的完美解决方法 博客分类: Linux ubuntunetworknameserver
-
在linux的用户空间读取侦听input的event事件(包括类型,键值,状态) 博客分类: linux_applinux_kernel
-
在linux的用户空间读取侦听input的event事件(包括类型,键值,状态) 博客分类: linux_applinux_kernel