Linux 中的 /tmp 目录是做什么用的?其与 /var/tmp 有什么区别?

系统 Linux
今天我们就来了解一下关于 /tmp 目录的相关内容,·以及它与 /var/tmp 目录的区别。

如果你使用过 Linux 系统,那么你一定知道 /tmp 目录,不过...如果你用的不多,可能就只是知道这个目录而已,不一定有机会深入了解它。

除此以外,还有一个 /var/tmp 目录,这看起来差不多。今天我们就来了解一下关于 /tmp 目录的相关内容,·以及它与 /var/tmp 目录的区别。

/tmp 目录是做什么用的?

tmp 是英文单词 temporary(临时)的简写,顾名思义,它用于存储临时文件,比如系统和应用程序所使用你的临时(短时间内所需要)的数据。大多数Linux 发行版都会预先配置为在每次系统重启后都清空 tmp 目录。

比如,我们在系统中安装软件的时候,安装程序会在 /tmp 目录中存放一些需要用到的临时文件。

再比如,在处理某些项目的时候,系统可能会将更改的文件临时存储在 /tmp 目录中,或者文件自动保存的版本也会存储在 /tmp 目录中。

总体来说,/tmp 目录用于存储一些临时文件,当这些文件不再需要的时候,就可以将其删除。

/tmp 与 /var/tmp 目录是一样的吗?

答案是否定的。/tmp 目录和 /var/tmp 目录有着显著的差异。尽管他们都是用于处理临时文件,但处理方式却是不同的。

总体来说,/tmp 目录用于存储短期临时文件,而 /var/tmp 目录用于存储长期临时文件。

具体来说:

持久性(Endurance):通常,存储在 /tmp 目录中的文件会在系统启动时删除,而 /var/tmp 中的文件不会被删除;

用户权限和系统范围(For user VS Systemwide):通常来讲,每个用户都可以访问 /tmp 目录中的文件,而 /var/tmp 中的文件大多是针对于特定用户的;

用法(Usage):这个是最关键的区别。/tmp 目录用于存储短时间内所需的文件,如安装软件包;而 /var/tmp 目录用于较长时间所需的文件,如系统备份或日志文件。

自动清理 tmp 目录

前文中我们提到过,对于大多数 Linux 发行版而言,当系统重启的时候会自动清理 /tmp 目录。

那既然这样的话,我们为什么还需要主动清理 /tmp 目录呢?因为你不会像使用 Windows 系统那样每天都会关机或者重启系统,有些 Linux 用户会持续数周、数月甚至数年都不会重启系统。

当然,并不是所有人都需要清理 /tmp 目录,只有当你的服务器磁盘空间不足的时候,才需要主动清理 /tmp 目录。

要自动清理 /tmp 目录,最关键的是需要首先明确要删除的内容,最好的办法是删除过去三天内未使用且不属于root用户的文件。

基于这个原则,我们可以使用如下命令:

sudo find /tmp -type f \( ! -user root \) -atime +3 -delete

但是上述命令还不能实现自动化。因此,我们需要创建一个 corn 作业来实现自动化。

sudo crontab -e

如果你第一次使用任务表(corn table),系统可能会让你选择文本编辑器。大家可根据各自习惯选择,比如 vim 或者 nano。

图片

将如下内容粘贴在文件末尾:

0 0 * * * sudo find /tmp -type f ! -user root -atime +3 -delete

保存更改即可。

责任编辑:庞桂玉 来源: TIAP
相关推荐

2023-12-25 15:40:55

React开发

2019-10-28 11:47:15

Docker虚拟机操作系统

2016-08-12 14:37:52

Linux tmpRedhattmpwatch

2024-11-01 09:03:41

varGo语言

2022-11-04 08:59:56

2022-08-31 08:33:54

Bash操作系统Linux

2024-02-19 00:00:00

Python​starmap函数

2022-05-18 14:18:56

区块链加密技术数据

2022-12-14 17:26:43

2018-07-20 14:00:51

LinuxmacOS内核

2023-12-13 15:28:32

Python工具数据

2022-11-07 12:45:30

ripgrep命令Linux

2018-03-05 18:50:22

Linux主目录隐藏文件

2018-07-13 17:05:22

SQLMySQL数据库

2023-10-13 15:48:17

OT系统

2011-08-08 14:09:55

dhcpbootp

2020-12-22 13:46:48

APISKD

2022-09-08 18:38:26

LinuxWindowsmacOS

2020-09-06 09:51:57

SNMP TrapSyslog网络协议

2019-02-27 15:22:15

混合云云计算多云
点赞
收藏

51CTO技术栈公众号