Что такое & ldquo; / run / lock & rdquo; и & ldquo; / run / shm & rdquo; используется для?

Я просто хочу знать, где и как /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
73
задан 06.05.2020, 10:20

1 ответ

Краткий ответ: они хранят временные системные файлы, в том числе блокировки устройств и сегменты памяти, совместно используемые различными процессами. Не волнуйтесь, они обычно используют дробь их «размера», показанного df

  1. /run, как правило, временная файловая система (tmpfs), находящаяся в ОЗУ (он же «ramdisk»); он предназначен для хранения «временных» файлов системы или состояний, которые могут быть критическими, но не требуют сохранения при перезагрузке.

    • /run на самом деле является довольно новым нововведением, и было добавлено пару лет назад для замены нескольких созданных ранее tmpfs (включая /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] 
    
  2. /run/lock [1145] (ранее /var/lock ) содержит файлы блокировки , т. Е. Файлы, указывающие, что совместно используемое устройство или другой системный ресурс используется, и содержащие идентификатор процесса (PID), использующего его; это позволяет другим процессам правильно координировать доступ к общему устройству.

  3. /run/shm (ранее /dev/shm) является временной доступной для записи общей памятью. Строго говоря, он предназначен в качестве хранилища для программ, использующих POSIX Shared Memory API. Это облегчает то, что известно как межпроцессное взаимодействие (IPC) , где различные процессы могут совместно использовать и связываться через общую область памяти, которая в этом случае обычно является обычным файлом, который является хранится на «рамдиске». Конечно, это может быть и использовалось и другими творческими способами;)

  4. Не беспокойтесь о размере : важно, что многие бегут [ 1111] и зная, что /run поддерживается ОЗУ, они шокированы тем, что их драгоценная память «тратится» на эти загадочные папки. Точно так же, как Linux съел мой миф о RAM , хотя это убеждение неверно.

    • Показанный размер является только максимальным , который может использоваться
    • . По умолчанию он составляет 50% физической ОЗУ
    • Только столько, сколько показано в [ 1126] Используемый столбец фактически используется, что на приведенном выше снимке экрана составляет менее 1 мегабайта
    • Вы можете использовать команду ipcs -m, чтобы убедиться, что фактические используемые сегменты разделяемой памяти соответствуют df Сводка, а также посмотрите, какие PID их используют
    • Как и ваша обычная оперативная память, /run также в конечном итоге будет поддерживаться вашей подкачкой, поэтому, если вы используете /run/shm для «более быстрого» времени компиляции, имейте это в виду;)
101
ответ дан 06.05.2020, 10:21

Теги

Похожие вопросы