нужна информация о создании памяти подкачки в unix

Я создаю файл подкачки с помощью команды fallocate -l "$ memory" "$ swapfilename" .

У меня есть несколько вопросов:

  1. В какой файловой системе создается файл подкачки, если имеется несколько файловых систем? Можем ли мы указать извне, из какой файловой системы брать?

  2. У меня две файловые системы tmpfs и rootfs , и по умолчанию файл подкачки создается с использованием памяти rootfs; даже tmpfs имеет больший размер. Что такое tmpfs?

  3. Как проверить, есть ли место перед созданием файла подкачки?

[root@rhev6 scripts]# df -h
Filesystem      Size  Used Avail Use% Mounted on
rootfs          3.1G  2.8G  123M  96% /
tmpfs           1.5G   76K  1.5G   1% /dev/shm
0
07.05.2017, 02:23
3 ответа

Файл создается в каталоге, обозначенном $ swapfilename , по умолчанию текущий каталог. Команда fallocate не знает, что вы хотите делать с файлом; он просто создает его и выделяет запрошенное пространство. Чтобы использовать файл в качестве области подкачки, вам необходимо запустить на нем mkswap .

tmpfs - файловая система на основе памяти, используемая для (небольших) временных файлов. Поскольку он основан на памяти, в файловых системах tmpfs редко бывает много места. rootfs - это еще одна файловая система на основе памяти, используемая только для хранения корневого каталога перед монтированием в него чего-либо. В производстве обычно используется дисковая файловая система, смонтированная на / .

Вы хотите разместить файл подкачки в файловой системе на диске, например в файловой системе ext4 .

0
28.01.2020, 04:48

Ответы на ваши вопросы по порядку

В какой файловой системе создается файл подкачки, если несколько файлов системы присутствуют? Можем ли мы указать извне, из какой файловой системы брать?

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

У меня две файловые системы tmpfs и rootfs , и по умолчанию файл подкачки создается с использованием памяти rootfs ; даже tmpfs имеет больший размер. Что такое tmpfs?

tmpfs - это временная файловая система, которая поступает непосредственно из физической памяти. Если у вас 8 ГБ физической памяти, вы можете использовать файловую систему tmpfs размером 2 ГБ. Существует прямой компромисс между объемом памяти, доступной в файловой системе tmpfs , и объемом памяти, доступной для работающей системы.

Ваш rootfs - это минимальный загрузочный образ на основе памяти. Обычно я ожидал, что ее заменили настоящей корневой файловой системой на основе диска, но здесь этого не произошло.

Не создавайте файл подкачки ни в файловых системах rootfs , ни в tmpfs !

Как проверить, есть ли место перед созданием файла подкачки?

Команда df -h покажет вам доступное пространство для каждой точки монтирования. Вы можете выбрать один (любой), поддерживаемый физическим диском и имеющий достаточно места.В крошечном фрагменте снимка экрана нигде не показано подходящего места, поскольку вы включили только файловые системы rootfs и tmpfs .

0
28.01.2020, 04:48

В какой файловой системе создается файл подкачки, если имеется несколько файловых систем? Можем ли мы указать извне, из какой файловой системы брать?

Команда fallocate используется для создания, увеличения или уменьшения файла до указанного размера. Он создаст этот файл везде, где вы ему скажете. Его также можно использовать для «копания дыр» в файлах, уменьшая количество используемых ими блоков на диске.

У меня две файловые системы tmpfs и rootfs, и по умолчанию файл подкачки создается с использованием памяти rootfs; даже tmpfs имеет больший размер.Что такое tmpfs?

Несмотря на распространенное мнение, tmpfs - это не файловая система на основе RAM, а файловая система на основе виртуальной памяти. Это означает, что его внутренняя часть представляет собой сумму областей подкачки на диске, которые могут быть разделами или простыми файлами, и части ОЗУ, которая не используется или зарезервирована для других целей. Конечно, если вы не создали никакой области подкачки, tmpfs похож на файловую систему на основе RAM.

Как проверить, есть ли место перед созданием файла подкачки?

Перед созданием файла подкачки вам необходимо найти файловую систему с достаточным пространством. Виртуальные файловые системы, такие как rootfs или tmpfs , не подходят для подкачки. Когда rootfs поддерживается оперативной памятью (ramfs), создание на нем значительного файла подкачки будет иметь катастрофические последствия, иначе это будет похоже на создание файла подкачки на tmpfs , что абсолютно бессмысленно, точно так же, как наполнение бака жидкостью, взятой из этого самого бака.

0
28.01.2020, 04:48

Теги

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