0x0 前言

前段时间的一个项目需要调用tomcat,没在意这些就把tomcat布在了/tmp下,大概1-2周左右,发现tomcat中的主程序和其他目录丢失,导致tomcat起不来,查看系统日志和tomcat日志也没有看到什么特别的东西,后来问了前辈,他说/tmp下系统会自动删除文件,于是自己查了一些资料,总结下。

0x1 /tmp目录下自动清理删除

在Linux系统中/tmp文件夹下的文件是会被清理、删除的,文件清理的规则是如何设定的呢?
以Redhat为例,这个主要是因为作业里面会调用tmpwatch命令删除那些一段时间没有访问的文件。

0x2 什么是tmpwatch

那么什么是tmpwatch呢?其实tmpwatch是一个命令或者说是一个包。如下所示

tmpwatch - removes files which haven’t been accessed for a period of
time

[root@ ~]# rpm -qa | grep tmpwatch
tmpwatch-2.9.7-1.1.el5.5
[root@ ~]# whereis tmpwatch
tmpwatch: /usr/sbin/tmpwatch /usr/share/man/man8/tmpwatch.8.gz
[root@ ~]# file /usr/sbin/tmpwatch
/usr/sbin/tmpwatch: ELF 64-bit LSB executable, AMD x86-64, version 1 (SYSV), for GNU/Linux 2.6.9, dynamically linked (uses shared libs), for GNU/Linux 2.6.9, stripped

0x3 关于 tmpwatch

命令 作用
tmpwatch 删除一段时间没有被访问的文件。

参数:

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

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

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

-M 按照目录的修改时间来删除目录而不是访问时间。

-a 删除所有类型文件。包括目录和symbolic links

-d --nodirs 排除目录文件,即使是空目录。

-d --nosysmlinks 排除symbolic links类型文件。

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

-q 只报告错误信息。

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

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

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

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

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

0x4 修改清理、删除时间

参数后加时间,默认是hours。也可以使用30d表示30天,但是有些版本只支持hours。
时间后是要检查的目录。可以多个目录用空格分开。如下所示表示720小小时~=30天。如下:

[root@~]#  more /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?}; doif [ -d "$d" ]; then/usr/sbin/tmpwatch "$flags" -f 720 "$d"fi
done
[root@~]#

如果你想将强制删除30天没有访问的文件改为7天,只需把

"/usr/sbin/tmpwatch "$flags" 720 /var/tmp"
"/usr/sbin/tmpwatch  "$flags" -f 720 "$d"

里面的720修改为189即可。

[Linux] Linux中/tmp目录下文件莫名丢失相关推荐

  1. Linux中/proc目录下文件详解

    Linux中/proc目录下文件详解(一) 声明:可以自由转载本文,但请务必保留本文的完整性. 作者:张子坚 email:zhangzijian@163.com 说明:本文所涉及示例均在fedora ...

  2. Linux中/proc目录下文件详解(二)

    Linux中/proc目录下文件详解(二) /proc/mdstat文件 这个文件包含了由md设备驱动程序控制的RAID设备信息. 示例: [root@localhost ~]# cat /proc/ ...

  3. 【问题解决方案】Linux中进入目录下文件夹

    [问题解决方案]Linux中进入目录下文件夹 参考文章: (1)[问题解决方案]Linux中进入目录下文件夹 (2)https://www.cnblogs.com/anliux/p/11486540. ...

  4. Linux中/proc目录下文件详解 /proc/devices文件 /proc/modules文件

    http://blog.chinaunix.net/uid-10449864-id-2956854.html 原来对linux系统中的/proc目录不是很了解,只知道可以查看cpu,内存等相关的信息, ...

  5. linux在当前目录下创建pic目录,Linux中/proc目录下文件详解

    文章转自: Linux中/proc目录下文件详解(一) ------------------------------------------------------------------------ ...

  6. Linux中/proc目录下文件详解(zt)

    Linux中/proc目录下文件详解(一) 声明:可以自由转载本文,但请务必保留本文的完整性. 作者:张子坚 email:zhangzijian@163.com 说明:本文所涉及示例均在fedora ...

  7. linux的tmp目录不会清空,关于Linux系统中/tmp目录的清除问题

    关于Linux系统中/tmp目录的清除问题 相当悲剧的问题是,之前保存在/tmp目录中的一些数据丢了.现在发现已经是第二次发生了,前一次以为是其他人误操作删除的,今天才发现这个和系统有关系.完全是因为 ...

  8. Linux系统中一些目录和文件的详细解释(参照RHEL5.4)

    linux有四种基本文件系统类型: –普通文件:如文本文件.c语言源代码.shell脚本等,可以用cat.less.more.vi等来察看内容,用mv来改名: –目录文件:包括文件名.子目录名及其指针 ...

  9. linux 检查权限,检查目录下 文件的权限-linux shell脚本,

    检查目录下 文件的权限-linux shell脚本, #!/bin/bash #History: #2019/07/23    Fsq #This Program will check Permiss ...

最新文章

  1. 17,Scatter函数
  2. IOS TableView的Cell高度自适应,UILabel自动换行适应
  3. 如果给你机会,阿里巴巴的中层职位和马云的专属司机,你怎么选?
  4. 数据流图 系统流程图 程序流程图 系统结构图联系与区别
  5. Android的Dalvik虚拟机的一个小BUG
  6. mysql zip win10安装_mysql 8.0.16 Win10 zip版本安装配置图文教程
  7. python能自学成功吗-为什么那么多自学Python的后来都放弃了,总结起来就这些原因...
  8. atime、mtime、ctime
  9. Android CheckBox 实战
  10. NullPointerException空指针异常的理解
  11. failed to fetch url linux,ubuntu apt-get下载报failed to fetch错误,请问如何解决
  12. Comparable 与 Comparator 比较
  13. Atitit 人工智能目前的进展与未来 包含的技术 v3
  14. element ui后台html_Github上10 个优秀的后台控制面板
  15. opencv4下使用SVM进行简单颜色分类
  16. 远程接入--为什么选择异速联
  17. 计算机桌面图标怎么变形了,教您电脑桌面图标变大了怎么办
  18. 【游戏开发小技】Unity中实现Dota里的角色技能地面贴花效果(URP | ShaderGraph | Decal)
  19. 无需注册登录NVIDIA官网下载CUDNN
  20. 2019-2020-1 1823《程序设计与数据结构》每周成绩

热门文章

  1. narwal机器人_Narwal云鲸扫地机器人自清洗加压拖,省心省力省时
  2. 20200909 Vedio Game 游戏平台数据分析
  3. html用来注释的标记,互联网常识:html的注释标记是什么
  4. 什么叫做注解?注解和注释有什么区别?
  5. 阿里发布内部(面试官)题库:2022年Java社招岗(正式版)面试题
  6. 运行最新创建的镜像:
  7. 标识符(Identifier)
  8. 微信公众平台推广攻略
  9. 应用计算机怎么弹ink,Win7系统打开计算机管理提示computer management.Ink的解决方法教程[多图]...
  10. Android 视频边下边播,MP4头信息在后调整头信息