/run 和 /var/run 的区别

Jac*_*kzz 45 linux ubuntu directory-structure tmpfs

/run目录和var/run目录之间有什么区别吗?后者似乎是前者的链接。如果内容是一个并且相同,那么需要两个目录吗?

Gra*_*eme 36

文件系统层次结构标准的维基百科页面:

现代 Linux 发行版包括一个 /run 目录作为临时文件系统 (tmpfs),它存储易失性运行时数据,遵循 FHS 3.0 版。根据 FHS 2.3 版,此数据应存储在 /var/run 中,但在某些情况下这是一个问题,因为此目录在早期启动时并不总是可用。结果,这些程序不得不求助于技巧,例如使用 /dev/.udev、/dev/.mdadm、/dev/.systemd 或 /dev/.mount 目录,即使设备目录不是预期的对于此类数据。除其他优点外,这使得系统更容易在以只读方式安装的根文件系统的情况下正常使用。

因此,如果您已经为 制作了一个临时文件系统/run/var/run那么下一个逻辑步骤将是链接到它(而不是将文件保存在磁盘上或创建一个单独的tmpfs)。

  • 为了清楚起见,`/run` 是新的 `/var/run`。所以,`/var/run` 通常被符号链接到 `/run`。 (7认同)
  • @КонстантинВан 好问题。在启动过程的早期阶段,一切都从 RAM 运行。甚至根文件系统最初也是临时的,使用 initrd 或 initramfs。物理介质上的文件系统(可能是“/var”)通常在该过程中相对较晚的情况下安装。 (2认同)

Ant*_*hon 12

一些传统上使用的实用程序/var/run,其他/run用于存储与流程相关的材料。当这些在磁盘目录上是真实的时,这些是单独的目录并不重要。

如今/run/通常以tmpfs( mount | fgrep run) 形式实现,并且这些目录中的数据在重启后将无法保存(这是一件好事)。使用符号链接将它们映射到一起并保存安装更有意义,特别是因为这些目录权限和设置无论如何都是相同的(与其他一些“目录”相反tmpfs