НАИМЕНОВАНИЕ
tmpfs -
файловая
система в
виртуальной
памяти
ОПИСАНИЕ
Свойство
tmpfs
позволяет
создавать
файловые
системы,
чьё
содержимое
находится
в
виртуальной
памяти. Так
как файлы в
таких
файловых
системах,
обычно,
располагаются
в
оперативной
памяти, то
доступ к
файлах
очень
быстр.
Файловая
система
создаётся
автоматически
при
монтировании
с типом tmpfs с
помощью
команды
следующего
вида:
$ sudo mount -t tmpfs -o size=10M tmpfs /mnt/mytmpfs
Файловая
система tmpfs
имеет
следующие
свойства:
- •
- Файловая
система
может
задействовать
пространство
подкачки,
если это
требуется
из-за
нагрузки
на
физическую
память.
- •
- Файловая
система
потребляет
физическую
память и
пространство
подкачки
только для
хранения
текущего
содержимого
файловой
системы.
- •
- При
операции
перемонтирования
(mount -o remount),
размер
файловой
системы
можно
изменить
(без потери
имеющегося
содержимого
файловой
системы).
При
размонтировании
файловой
системы tmpfs
её
содержимое
уничтожается
(теряется).
Параметры
монтирования
Файловая
система tmpfs
поддерживает
следующие
параметры
монтирования:
- size=байт
- Specify an upper limit on the size of the filesystem. The size is given in
bytes, and rounded up to entire pages. The limit is removed if the size is
0.
- У размера
может быть
указан
суффикс 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=инод
- The maximum number of inodes for this instance. The default is half of the
number of your physical RAM pages, or (on a machine with highmem) the
number of lowmem RAM pages, whichever is smaller. The limit is removed if
the number is 0.
- У инод
может быть
задан
суффикс k,
m или g, как
у size, но
нельзя
задать
суффикс %.
- noswap(since Linux
6.4)
- Disables swap. Remounts must respect the original settings. By default
swap is enabled.
- mode=права
- Назначить
начальные
права на
корневой
каталог.
- gid=gid
(начиная с Linux
2.5.7)
- Назначить
начальный
идентификатор
группы на
корневой
каталог.
- uid=uid
(начиная с Linux
2.5.7)
- Назначить
начальный
идентификатор
пользователя
на
корневой
каталог.
- huge=huge_option
(начиная с Linux
4.7.0)
- Set the huge table memory allocation policy for all files in this instance
(if CONFIG_TRANSPARENT_HUGEPAGE is enabled).
- Значением
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 может
быть одно
из:
- Здесь
список_узлов
— это
список
перечисленных
через
запятую
десятичных
чисел
идиапазонов,
указывающие
узлы 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.
ПЕРЕВОД
Русский
перевод
этой
страницы
руководства
разработал(и)
Azamat Hackimov <azamat.hackimov@gmail.com>, Dmitry Bolkhovskikh
<d20052005@yandex.ru>, Yuri Kozlov <yuray@komyakino.ru>,
Иван
Павлов <pavia00@gmail.com>
и Kirill Rekhov <krekhov.dev@gmail.com>
Этот
перевод
является
свободной
программной
документацией;
он
распространяется
на
условиях
общедоступной
лицензии GNU (GNU
General Public License - GPL,
https://www.gnu.org/licenses/gpl-3.0.html
версии 3 или
более
поздней) в
отношении
авторского
права, но
БЕЗ
КАКИХ-ЛИБО
ГАРАНТИЙ.
Если вы
обнаружите
какие-либо
ошибки в
переводе
этой
страницы
руководства,
пожалуйста,
сообщите
об этом
разработчику(ам)
по его(их)
адресу(ам)
электронной
почты или
по адресу
списка
рассылки
русских
переводчиков.