关于 Linux 中 tmp 目录的所有必要信息

如果您已经使用 Linux 一段时间,那么您一定遇到过 /tmp 目录。

您可能对此有所了解,但您可能没有给予足够的重视。

然后还有一个听起来类似的/var/tmp 目录。

因此,在本文中,我将向您介绍一些您需要了解的关于 /tmp 目录。 我还将讨论它与 /var/tmp 目录的不同之处。

Linux 中的 /tmp 目录是什么?

顾名思义,root下的tmp(临时)目录用于存放系统和用户应用程序使用的数据,用来存放短时间内需要的数据。 大多数 Linux 发行版都预先配置为在每次重新启动后清空 tmp 目录。

听起来很复杂? 让我给你一个 example.

因此,假设您正在系统中安装软件,因此安装程序可能会存储一些在安装过程中需要的文件。

同样,在处理项目时,您的系统可能会在进行更改时将文件存储在 tmp 目录中,或者它们也可以是该文件的自动保存版本。

简单的说,tmp目录就是一个目录,用来存放临时需要的文件,不需要的时候可以删除。

/tmp 和 /var/tmp 一样吗? 不!

是的,两者之间存在显着差异 /tmp/var/tmp 目录。

简短的回答是他们如何处理临时文件。

/tmp 目录用于存储短期临时文件,而 /var/tmp 目录用于存放长期存在的临时文件。

想要了解更多详情? 给你!

  • 耐力: 通常,文件存储在 /tmp 目录在启动时被删除,而里面的文件 /var/tmp 即使在重新启动后也会保留。
  • 对于用户 VS 系统范围: 通常,文件里面的 /tmp 每个用户都可以访问目录,而文件 /var/tmp 大多是特定于用户的。
  • 用法(最关键的区别): /tmp 目录用于存储短时间需要的文件,例如安装包。 而 /var/tmp 目录用于存放需要较长时间的文件,如系统备份或日志文件。

自动清理 tmp 目录

正如我之前所说,大多数(如果不是全部)发行版都会在您重新启动 Linux 系统时清理 /tmp 目录。

如果是这样,那么为什么需要明确清理 /tmp 目录? 因为您不会像台式计算机那样每天重新启动服务器。 我的意思是检查服务器的正常运行时间; 它可能会运行数周,如果不是数月和数年的话。

?这不是每个人都需要的。 仅当您的服务器磁盘空间不足时,才需要额外努力自动清理 tmp 目录。

要自动清理 tmp 目录,最关键的是首先确定要删除的内容。

所以最好的办法是删除最近三天未使用且不属于 root 的文件。

为此,您可以按以下方式使用 find 命令:

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

但这不会使过程自动化。

为此,您必须创建一个玉米作业来自动执行。

首先,使用以下命令打开根 crontab:

sudo crontab -e

如果您是第一次使用玉米表,它会要求您选择您喜欢的文本编辑器。 我会推荐使用纳米:

完成后,使用 nano 转到文件末尾 Alt + / 并将以下行粘贴到文件中:

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

Save 改变就是这样!

你知道 Linux 文件系统的黑洞吗?

我说的是 /dev/null 这里的目录就像发送到那里的一样,无法追溯! 想知道如何使用它吗? 在这里你有一个详细的指南:

我希望您会发现本指南对您有所帮助。 如果您有任何问题或建议,请发表评论。