`

定期清空日志文件

 
阅读更多
一个关于如何在指定文件大于1GB后,自动删除的问题。
批处理代码如下:
#!/bin/bash 
# 当/var/log/syslog大于1GB时 
# 自动将其备份,并清空 
# 注意这里awk的使用 
if ! [ -f /var/log/syslog ] 
then 
echo "file not exist!" 
exit 1 
fi 
if [ `ls -l /var/log/syslog|awk '{print $5}'` -gt $((1024*1024)) ] 
then 
cat /var/log/syslog >> ~/log/history # 将日志备份 
echo >> ~/log/history # 增加一个空行 
date >> ~/log/history # 记录时间 
echo "-------------------------------------" >> ~/log/history 
echo > /var/log/syslog # 清空 
fi



Linux系统的日志文件,比如Apache的日志文件,在使用了一段时间后,可能会变得比较大,如果不清空的话,可能会发生这样那样的问题。定期清空一下这些日志文件是比较好的办法。
  这里以清空Apache的日志文件为例,我使用的是系统的默认配置,日志的文件在/var/log/httpd下面,访问日志的格式是:
  CustomLog logs/access_log combined
  生成的访问日志文件类似于:access_log_20101118……,可以使用shell脚本定期删除日志文件,只保留近3天的文件,以免日志文件占满磁盘空间。
  建立清除日志文件的shell脚本,文件名为clean_log,存放目录任意
  #! /bin/bash 
  logdir=/var/log/httpd 
  cd ${logdir} 
  declare -i filesum=`ls access_log_* | wc -l` 
  declare -i delnum=$filesum-3 
  if [ "${delnum}" -ge 1 ];then 
  rm -rf `ls -tr access_log_* | head -${delnum}` 
  fi 
  #添加运行权限:chmod 755 clean_log 
  #再添加为自动运行任务:vi /etc/crontab,添加: 
  01 04 * * * /root/Desktop/clean_log
分享到:
评论

相关推荐

    清空日志 保存日志 自动清空日志 自动保存日志

    首先,"清空日志"是指删除或重置日志文件,以释放存储空间,避免日志文件过大影响系统性能。这通常在日志积累到一定量或者不再需要旧日志时进行。然而,清空日志需谨慎操作,因为一旦丢失,可能导致无法追溯历史问题...

    SQL 2008日志收缩 清空删除大日志文件

    在SQL Server 2005中,可以通过某些特定的命令来收缩并清空日志文件,但在SQL Server 2008中,这些方法已经不再适用。 首先,理解SQL Server的恢复模型是非常关键的。SQL Server提供三种恢复模型:简单、完整和大...

    如何清空数据库日志文件

    - 定期监控数据库日志文件的增长情况,并根据实际情况调整日志文件的自动增长设置,以避免因日志文件过大而导致的性能问题。 综上所述,清空数据库日志文件是一个需要谨慎处理的过程。通过对上述方法的合理应用,...

    手动清除IIS日志

    同时,需要定期地清除IIS日志文件,防止攻击者通过日志文件获取敏感信息。 五、总结 手动清除IIS日志的关键是清除日志文件的存放位置和文件名,在清除日志前需要先停止对应的服务程序,然后用dos命令删除,之后再...

    C#下txt日志记录文件,自动周期循环定期删除

    C#下txt日志记录文件,自动周期循环定期删除,能修改路径,分文件夹存储不同的日志文件

    清除SQL数据库日志文件

    然而,随着时间的推移,日志文件可能会变得非常大,占用大量的磁盘空间,这可能对系统的性能和稳定性产生负面影响。因此,了解如何有效清除和管理SQL数据库的日志文件是每个数据库管理员必备的技能。 1. **日志文件...

    bat脚本批量删除日志文件

    1、这里截取当前时间的年月日,不同系统可能默认的不一致,自己可通过cmd–...这里由于日志文件命名是有规律的,都是日志名+时间(年月日).log,通过截取当中的日期与当前时间的一个月前日期比较来决定删除对应的文件。

    清空sql数据库日志文件

    - 对于生产环境中的数据库,应定期监控日志文件的增长趋势,并根据实际情况调整相关的维护计划。 通过以上步骤的操作,可以有效地解决SQL Server 2000中日志文件异常增大的问题,从而保证数据库系统的稳定性和高效...

    Linux系统日志文件的打印与存储

    本文将深入探讨Linux系统日志文件的打印与存储。 一、日志文件的位置与类型 在Linux系统中,日志文件通常存储在/var/log目录下,这里包含了多种类型的日志文件: 1. /var/log/messages:主要记录系统级信息和警告...

    SQLServer处理事务日志文件过大方法

    在SQL Server数据库管理系统中,事务日志文件(Transaction Log File)是用于记录所有事务更改的关键组件之一。随着数据库活动的增加,特别是当数据库频繁执行事务时,事务日志文件可能会迅速增长至非常庞大的尺寸,...

    oracle日志文件大全

    清除未归档的日志文件 - 非当前日志文件 ```sql SQL> alter database clear unarchived logfilegroup n; ``` - 当前日志文件 ```sql -- 修改参数 ALTER SYSTEM SET "_allow_resetlogs_corruption" = TRUE ...

    定时删除日志文件含C#源码

    在IT行业中,日志文件的管理是系统维护和故障排查的重要环节。日志文件记录了应用程序运行时的各种信息,包括错误、警告、调试信息等。然而,随着时间的推移,日志文件可能会变得非常庞大,占用大量的磁盘空间,影响...

    清除sql日志文件工具

    SQL日志文件是数据库系统的重要组成部分,主要用于记录数据库的各种操作,如...总之,"清除sql日志文件工具"是数据库管理的重要辅助手段,能够有效优化磁盘空间,提升系统性能,但使用时必须谨慎操作,确保数据安全。

    SQL SERVER Always On收缩日志文件详细操作及问题处理(已亲测通过)

    为了自动化这个过程,可以创建一个SQL Server Agent Job,定期执行备份和收缩日志的脚本,以确保日志文件不会过度增长并影响系统性能。 总的来说,SQL SERVER Always On环境下的日志收缩需要考虑主副本和辅助副本...

    缩小数据库日志文件

    数据库日志文件在数据库管理系统(DBMS)中扮演着至关重要的角色。它记录了所有对数据库进行的修改操作,包括但不限于插入、更新和删除。这些日志信息对于事务的完整性和数据库的恢复至关重要。如果数据库发生故障,...

    SQL日志文件太大的清理方法

    此命令用于清除已提交事务的日志记录,但不会收缩日志文件本身。这通常作为其他清理步骤前的预备工作。 ``` DUMPTRANSACTION <数据库名> WITH NO_LOG; ``` #### 2. 备份并清理日志 通过备份日志,然后将旧日志从...

    Shell脚本定期清空大于1G的日志文件

    为了防止这种情况,我们可以编写Shell脚本来定期检查并清空大于特定大小(如1GB)的日志文件。这样不仅可以保持磁盘空间的合理使用,还可以确保系统运行的稳定性。下面将详细介绍如何编写这样的Shell脚本。 首先,...

    log4net自动删除日志文件实现

    结合文件系统操作,可以定期检查并删除超过保留期限的日志文件。 **3. RollingFileAppender配置** 配置RollingFileAppender以基于日期滚动,可以按照以下方式设置: ```xml [%t] %-5p %c{1}:%L - %m...

    c#定时任务清除文件夹下文件

    在C#编程中,创建一个定时任务来清除服务器上的旧日志文件是一项常见的需求,这样可以保持文件系统的整洁,防止存储空间被不必要的日志文件占用。以下是一个详细的知识点介绍,将涵盖如何实现这个功能: 1. **定时...

    K3数据库日志文件过大分析及解决方案

    除了以上技术解决方案,文档可能还会涉及到定期维护计划的建立,包括定期清理日志、调整恢复模式以及优化事务处理等,以防止日志文件再次过大的问题。同时,建议用户与金蝶的技术支持团队保持联系,获取最新的技术...

Global site tag (gtag.js) - Google Analytics