zoukankan      html  css  js  c++  java
  • Linux tmpwatch命令

    Linux tmpwatch命令

     作为系统管理员,很多时候需要定期清理一定规则的文件,比如过期的日志,过期的归档,已备份的文件等等。

            如果使用一定的匹配规则,找出这些文件,然后再传递给rm命令,其实是有点麻烦的,这时候可以试试tmpwatch。

            tmpwatch

    作用:

           删除一定时间没有被访问的文件。

    参数:

         -u  按照文件的最后access时间,即最后访问时间为参考。可通过ls -lu查看。

         -m  按照文件的最后modified时间,即最后修改时间为参考。可通过ls -l查看。

          -c   按照文件的-ctime时间做参考,ctime更新的条件为写入、更改属主、权限。可通过ls -lc查看。

          -x  /PATH  排除特定目录,即不删除该子目录里的文件。

          -U  user_name  排除属于特定用户的文件,即不删除该用户的文件。

          -v  显示删除过程。默认是不显示删除了什么文件,直接删除的。

          --t   用于测试,并不真正删除文件,能显示出要删除文件的过程。

          -d  不删除文件里的子目录,但是子目录里面的文件还是会被删除。

          -f   强制删除那些root没有写权限的文件。比如root的readonly文件

          参数后加时间,默认是hours。有些文章说可以使用20d表示20天,这个我也见过,但在rhel5.8中,只支持hours。应该需要看版本。

          时间后是要检查的目录。可以多个目录用空格分开。

         了解参数命令后,举一个典型的例子

            tmpwatch -m -x /tmp/ceshi1 -U oracle -v -t  2  tmp

          以上这个命令删除/tmp目录下超过两个小时没有被更改过且不属于oracle用户的文件,排除/tmp/test1子目录下的文件。显示整个删除过程,只做测试,不整整删除。

    linux系统会使用这个命令来定时清理/tmp目录。

    下面看下rhel5.8里的/etc/cron.daily/tmpwatch文件。

    [root@localhost tmp]# cat /etc/cron.daily/tmpwatch
    flags=-umc
    /usr/sbin/tmpwatch "$flags" -x /tmp/.X11-unix -x /tmp/.XIM-unix
    -x /tmp/.font-unix -x /tmp/.ICE-unix -x /tmp/.Test-unix
    -X '/tmp/hsperfdata_*' 240 /tmp
    /usr/sbin/tmpwatch "$flags" 720 /var/tmp
    for d in /var/{cache/man,catman}/{cat?,X11R6/cat?,local/cat?}; do
    if [ -d "$d" ]; then
    /usr/sbin/tmpwatch "$flags" -f 720 "$d"
    fi
    done
    [root@localhost tmp]#

    这就是清理规则。懂语法了可以自己学习下。

  • 相关阅读:
    Oracle基础底细数据圭臬标准标准存储魔术浅析(四)——ROWID圭臬标准标准(二)
    Oracle根蒂根基数据典范存储格局浅析(三)——日期典范(一)
    Oracle 数据库注入技能
    Oracle 装配的时分java状况设置选项
    Oracle底子根基数据圭臬尺度存储格式浅析(三)——日期圭臬尺度(四)
    oracle不同数据模范存储空间的实例较量
    RHEL AS 3 安排及启动 Oracle10g 指南
    ORACLE数据库容灾复制措置赏罚方案share Plex
    Oracle 常用函数
    Oracle基本数据标准存储样式浅析(二)——数字标准
  • 原文地址:https://www.cnblogs.com/scwbky/p/10286192.html
Copyright © 2011-2022 走看看