Provided by: manpages-ru_4.21.0-2_all bug

ИМЯ

       tmpfs - файловая система в виртуальной памяти

ОПИСАНИЕ

       Свойство  tmpfs  позволяет создавать файловые системы, чьё содержимое находится в виртуальной памяти. Так
       как файлы в таких файловых системах, обычно, располагаются в оперативной памяти, то доступ к файлах очень
       быстр.

       Файловая система создаётся автоматически при монтировании с типом  tmpfs  с  помощью  команды  следующего
       вида:

           $ sudo mount -t tmpfs -o size=10M tmpfs /mnt/mytmpfs

       Файловая система tmpfs имеет следующие свойства:

       •  Файловая  система  может  задействовать  пространство  подкачки,  если это требуется из-за нагрузки на
          физическую память.

       •  Файловая система потребляет физическую память и пространство подкачки  только  для  хранения  текущего
          содержимого файловой системы.

       •  При  операции  перемонтирования (mount -o remount), размер файловой системы можно изменить (без потери
          имеющегося содержимого файловой системы).

       При размонтировании файловой системы tmpfs её содержимое уничтожается (теряется).

   Параметры монтирования
       Файловая система tmpfs поддерживает следующие параметры монтирования:

       size=байт
              Задать максимальный размер файловой системы. Указывается в байтах и округляется до полного размера
              страницы.

              У размера может быть указан суффикс k, m или g единиц измерения Ki, Mi, Gi (двоичный кило  (kibi),
              двоичный мега (mebi) и двоичный гига (gibi) -байт).

              Также  у  размер может быть указан суффикс %, задающий размер экземпляра в процентах от физической
              оперативной памяти.

              Если size или nr_blocks не заданы, то по умолчанию используется size=50%.

       nr_blocks=блоков
              То же, что и size, но считается в блоках PAGE_CACHE_SIZE.

              У блоков может быть задан суффикс k, m или g, как у size, но нельзя задать суффикс %.

       nr_inodes=инод
              Максимальное количество инод в экземпляре. Значением по умолчанию является или половина количества
              страниц оперативной  памяти,  или  (для  машины  с  highmem)  количество  страниц  памяти  lowmem,
              выбирается меньшее.

              У инод может быть задан суффикс k, m или g, как у size, но нельзя задать суффикс %.

       mode=права
              Назначить начальные права на корневой каталог.

       gid=gid (начиная с Linux 2.5.7)
              Назначить начальный идентификатор группы на корневой каталог.

       uid=uid (начиная с Linux 2.5.7)
              Назначить начальный идентификатор пользователя на корневой каталог.

       huge=huge_option (начиная с Linux 4.7.0)
              Задать  алгоритм  выделения  огромной  табличной  памяти  для  всех файлов в этом экземпляре (если
              включён CONFIG_TRANSPARENT_HUGE_PAGECACHE).

              Значением huge_option может быть одно из:

              never  Не выделять огромные страницы. По умолчанию.

              always Каждый раз пытаться выделить огромные страницы при необходимости в новой странице.

              within_size
                     Only allocate huge page if it will be fully within i_size.  Also  respect  fadvise(2)   and
                     madvise(2)  hints

              advise Only allocate huge pages if requested with fadvise(2)  or madvise(2).

              deny   Запретить  включение  огромных  страниц  у  всех  монтирований,  используется  в экстренных
                     случаях.

              force  Принудительно включить огромные страницы у всех монтирований; полезно при отладке.

       mpol=mpol_option (начиная с Linux 2.6.15)
              Задать  алгоритм  выделения  памяти  NUMA  для  всех  файлов  в  этом  экземпляре  (если   включён
              CONFIG_NUMA).

              Значением mpol_option может быть одно из:

              default
                     Использовать алгоритм выделения из процесса (смотрите set_mempolicy(2)).

              prefer:узел
                     Отдавать предпочтение выделению памяти из указанного узла.

              bind:список_узлов
                     Выделять память только на узлах из списка_узлов.

              interleave
                     Выделять на каждом узле по очереди.

              interleave:список_узлов
                     Выделять на каждом узле по очереди из списка_узлов.

              local  Отдавать предпочтение выделению памяти из локального узла.

              Здесь  список_узлов  —  это  список  перечисленных  через  запятую  десятичных  чисел идиапазонов,
              указывающие узлы  NUMA.  Диапазон  задаётся  парой  десятичных  чисел  через  тире,  наименьший  и
              наибольший номера узлов диапазона. Пример: mpol=bind:0-3,5,7,9-15.

ВЕРСИИ

       Свойство tmpfs было добавлено в Linux 2.4 как последователь старого свойства ramfs, в котором отсутствует
       возможность проверки ограничения и использования пространства подкачки.

ЗАМЕЧАНИЯ

       Чтобы  пользовательские  инструменты и приложения могли создавать файловые системы tmpfs ядро должно быть
       собрано с параметром CONFIG_TMPFS.

       Файловая система tmpfs поддерживает расширенные атрибуты (смотрите  xattr(7)),  но  расширенные  атрибуты
       user не допускаются.

       Для  общей  памяти  System  V  shmget(2))  и  общих анонимных отображений (mmap(2) с флагами MAP_SHARED и
       MAP_ANONYMOUS) используется внутренняя файловая система  общей  памяти.  Эта  файловая  система  доступна
       независимо от того, собрано ли ядро с параметром CONFIG_TMPFS.

       Файловая  система  tmpfs,  смонтированная  в  /dev/shm,   используется  для реализации общей памяти POSIX
       (shm_overview(7)) и семафоров POSIX (sem_overview(7)).

       Объём  памяти,  использованной  во  всех  файловых  системах  tmpfs  показывается  в  поле  Shmem   файла
       /proc/meminfo и в поле shared, показываемом free(1).

       Свойство tmpfs раньше называлось shmfs.

СМ. ТАКЖЕ

       df(1), du(1), memfd_create(2), mmap(2), set_mempolicy(2), shm_open(3), mount(8)

       Файлы          исходного          кода         ядра         Documentation/filesystems/tmpfs.txt         и
       Documentation/admin-guide/mm/transhuge.rst.

ПЕРЕВОД

       Русский перевод этой страницы руководства был сделан Azamat Hackimov <azamat.hackimov@gmail.com>,  Dmitry
       Bolkhovskikh <d20052005@yandex.ru>, Yuri Kozlov <yuray@komyakino.ru> и Иван Павлов <pavia00@gmail.com>

       Этот перевод является бесплатной документацией; прочитайте Стандартную общественную лицензию GNU версии 3
       или более позднюю, чтобы узнать об условиях авторского права. Мы не несем НИКАКОЙ ОТВЕТСТВЕННОСТИ.

       Если  вы обнаружите ошибки в переводе этой страницы руководства, пожалуйста, отправьте электронное письмо
       на man-pages-ru-talks@lists.sourceforge.net.

Linux man-pages 6.03                            5 февраля 2023 г.                                       tmpfs(5)