Linux
為什麼 Linux 上的程序管理文件儲存在 /var/run 下?
為什麼 Linux 上的程序管理文件儲存在
/var/run
.例如:
$ ls -ltr /var/run/ | grep pid -rw-r--r-- 1 root root 4 Mar 26 14:12 lvmetad.pid -rw-r--r-- 1 root root 5 Mar 26 14:12 auditd.pid -rw------- 1 root root 11 Mar 26 14:12 alsactl.pid -rw------- 1 root root 5 Mar 26 14:12 gssproxy.pid -rw-r--r-- 1 root root 5 Mar 26 14:12 ksmtune.pid -rw-r--r-- 1 root root 5 Mar 26 14:12 vmtoolsd.pid -rw------- 1 root root 5 Mar 26 14:13 sm-notify.pid -rw-r--r-- 1 root root 5 Mar 26 14:13 sshd.pid -rw-r--r-- 1 root root 5 Mar 26 14:13 rhnsd.pid -rw-r--r-- 1 root root 5 Mar 26 14:13 atd.pid -rw-r--r-- 1 root root 6 Mar 29 09:42 crond.pid -rw------- 1 root root 6 Mar 30 18:38 syslogd.pid -rw-r--r-- 1 root root 7 Mar 30 19:39 chronyd.pid -rw------- 1 root root 6 Mar 30 21:52 sssd.pid -rw------- 1 root root 5 Mar 30 21:52 oddjobd.pid
注意,眾所周知,
/var/run
是一個tmpfs文件系統。
因為這
/var/run
是FHS標準的祝福目錄,用於存放軟體的執行時數據。該
/var/run
目錄已“棄用”,現在它是/run
許多系統上的符號連結。該目錄包含描述系統自啟動以來的系統資訊數據。此目錄下的文件必須在啟動過程開始時清除(根據需要刪除或截斷)。
由於必須清除那裡的數據並且通常很小(PID 文件很小,並且其他通常儲存的執行時數據有 UNIX 套接字),因此將其放在
tmpfs
. 重新啟動將負責清除它。