tmp目录删除和tmpwatch命令的使用

tmp目录删除和tmpwatch命令的使用

[@more@]

tmp目录删除和tmpwatch命令的使用

文章来源:http://cjs0550.blog.hexun.com/30760600_d.html
tmp目录里面的文件,会在一定的时间之后被删除掉,删除是通过
# cat /etc/cron.daily/tmpwatch
/usr/sbin/tmpwatch -x /tmp/.X11-unix -x /tmp/.XIM-unix -x /tmp/.font-unix -x /tmp/.ICE-unix -x /tmp/.Test-unix 240 /tmp
/usr/sbin/tmpwatch 720 /var/tmp
for d in /var/{cache/man,catman}/{cat?,X11R6/cat?,local/cat?}; do
if [ -d "$d" ]; then
/usr/sbin/tmpwatch -f 720 $d
fi
done
来删除,从上面的代码可以看到tmp目录里面的文件,会在240小时不用之后被删除掉。
其中最重要的命令是tmpwatch,下面是此命令的具体使用方法:
linux tmp 文件清理
系统使用时间长后会产生临时文件(/tmp下),需要清理。但清理的时候不推荐使用rm -rf。这样有时会引起程序的僵死。

推荐使用tmpwatch命令来进行清理。关于tmpwatch的说明如下:

名称 : tmpwatch
版本 : 2.8.4
发布号 : 5
所属组 : 系统环境/基础 源码包: tmpwatch-2.8.4-5.src.rpm
大小 : 13273 许可类型: GPL
摘要 : 根据文件被访问的时间来删除文件的工具。

简介 :
tmpwatch 工具从指定的目录中递归地搜索,并删除在指定时间段内没有被访问的文件。tmpwatch 一般被用来清扫那些用来临时驻留文件的目录(譬如,/tmp)tmpwatch 忽略符号链接,它不会切换文件系统,而且只删除空目录和常规文件。
语 法:tmpwatch [-afqv][--test][超期时间][目录...]
补充说明:执行tmpwatch指令可删除不必要的暂存文件,您可以设置文件超期时间,单位以小时计算。

参数:
-a或--all  删除任何类型的文件。
-f或--force  强制删除文件或目录,其效果类似rm指令的"-f"参数。
-q或--quiet  不显示指令执行过程。
-v或--verbose  详细显示指令执行过程。
-test  仅作测试,并不真的删除文件或目录

实例: sudo /usr/sbin/tmpwatch -afv 3 /tmp (清除/tmp下三小时以内没有使用的文件,并将结果输出)。

效果:
[yyc@localhost ~]$ sudo /usr/sbin/tmpwatch -afv 3 /tmp
removing file /tmp/mapping-yyc
removing file /tmp/orbit-yyc/linc-814-0-1bf6199e48d6e
removing file /tmp/orbit-yyc/linc-7ee-0-74c6cf6b5c2c6
removing file /tmp/orbit-yyc/linc-7fd-0-3ae286a04fa21
removing file /tmp/orbit-yyc/linc-854-0-4e3c22c96ddf
removing file /tmp/orbit-yyc/linc-798-0-1c90b9a4739a7
removing file /tmp/orbit-yyc/linc-7e9-0-56828c5c66be1
removing file /tmp/orbit-yyc/linc-815-0-1e0f6f36a2ee3
removing file /tmp/orbit-yyc/bonobo-activation-server-ior
removing file /tmp/orbit-yyc/linc-850-0-5c3b9d5470bfc
removing file /tmp/orbit-yyc/linc-803-0-5ee49981d2cee

来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/23168012/viewspace-1048447/,如需转载,请注明出处,否则将追究法律责任。

转载于:http://blog.itpub.net/23168012/viewspace-1048447/

### tmpwatch 命令的功能与参数详解 `tmpwatch` 是一个用于删除指定目录下长时间未被访问或修改的文件目录的工具。通过设置时间阈值,可以自动化清理不再使用的临时文件,从而释放磁盘空间。 #### 参数解析 以下是 `tmpwatch -afv 3 /tmp/` 中各选项的具体含义: 1. **`-a | --all`**: 表示删除任何类型的文件,而不仅仅是常规文件[^2]。这包括符号链接、设备节点等特殊文件类型。 2. **`-f | --force`**: 强制删除文件或目录,类似于 `rm -f` 的行为[^2]。即使遇到权限不足的情况也不会中断操作。 3. **`-v | --verbose`**: 输出详细的执行过程,帮助用户了解哪些文件或目录正在被处理以及它们的状态变化[^2]。 4. **`3` (时间参数)**: 指定时间为 3 天(单位默认为小时)。只有那些最后修改时间超过此时间段的文件才会被标记为待删除对象[^1]。 5. **`/tmp/` (目标路径)**: 定义要扫描并清理的目标目录,在这里是 `/tmp/` 文件夹及其子结构中的所有符合条件的内容都会受到影响。 #### 执行流程描述 当运行命令 `tmpwatch -afv 3 /tmp/` 后,程序会按照以下逻辑逐步展开工作: - 遍历整个 `/tmp/` 路径下的每一个文件目录- 对于每个项目,检查其最近一次的数据变更时间戳(`mtime`)是否早于当前时刻减去设定的时间间隔(即三天前)[^1]。 - 如果满足条件,则尝试将其移除;如果不满足则跳过该条目继续下一个。 - 整个过程中由于启用了 `-v` 开关,所以每一步重要动作都将打印到标准输出流供观察者跟踪进展状况。 #### 示例代码展示 下面是一个简单的脚本例子来演示如何调用上述提到的方法: ```bash #!/bin/bash # 自动化清除/tmp中超过3天无改动的文件 echo "Starting to clean up files older than 3 days..." tmpwatch -afv $(expr 3 \* 24) /tmp/ echo "Cleanup completed." ``` 这段脚本首先通知用户即将开始清理作业,接着调用带有适当转换后的小时数作为参数传递给 `tmpwatch`, 最终告知完成情况结束进程. ### 注意事项 虽然 `tmpwatch` 提供了一种便捷的方式来管理系统的临时存储区域,但在实际部署之前应该充分测试配置以免误删重要的业务数据或者服务依赖项. 另外值得注意的是某些特定应用可能会频繁更新自己的缓存位置即便这些资源实际上已经废弃不用;因此单纯依靠年龄判断可能并不总是最佳策略.
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值