Linux中使用定时任务每周定时清理45天以前日志

简介:

如题所示,生产服务器每天会产生很大的日志文件,为了不使硬盘被日志文件塞满,因此需要定期清理日志文件。这时我们可以写一个shell脚本用来清理某个路径下45天以前的日志,然后再设置一个定时任务每周定时执行这个脚本即可

(1)清理某个路径下的日志脚本delOldLogs.sh:

1
[root@prx01 cleanlog] # vim /usr/local/cleanlog/delOldLogs.sh
1
2
3
4
#!/bin/sh
 
#删除输入路径下的修改时间在45天以前的日志文件
find  $1 -mtime +45 -name  "*log*"  - exec  rm  -f {} \;

这段代码不难理解,就是清理参数1所在的路径下的修改时间在45天以前的日志文件

(2)指定清理哪些路径的日志的脚本del_all_OldLogs.sh:

1
[root@prx01 cleanlog] # vim /usr/local/cleanlog/del_all_OldLogs.sh
1
2
3
4
5
#!/bin/bash
 
/usr/local/cleanlog/delOldLogs .sh  "/home/usr/ewp/logs"
/usr/local/cleanlog/delOldLogs .sh  "/home/usr/h5/logs"
/usr/local/cleanlog/delOldLogs .sh  "/home/usr/Payment/logs"

(3)给脚本添加执行权限:

1
[root@prx01 cleanlog] # chmod a+x /usr/local/cleanlog/del*.sh

(4)添加定时任务:

1
[root@prx01  cron ] # vim /var/spool/cron/root

添加以下内容:

1
10 0 * * 6 /usr/local/cleanlog/del_all_OldLogs.sh

注:

  1. 为了防止出现权限不够的情况,因此这里设置了一个root用户的定时任务

  2. 这句代码的意思是:在每周6的0:10执行/usr/local/cleanlog/del_all_OldLogs.sh 这个脚本

如果对Linux中的定时任务不太熟悉的话,建议可以参考下我写的这篇文章:http://www.zifangsky.cn/591.html

(5)查看定时任务:

1
[root@app05 logs] # crontab -l



本文转自 pangfc 51CTO博客,原文链接:http://blog.51cto.com/983836259/1853889,如需转载请自行联系原作者
相关实践学习
【涂鸦即艺术】基于云应用开发平台CAP部署AI实时生图绘板
【涂鸦即艺术】基于云应用开发平台CAP部署AI实时生图绘板
相关文章
|
监控 Shell Linux
Android调试终极指南:ADB安装+多设备连接+ANR日志抓取全流程解析,覆盖环境变量配置/多设备调试/ANR日志分析全流程,附Win/Mac/Linux三平台解决方案
ADB(Android Debug Bridge)是安卓开发中的重要工具,用于连接电脑与安卓设备,实现文件传输、应用管理、日志抓取等功能。本文介绍了 ADB 的基本概念、安装配置及常用命令。包括:1) 基本命令如 `adb version` 和 `adb devices`;2) 权限操作如 `adb root` 和 `adb shell`;3) APK 操作如安装、卸载应用;4) 文件传输如 `adb push` 和 `adb pull`;5) 日志记录如 `adb logcat`;6) 系统信息获取如屏幕截图和录屏。通过这些功能,用户可高效调试和管理安卓设备。
10409 2
|
SQL 数据库
【YashanDB知识库】归档日志清理
本文介绍了YashanDB中手动清理归档日志时遇到的问题及解决方法。问题源于在归档日志未备份或未同步到备机时尝试删除,导致文件仍存在。解决方案是通过调整`ARCH_CLEAN_IGNORE_MODE`参数(如设置为BOTH模式)来忽略备份和备机限制,执行归档日志清理命令(如`ALTER DATABASE DELETE ARCHIVELOG`)。同时,注意YashanDB支持自动清理功能,可通过设置上下阈值避免磁盘空间不足。相关参数可用`show parameter clean`查看。
|
存储 运维 监控
Linux--深入理与解linux文件系统与日志文件分析
深入理解 Linux 文件系统和日志文件分析,对于系统管理员和运维工程师来说至关重要。文件系统管理涉及到文件的组织、存储和检索,而日志文件则记录了系统和应用的运行状态,是排查故障和维护系统的重要依据。通过掌握文件系统和日志文件的管理和分析技能,可以有效提升系统的稳定性和安全性。
436 7
|
监控 Unix Linux
|
监控 安全 Linux
启用Linux防火墙日志记录和分析功能
为iptables启用日志记录对于监控进出流量至关重要
603 1
|
关系型数据库 MySQL Linux
Linux环境下MySQL数据库自动定时备份实践
数据库备份是确保数据安全的重要措施。在Linux环境下,实现MySQL数据库的自动定时备份可以通过多种方式完成。本文将介绍如何使用`cron`定时任务和`mysqldump`工具来实现MySQL数据库的每日自动备份。
978 3
|
监控 关系型数据库 MySQL
Linux环境下MySQL数据库自动定时备份策略
在Linux环境下,MySQL数据库的自动定时备份是确保数据安全和可靠性的重要措施。通过设置定时任务,我们可以每天自动执行数据库备份,从而减少人为错误和提高数据恢复的效率。本文将详细介绍如何在Linux下实现MySQL数据库的自动定时备份。
520 3
|
存储 Linux Docker
centos系统清理docker日志文件
通过以上方法,可以有效清理和管理CentOS系统中的Docker日志文件,防止日志文件占用过多磁盘空间。选择合适的方法取决于具体的应用场景和需求,可以结合手动清理、logrotate和调整日志驱动等多种方式,确保系统的高效运行。
1585 2
|
Linux
Linux Crontab 查看定时任务启动没
【10月更文挑战第20天】在Linux系统中,crontab用于设置周期性执行的任务。查看当前用户的Crontab任务列表,使用`crontab -l`;查看所有用户任务,使用`sudo crontab -l`或指定用户`sudo crontab -u username -l`。
2562 5
|
监控 网络协议 安全
Linux系统日志管理
Linux系统日志管理
736 3