实现Linux系统自动删除系统日志的方法

linux是一个很能自动产生文件的系统,日志、邮件、备份等。虽然现在硬盘廉价,我们可以有很多硬盘空间供这些文件浪费,让系统定时清理一些不需要的文件很有一种爽 快的事情。不用你去每天惦记着是否需要清理日志,不用每天收到硬盘空间不足的报警短信,想好好休息的话,让我们把这个事情交给机器定时去执行吧。

1.删除文件命令 :

find 对应目录 -mtime +天数 -name "文件名" -exec rm -rf {} ;

实例命令:

find /opt/soft/log/ -mtime +30 -name "*.log" -exec rm -rf {} ;

说明:

将/opt/soft/log/目录下所有30天前带".log"的文件删除。具体参数说明如下:

find:linux 的查找命令,用户查找指定条件的文件;

/opt/soft/log/:想要进行清理的任意目录;

-mtime:标准语句写法;

+30:查找30天前的文件,这里用数字代 表天数;

"*.log":希望查找的数据类型,"*.jpg"表示查找扩展名为jpg的所有文件,"*"表示查找所有文件,这个可以灵活运用,举 一反三;

-exec:固定写法;

rm -rf:强制删除文件,包括目录;

{} ; :固定写法,一对大括号+空格++;

2.计划任务:

若嫌每次手动执 行语句太麻烦,可以将这小语句写到一个可执行shell脚本文件中,再设置cron调度执行,那就可以让系统自动去清理相关文件。

2.1创建shell:

touch /opt/soft/bin/auto-del-30-days-ago-log.sh

chmod +x auto-del-30-days-ago-log.sh

新建一个可执行文件auto-del-30-days-ago-log.sh,并分配可运行权限

2.2编辑shell脚本:

vi auto-del-30-days-ago-log.sh

编辑auto-del-30-days-ago-log.sh文件如下:

#!/bin/sh

find /opt/soft/log/ -mtime +30 -name "*.log" -exec rm -rf {} ;

ok,保存退出(:wq)。

2.3计划任务:

#crontab -e

将auto-del-30-days-ago-log.sh执 行脚本加入到系统计划任务,到点自动执行

输入:

10 0 * * * /opt/soft/log/auto-del-7-days-ago-log.sh >/dev/null 2>&1

这里的设置是 每天凌晨0点10分执行auto-del-7-days-ago-log.sh文件进行数据清理任务了。

完成以上三步,你就再也不每天惦记是否硬盘空间满了,该清理日志文件了,再也不会受 到服务器硬盘空间不足的报警信息了,放心的去看书喝咖啡去吧!

时间: 2025-01-29 15:23:57

实现Linux系统自动删除系统日志的方法的相关文章

Linux系统无法使用访问MySQL解决方法

  Linux系统无法使用访问MySQL解决方法.MySQL是最为常见的关系型数据库管理系统,不过有不少用户在使用过程中也会遇到一些小问题,有Linux系统用户发现,在Linux系统无法访问MySQL,为什么会造成这样原因呢?又要怎么解决呢?让我们一起来寻找答案吧. Linux 1.问题及异常 ThreadPoolAsynchronousRunner - com.mchange.v2.async.ThreadPoolAsynchronousRunner$DeadlockDetector@75d6

Linux系统网卡绑定的设置方法

 Linux系统网卡绑定的设置方法   简介 端口绑定就是将多个物理网卡绑定为一个逻辑网卡;根据模式不同可以网卡绑定的作用可分为提升吞吐量和热备份两个主要作用,一般都是提升吞吐量.另外需要bonding内核模块的支持. 配置 挂载模块 修改模块挂载配置文件vim /etc/modprobe.conf alias bond0 bonding options bond0 mode=balance-alb miimon=100 use_carrier=0 修改网卡参数 添加bond0配置vim /et

Linux系统下Telnet的设置方法

  Linux系统下Telnet的设置方法 Linux系统下Telnet服务的配置步骤: 一.安装Telnet软件包(通常要两个) 1. Telnet-clIEnt (或 Telnet),这个软件包提供的是 Telnet 客户端程序; 2. Telnet-server ,这个软件包提供的是 Telnet 服务器端程序; 安装之前先检测是否这些软件包已安装,方法如下: [root@echo root]#rpm –q Telnet或[root@wljs root]#rpm –q Telnet-cli

关于网络抓包,linux系统下kismet的使用方法

问题描述 关于网络抓包,linux系统下kismet的使用方法 我想知道k?i?smet怎么用呢?我看到它抓的包了,但怎么保存成文件?只看到它扫描到附近的Wi-Fi,能抓到客户端的包么? 解决方案 使用XILINX SDK工具通过网络进行基于linux系统的远程调试方法Linux下抓包工具tcpdump使用方法Linux下的网络HOOK实现以及使用方法

userdel 命令 - 从Linux系统中删除用户账户

在服务器上维护用户就是添加.修改以及删除用户.当一个用户出于某种原因不再需要登录系统时,我们需要删除此用户以避免安全漏洞.在Linux系统上,我们用 userdel 命令来删除一个用户. userdel是什么 userdel 是一个底层用于删除用户的工具.在 Debian 上,我们通常会使用 deluser 命令.userdel 会查询系统账户文件,例如 /etc/password 和 /etc/group.那么它会删除所有和用户名相关的条目.在我们删除它之前,用户名必须存在. 如何使用user

wordpress自动删除重复评论方法

wordpress自动删除重复评论方法 wordpress中,已经默认加入了重复评论的限制,如果需要去掉这个限制,需要修改相应的源代码,具体如下: wp-includes 文件夹下面 comment.php教程   function wp_allow_comment($commentdata) { global $wpdb; extract($commentdata, EXTR_SKIP); // Simple duplicate check // expected_slashed ($comm

Linux系统下软件包的制作方法和过程

  总的情况下Linux下软件安装主要有三种方式: 一种是源码安装,需要用户自己手动编译 另一种是RPM包(RedHat Linux Packet Manager),通过RPM命令就可以实现安装 还有一种为*.bin文件,安装方法与Windows下的安装过程类似 通常情况下Linux 安装软件主要通过以下两种方式 ① 文件名形如xxx.i386.rpm ,软件包以二进制形式发布. ② 文件名形如xxx.tar.gz ,软件包多以源码的形式发布. Linux软件包管理可以分为三类:二进制包的管理,

win7系统自动删除桌面快捷方式是怎么回事

很多win7系统用户反映说遇到这样一个问题,就是电脑上从文件服务器创建的快捷方式就会自动被删除,自己重新创建之后,过几天重新启动win7系统的时候,那些快捷方式又会自动被删除不见了,那么遇到这种情况应该怎么办呢?下面跟大家分享一下具体的解决方法,大家可以了解下! 方法如下: 1.点击win7系统中的"开始" --- "控制面板"--- "系统和安全"--- "查找和解决问题"; 2.在弹出来的界面中,点击侧边栏的"更

linux系统中VNC安装配置方法详解

1.确认VNC是否安装 默认情况下,Red Hat Enterprise Linux安装程序会将VNC服务安装在系统上. 确认是否已经安装VNC服务及查看安装的VNC版本 [root@testdb ~]# rpm -q vnc-server vnc-server-4.1.2-9.el5 [root@testdb ~]# 若系统没有安装,可以到操作系统安装盘的Server目录下找到VNC服务的RPM安装包vnc-server-4.1.2-9.el5.x86_64.rpm,安装命令如下 rpm -i