tmpwatch安装和使用

目录

一、需求

二、安装和使用

三、常用命令

一、需求

CDH上面时长报警,日志路径也更改过。后来发现是/tmp文件很大,之后安装了tmpwatch软件定期清洗。

二、安装和使用

yum -y install tmpwatch

 

验证:
cat /etc/cron.daily/tmpwatch

[root@hadoop11 ~]# cat /etc/cron.daily/tmpwatch
#! /bin/sh
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_*' -X '/tmp/.hdb*lock' -X '/tmp/.sapstartsrv*.log' \
	-X '/tmp/pymp-*' 10d /tmp
/usr/sbin/tmpwatch "$flags" 30d /var/tmp
for d in /var/{cache/man,catman}/{cat?,X11R6/cat?,local/cat?}; do
    if [ -d "$d" ]; then
	/usr/sbin/tmpwatch "$flags" -f 30d "$d"
    fi
done

 

说明: 下面这句话是,tmp目录会删除30天未访问过的文件或者修改的文件

/usr/sbin/tmpwatch "$flags" -f 30d "$d"

 

帮助文档如下

# man tmpwatch
-u, --atime 基于访问时间来删除文件,默认的。
-m, --mtime 基于修改时间来删除文件。
-c, --ctime 基于创建时间来删除文件,对于目录,基于mtime。
-M, --dirmtime 删除目录基于目录的修改时间而不是访问时间。
-a, --all 删除所有的文件类型,不只是普通文件,符号链接和目录。
-d, --nodirs 不尝试删除目录,即使是空目录。
-d, --nosymlinks 不尝试删除符号链接。
-f, --force 强制删除。
-q, --quiet 只报告错误信息。
-s, --fuser 如果文件已经是打开状态在删除前,尝试使用“定影”命令。默认不启用。
-t, --test 仅作测试,并不真的删除文件或目录。
-U, --exclude-user=user 不删除属于谁的文件。
-v, --verbose 打印详细信息。
-x, --exclude=path 排除路径,如果路径是一个目录,它包含的所有文件被排除了。如果路径不存在,它必须是一个绝对路径不包含符号链接。
-X, --exclude-pattern=pattern 排除某规则下的路径。

 

三、常用命令

查看文件大小

du -sh : 查看当前目录总共占的容量。而不单独列出各子项占用的容量 
du -lh --max-depth=1 : 查看当前目录下一级子文件和子目录占用的磁盘容量。

 

手动清除30天前产生的/tmp日志,

tmpwatch --atime 30d /tmp

 

启动记录查看

[root@hadoop11 tmp]# cat /var/log/cron |grep tmpwatch
Jan 13 03:35:02 hadoop11 run-parts(/etc/cron.daily)[35201]: starting tmpwatch
Jan 13 03:35:04 hadoop11 run-parts(/etc/cron.daily)[35415]: finished tmpwatch
Jan 14 03:22:03 hadoop11 run-parts(/etc/cron.daily)[46220]: starting tmpwatch
Jan 14 03:22:06 hadoop11 run-parts(/etc/cron.daily)[46458]: finished tmpwatch
posted @ 2020-10-14 13:05  弘心壮志  阅读(511)  评论(0编辑  收藏  举报