Answers:
简短的答案:它们存储临时系统文件,包括不同进程之间共享的设备锁和内存段。别担心,他们通常使用一个部分由显示出其“容量”
df
/run
通常是驻留在RAM(又称为“ ramdisk”)中的临时文件系统(tmpfs);它意味着用于存储可能是至关重要的,但“临时”系统或状态文件不要求在重新启动后的持久性。
/run
这实际上是一项相当新的创新,并且是在几年前添加的,以单个统一的根tmpfs 代替以前创建的多个tmpfs(包括/var/lock
和/dev/shm
)。/run
替换为:/ var /运行→/运行 / var /锁定→/运行/锁定 / dev / shm→/ run / shm [目前只有Debian计划这样做] / tmp→/ run / tmp [可选;目前只有Debian计划提供此功能]
/run/lock
(以前/var/lock
)包含锁定文件,即表示共享设备或其他系统资源正在使用的文件,并包含使用该文件的进程的标识(PID);这允许其他进程正确协调对共享设备的访问。
/run/shm
(以前为/dev/shm
)是世界可写的临时共享内存。严格来说,它旨在用作使用POSIX共享内存API的程序的存储。它促进了所谓的进程间通信 (IPC),在该进程中,不同的进程可以通过公共存储区共享和通信,在这种情况下,该存储区通常是存储在“虚拟磁盘”上的普通文件。当然,它可以并且已经以其他创造性方式使用;)
不必担心其大小:重要的是,许多运行df -h
并知道/run
受RAM支持的人都对这些神秘的文件夹“浪费”了他们的宝贵内存感到震惊。就像Linux吞噬了我的RAM神话一样,这种信念是不正确的。
ipcs -m
命令来验证所使用的实际共享内存段是否与df
摘要匹配,并查看正在使用哪些PID/run
最终也会因交换而受支持,因此,如果您使用的/run/shm
是“更快”的编译时间,请记住这一点;)