Linux每次重启都会清理 /tmp 下的临时文件,但既是服务器,又怎么会经常重启呢?当时有人也使用 rm -rf /tmp/* ,但是 rm -rf /tmp/* 可能误删,也可能造成进程僵死。所以楼主推荐你使用 tmpwatch 命令。如果系统是最小安装的情况下,可能没有 tmpwatch 命令,如: -bash: tmpwatch: command not found ,这个时候首先要安装 tmpwatch 命令,执行命令: yum install tmpwatch -y 即可。
tmpwatch 删除临时暂存文件
参数:
-a或--all 删除所有类型的文件。 -f或--force 强制删除文件或目录,类似rm指令的 -f 参数。 -q或--quiet 不显示指令执行过程。 -v或--verbose 详细显示指令执行过程。 --test 仅作测试,并不真的删除文件或目录。
使用实例:
注: 执行结果如下:
本命令可以删除 [3] 天前的所有目录。
其中:
/data/backup/ - 目标目录
-maxdepth - 最大目录层次,我要从第一级目录开始删除,1就可以了
-type d - *** 作对象为目录, f 代表文件
-mtime + - 7天前的目录
-exec rm -rf {} - 执行命令的标准格式
配合脚本,就可以自动在服务器上清理旧的临时文件了。
/tmp 下的文件在每次关机后都会被清理干净,
若想手动清理,清理的时候不推荐使用rm -rf命令,这样有时会引起程序的僵死。推荐使用tmpwatch命令来进行清理。
附tmpwatch功能及使用说明:
tmpwatch简介:tmpwatch 工具从指定的目录中递归地搜索,并删除在指定时间段内没有被访问的文件。tmpwatch 一般被用来清扫那些用来临时驻留文件的目录(譬如,/tmp)tmpwatch 忽略符号链接,它不会切换文件系统,而且只删除空目录和常规文件。
tmpwatch语 法:tmpwatch [-afqv][--test][超期时间][目录...]
tmpwatch参数说明:
-a或--all 删除任何类型的文件。
-f或--force 强制删除文件或目录,其效果类似rm指令的"-f"参数。
-q或--quiet 不显示指令执行过程。
-v或--verbose 详细显示指令执行过程。
-test 仅作测试,并不真的删除文件或目录
实例:sudo /usr/sbin/tmpwatch -afv 3 /tmp (清除/tmp下三小时以内没有使用的文件,并将结果输出)。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)