Я просто хочу знать, где и как /run/lock
и /run/shm
могут помочь нашему ПК.
$ df -h
Filesystem Size Used Avail Use% Mounted on
/dev/sda1 56G 13G 41G 24% /
udev 983M 4.0K 983M 1% /dev
tmpfs 396M 840K 395M 1% /run
none 5.0M 8.0K 5.0M 1% /run/lock
none 990M 164K 990M 0% /run/shm
Короткий ответ: они хранят временные системные файлы, включая блокировки устройства и сегменты памяти, совместно использованные различными процессами. Не волнуйтесь, они обычно используют часть своего "размера", показанного
df
/run
в целом, временная файловая система (tmpfs) нахождение в RAM (иначе "электронный диск"); ее предназначенный для хранения "временной" системы или файлов состояния, которые могут быть очень важными, но не требовать персистентности через перезагрузки.
/run
на самом деле довольно новая идея и была добавлена несколько лет назад для замены нескольких tmpfs's, который раньше создавался (включая /var/lock
и /dev/shm
) с единственным объединенным корнем tmpfs./run
замены:/var/run → /run /var/lock → /run/lock /dev/shm → /run/shm [currently only Debian plans to do this] /tmp → /run/tmp [optional; currently only Debian plans to offer this]
/run/lock
(раньше /var/lock
) содержит файлы блокировки, т.е. файлы, указывающие, что общее устройство или другой системный ресурс используются и содержащий идентификационные данные процесса (PID) с помощью него; это позволяет другим процессам правильно координировать доступ к общему устройству.
/run/shm
(раньше /dev/shm
) временная мировая перезаписываемая общая память. Строго говоря это предназначается как устройство хранения данных для программ с помощью Общей памяти POSIX API. Это упрощает то, что известно как межпроцессное взаимодействие (IPC), где различные процессы могут совместно использовать и связаться через область общей памяти, которая в этом случае обычно является нормальным файлом, который хранится на "электронном диске". Конечно, это может быть и использовалось другими творческими способами также ;)
Не предупреждайтесь о размере: значительно, многие люди, работающие df -h
и знание этого /run
поддерживается RAM, потрясены, что их драгоценная память "тратится впустую" этими таинственными папками. Точно так же, как Linux съел мой миф о RAM, хотя, эта вера является неправильной.
ipcs -m
команда, чтобы проверить, что фактические сегменты общей памяти использовали соответствие до df
сводка, и также видит, какие PIDs используют их/run
также в конечном счете оказан поддержку Вашей подкачкой, поэтому если Вы используете /run/shm
в течение "более быстрого" времени компиляции иметь это в виду ;)