Как ускорить linux

Why is my swap not being used?

My swap is not being used! When I issue the free command, it shows something like this:

tom@tom:~$ free
             total       used       free     shared    buffers     cached
Mem:        515980     448664      67316          0      17872     246348
-/+ buffers/cache:     184444     331536
Swap:       674688          0     674688

Note: This regards mainly swap on hard disk partitions, but it could help anyway. In these examples /dev/hda8 is considered as swap.

Swap may not be needed

Start many memory consuming applications (e.g. Gimp, web browsers, LibreOffice etc) and then issue the free command again. Is swap being used now?

Ubuntu Desktop uses Swap to Hibernate (PC off, no power needed, program states saved). If Hibernation is important to you, have more swap space than ram + swap overflow.

Is there a swap partition at all?

Use this command to see all partitions

sudo parted --list

You should be able to see something like this in the output

 5      236GB   256GB   20.0GB  linux-swap(v1)

If not, you either need to or create a swap partition. To create a swap partition you can

  • boot from your Ubuntu install CD, create a swap partition out of the free space on your hard disk and then interrupt your installation.
  • use Cfdisk.

Enabling a swap partition

In case you do have a swap partition, there are several ways of enabling it.

  • Use the following command
    cat /etc/fstab
  • Ensure that there is a line link below. This enables swap on boot.
    /dev/sdb5       none            swap    sw              0       0
  • Then disable all swap, recreate it, then re-enable it with the following commands.
    sudo swapoff -a
    sudo /sbin/mkswap /dev/sdb5
    sudo swapon -a

Настройка файла подкачки в Ubuntu 20.04

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

1. Проверка места на диске

Необходимо убедится, что на жёстком диске есть достаточно свободного места. Самый простой способ узнать количество свободного места в терминале – воспользоваться утилитой df:

В данном случае есть достаточно места для размещения и увеличения пространства подкачки. Размер swap в Ubuntu 20.04 зависит от потребностей. Обычно рекомендуют использовать объем в два раза больше, чем реальный размер оперативной памяти. Но как правило больше 4 Гб использовать не нужно. Если планируется использовать гибернацию на персональном компьютере, то нужно использовать объем, равный объему ОЗУ.

2. Создание файла подкачки

Самый быстрый способ создать swap файл в Ubuntu 20.04 – это использовать утилиту fallocate, она создает файл нужного размера мгновенно. Поскольку в качестве примера используется машина с 8 Гб оперативной памяти, необходимо добавить раздел подкачки на 3 Гб. Для этого необходимо выполнить команду:

Далее, необходимо убедиться действительно ли зарезервировано нужное количество памяти. Для проверки необходимо выполнить команду:

Активация swap

Когда файл готов, необходимо превратить его в файл swap. Сначала нужно заблокировать доступ к нему всем кроме суперпользователя. Для этого необходимо выполнить:

Теперь только пользователь root может читать и изменить данный файл:

Далее необходимо создать файловую систему swap командой:

Когда файл будет размещен и промаркирован необходимо включить файл подкачки чтобы начать его использовать:

После этого можно убедиться, что swap включен, выполнив команду:

Так же наличие swap можно проверить при помощи утилиты free, выполнив команду:

Файл подкачки был успешно создан и активирован. Теперь памяти доступно больше и система не зависнет при нехватке оперативной памяти. Но данный способ будет работать только до перезагрузки устройства.

Постоянный файл подкачки

Как уже было сказано ранее, данный swap будет работать только до перезагрузки сервера или компьютера. Чтобы настройка swap в Ubuntu 20.04 сохранялась после перезагрузки нужно отредактировать файл /etc/fstab. Можно вручную добавить строку в файл, но также можно использовать следующую команду:

How do I add a swap file?

Note: btrfs does not support swap files at the moment. See . and

Create the Swap File:

We will create a 1 GiB file (/mnt/1GiB.swap) to use as swap:

sudo fallocate -l 1g /mnt/1GiB.swap

fallocate size suffixes: g = Giga, m = Mega, etc. (See man fallocate).

If fallocate fails or it not available, you can use dd:
sudo dd if=/dev/zero of=/mnt/1GiB.swap bs=1024 count=1048576

We need to set the swap file permissions to 600 to prevent other users from being able to read potentially sensitive information from the swap file.

sudo chmod 600 /mnt/1GiB.swap

Format the file as swap:

sudo mkswap /mnt/1GiB.swap
sudo swapon /mnt/1GiB.swap

The additional swap is now available and verified with: cat /proc/swaps

Enable Swap File at Bootup

Add the swap file details to /etc/fstab so it will be available at bootup:

echo '/mnt/1GiB.swap swap swap defaults 0 0' | sudo tee -a /etc/fstab

Example of making a swap file

This is an example of making and using a swap file on a computer with no swap partition.

$ sudo fallocate -l 1g /mnt/1GiB.swap
$ sudo chmod 600 /mnt/1GiB.swap
$ sudo mkswap /mnt/1GiB.swap
Setting up swapspace version 1, size = 1048576 kB
$ sudo swapon /mnt/1GiB.swap
$ cat /proc/swaps 
Filename                                Type            Size    Used    Priority
/home/swapfile                          file            1048576 1048576 -1
$ echo '/mnt/4GiB.swap swap swap defaults 0 0' | sudo tee -a /etc/fstab
$ reboot
$ free -h
              total        used        free      shared  buff/cache   available
Mem:            15G        9.3G        454M        4.0G        5.8G        1.9G
Swap:          1.0G        1.0G          0B

Disable and Remove a Swap File

Disable the swap file from the running system and the delete it:

sudo swapoff /mnt/1Gib.swap 
sudo rm /mnt/1Gib.swap

Remove the swap file details from fstab:

gksudo gedit /etc/fstab

Removing the swap file line

/mnt/1GiB.swap swap swap defaults 0 0

Производительность

Операции подкачки как правило существенно медленнее чем непосредственный доступ к RAM. Отключение подкачки полностью для повышения производительности, иногда может привести к ухудшению, поскольку это уменьшает доступную память для VFS кеша, вызывая более частые и дорогостоящие операции ввода/вывода.

Значения подкачки можно настроить, чтобы помочь производительности:

Swappiness

Swappiness sysctl параметр представляющий частоту использования пространства подкачки. Swappiness может иметь значение от 0 до 100, значение по умолчанию = 60. Низкое значение заставляет ядро избегать подкачки, высокое значение позволяет ядру использовать подкачку наперёд. Использование низкого значения на достаточном количестве памяти, улучшает отзывчивость на многих системах.

Чтобы проверить текущее значение swappiness:

$ cat /sys/fs/cgroup/memory/memory.swappiness

или

$ cat /proc/sys/vm/swappiness

Примечание: Т.к. менее организован и сохраняется только для обратной совместимости, вместо него предпочтительнее использовать .

Чтобы временно установить значение swappiness:

# sysctl vm.swappiness=10

Чтобы постоянно установить значение swappiness, отредактируйте (создайте) конфигурационный файл sysctl

/etc/sysctl.d/99-sysctl.conf
vm.swappiness=10

Приоритет

Если у вас больше одного файла или раздела подкачки, вы должны учитывать присвоение приоритетного значения (от 0 до 32767) для каждой области подкачки. Система будет использовать области подкачки с высоким приоритетом, перед использованием областей с низким приоритетом. Например, если у вас быстрый диск () и медленный (), назначьте высокий приоритет для подкачки расположенной на быстром устройстве. Приоритет может быть назначен в fstab как параметр:

/dev/sda1 none swap defaults,pri=100 0 0
/dev/sdb2 none swap defaults,pri=10  0 0

Или как параметр в swapon

# swapon --priority 100 /dev/sda1

Если две или более областей будут иметь одинаковый приоритет и он будет самым высоким из доступным приоритетов, то страницы будут распределяться по кругу между областями.

Использование zswap или zram

Zswap это особенность ядра Linux, обеспечивающая сжатие обратного кэша для страниц подкачки. Она увеличивает производительность и уменьшает операции ввода/вывода. ZRAM создаёт виртуальный сжатый файл подкачки в памяти, как альтернатива файлу подкачки на диске.

Дополнительные настройки

Можно контролировать интенсивность использования пространства подкачки в Ubuntu 20.04 с помощью параметра ядра swappiness:

По умолчанию установлено значение 60. Если это значение ближе к 100, система будет пытаться поместить в подкачку больше данных и сберечь память, при значениях близких к нулю, ядро не переносит данные на диск, если в этом нет крайней необходимости. Этот вариант может сделать систему быстрее, особенно актуально для домашних компьютеров.

Чтобы установить значение 10 необходимо выполнить команду:

А для сохранения этой настройки после перезагрузки:

Другой параметр, который влияет на количество используемой памяти -vfs_cache_pressure. Он указывает системе какое время нужно хранить открытые файлы в кэше оперативной памяти. Значение 100 заставляет систему удалять такие файлы очень быстро, 0 — держать их в памяти как можно дольше. Проверить текущее состояние можно при помощи команды:

Чтобы хранить файлы дольше, можно установить значение в 50 используя команду:

Создание файла подкачки Linux

Если вы удостоверились в том, что файл подкачки отсутствует, можно переходить к его созданию. Пример, приведенный ниже, будет показан с использованием операционной системы Ubuntu 18.04, но работать это должно и на других дистрибутивах Linux.

Шаг 1: Создаем swap файл

Давайте создадим файл подкачки для нашей Ubuntu. Для примера его размер составит 1 Гб. Запустите терминал и введите команду, приведенную ниже:

Для обеспечения безопасности файла обязательно устанавливаем на него нужные права.

При этом вместо «swapfile» мы можем указать любое другое название.

Шаг 2: Создание файловой системы

Создание swap linux ещё не завершено. Теперь необходимо указать нашей операционной системе, что созданный объект должен использоваться как файл подкачки. Для этого мы будем использовать команду, приведенную ниже:

Если все сделано верно, результат будет выглядеть так:

Шаг 3: Активируем файл подкачки

Хорошо, теперь наш Linux понимает, что это файл подкачки, но этого недостаточно. Нам также необходимо включить SWAP:

Давайте проверим, все ли мы сделали правильно:

Отлично, операционная система распознала наш файл подкачки и начала его использовать. Мы видим тип в поле TYPE и размер в поле SIZE.

Шаг 4. Сохранение изменений после перезагрузки

Все операции, которые мы предприняли выше, временны. Как только компьютер будет перезагружен, они отменятся. Для того чтобы сделать изменения постоянными, нам необходимо дописать кое-какую информацию в /etc/fstab. Для этого поступаем так:

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

После этого можно переходить непосредственно к добавлению нужных нам данных. Нам надо добавить в файл такую строчку:

Это реализуется через текстовый редактор, запущенный с правами суперпользователя, либо при помощи введенной в терминал команды:

Готово. Изменения сохранены и файл подкачки не сбросится после перезагрузки операционной системы.

Изменение подкачки

Как и многие другие аспекты рабочего стола Linux, данные вашего компьютера хранятся в текстовом файле. Вы можете найти этот файл, перейдя в .

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

Чтобы сделать это с помощью текстового редактора GNOME по умолчанию, который есть в Ubuntu и Fedora, вы можете попробовать:

sudo gedit /proc/sys/vm/swappiness

Существует также опция командной строки, которая работает независимо от того, какой текстовый редактор вы установили. Просто введите:

sudo sysctl vm.swappiness=20

Вы можете ввести любую цифру от 0 до 100. Значение указывает, когда вы хотите, чтобы Linux начал активное перемещение процессов из памяти в раздел подкачки. Так, например, значение 20 указывает, что процессы будут перемещены, когда использование памяти достигнет 80%; значение swappiness по умолчанию в Ubuntu 60 указывает, что процессы будут перемещены, когда использование памяти достигнет 40%.

Вы можете проверить, было ли изменение успешным, повторно открыв этот текстовый файл. Неудивительно, что терминал предлагает более быстрый способ проверить вашу подкачку. Просто введите эту команду:

cat /proc/sys/vm/swappiness

Шаг 6 — Изменение настроек подкачки

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

Настройка параметра Swappiness

Параметр определяет, как часто система выгружает данные из оперативной памяти в пространство подкачки. Его значение выражается числом от 0 до 100 процентов.

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

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

Можем увидеть текущее значение фактора swappiness, введя следующее:

Для настольного компьютера неплохое значение swappiness — 60. Для сервера, возможно, вы захотите приблизить его к 0.

Можно задать другое значение swappiness при помощи команды .

Например, чтобы установить значение swappiness 10, можно ввести следующее:

Эта настройка будет сохраняться до следующей перезагрузки. Можно автоматически задать это значение при перезагрузке, добавив строку в файл :

Внизу можно ввести следующее:

/etc/sysctl.conf

Сохраните файл и закройте его после завершения.

Изменение настроек нагрузки кэш-памяти

Еще одно связанное значение, которое вы, возможно, захотите изменить — . Эта настройка определяет, насколько система будет кэшировать данные inode и dentry по сравнению с другими данными.

По сути, это данные доступа к файловой системе. Как правило, искать их довольно сложно, а запрашиваются они часто, так что кэш-память в этом случае весьма полезна. Чтобы узнать текущее значение этого параметра, можно еще раз запросить файловую систему :

Согласно текущим настройкам, система удаляет данные инодов из кэша слишком быстро. Можно задать более консервативное значение — например, 50 — введя следующее:

Опять-таки, это значение действительно только для текущей сессии. Чтобы сделать его постоянным, нужно (как и в случае со swappiness) изменить файл конфигурации:

Внизу добавьте строку с новым значением:

/etc/sysctl.conf

Сохраните и закройте файл после завершения.

How do I add or modify a swap partition?

Process to Increase Size of Swap Partition and use it for Hibernation

  • Creating the swap partition
  • Activating the swap partition
  • Making the new swap partition work for hibernate (optional)

Creating the swap partition

  1. Boot to Ubuntu install CD and choose the option to run Ubuntu now
  2. Go to system -> GParted Partition Editor

  3. Delete the swap partition and, if there is nothing else in it, the extended partition that holds it. (If by some miracle you’re able to resize your swap partition from here, I imagine your life will be a lot easier than mine.)
  4. Decrease the size of your primary partition by the amount you want your new swap to be (I made mine 2x RAM + 500MB just to be safe). The easiest way to do this is to fill in the amount of space you want swap to be in the «free space following» field
  5. In the free space that has now been created, choose new, type linux-swap and you can name the partition «swap» if you like
  6. Hit the *Apply* button (should be a check mark) to write the changes to disk
  7. When done, reboot back into Ubuntu

Activating the swap partition

(If your swap is on your primary hard drive, you don’t need to do anything here.) Now you need to find what partition your swap is on and what its UUID is. UUID?! you say? Well that’s the Universally Unique IDentifier for the partition so you can reference it even if it’s on a different mount point from boot-to-boot due to adding disks, etc.

  1. Pull up a terminal and run gksu gparted & and enter your root password. The & lets this process run while still giving you access to the command line.

  2. Right-click on your swap partition and choose *Information*. You should see the **Path** and **UUID** listed there. Keep this open for further reference.
  3. Run gksu gedit /etc/fstab & and look for the line that has *swap* in it. It should be the third column, separated by spaces or tabs. You can either use the path or the UUID to tell Linux where to find your swap partition. I recommend UUID because it’ll stay constant even if you move the partition around or the disk somehow becomes sdb instead of sda or something like that. Make the appropriate edits and save the file. Your line should look something like this if you used UUID (with your UUID instead, of course):

    • UUID=41e86209-3802-424b-9a9d-d7683142dab7 none swap sw 0 0

    • or this if you used path: /dev/sda2 none swap sw 0 0

  4. Save the file.
  5. Enable the new swap partition with this command.

    sudo swapon --all

    OR

    $ sudo swapon --all --verbose
    swapon on /dev/sda2
    swapon: /dev/sda2: found swap signature: version 1, page-size 4, same byte order
    swapon: /dev/sda2: pagesize=4096, swapsize=2147483648, devsize=2147483648
  6. Confirm that the swap partition exists.

    $ cat /proc/swaps
    Filename                                Type            Size    Used    Priority
    /dev/sda2                               partition       2097148 0       -1
  7. Reboot to make sure the new swap gets activated properly at startup

Making the swap partition work for hibernate (optional)

‘INFO: This will not work for 12.04, resume from hibernate work differently in 12.04.’

  1. Pull up a Terminal again and run cat /proc/swaps and hopefully you see the path to your swap partition listed there. If not chances are something went wrong in the steps above. Here’s my output:

Filename                                Type            Size    Used    Priority
/dev/sda2                               partition       2676732 73380   -1
  1. gksu gedit /etc/default/grub & to pull up the boot loader configuration

  2. Look for the line GRUB_CMDLINE_LINUX="" and make sure it looks like this (using your UUID of course) GRUB_CMDLINE_LINUX="resume=UUID=41e86209-3802-424b-9a9d-d7683142dab7" and save the file

  3. sudo update-grub and wait for it to finish

  4. gksu gedit /etc/initramfs-tools/conf.d/resume & and make sure its contents are resume=UUID=41e86209-3802-424b-9a9d-d7683142dab7 (with your UUID of course in place of mine). Save the file!

  5. sudo update-initramfs -u

  6. Reboot!

Now you should be able to hibernate and resume!

Debian 10 Review (GNOME)

Debian 10 Review (GNOME)

Своп — это пространство на диске, которое используется, когда объем физической памяти заполнен. Когда в системе Linux заканчивается ОЗУ, неактивные страницы перемещаются из ОЗУ в пространство подкачки.

Пространство подкачки может принимать форму выделенного раздела подкачки или файла подкачки. Обычно при запуске виртуальной машины Debian раздел подкачки отсутствует, поэтому единственный вариант — создать файл подкачки.

Из этого туториала вы узнаете, как добавить файл подкачки в Debian 10 Buster.

Прежде чем вы начнете

Хотя это возможно, нередко иметь несколько мест подкачки на одном компьютере. Чтобы проверить, включена ли в вашей установке Debian подкачка, выполните следующую команду:

Если выходные данные пусты, это означает, что в системе нет пространства подкачки.

В противном случае, если вы получите что-то похожее на приведенное ниже, в вашей системе Debian уже включен своп.

Чтобы активировать swap, пользователь, выполняющий команды, должен иметь права sudo.

Создание файла подкачки

В этом примере мы создадим и активируем своп . Чтобы создать больший своп, замените размером требуемого пространства подкачки.

Следующие шаги показывают, как добавить пространство подкачки в Debian 10.

  1. Сначала создайте файл, который будет использоваться для обмена:

    Если не установлен или вы получаете сообщение об ошибке, в котором что вы можете использовать следующую команду для создания файла подкачки:

    Только пользователь root может читать и писать в файл подкачки. Введите команду ниже, чтобы установить правильные разрешения:

    Используйте инструмент для настройки области подкачки Linux для файла:

    Активируйте файл подкачки:

    Чтобы сделать изменение постоянным, откройте файл :

    и вставьте следующую строку:

    / И т.д. / Fstab

    Проверьте, активен ли swap, используя команду или как показано ниже:

Регулировка стоимости свопинга

Swappiness — это свойство ядра Linux, которое определяет, как часто система будет использовать пространство подкачки. Перестановка может иметь значение от 0 до 100. Низкое значение заставит ядро ​​стараться избегать подкачки, когда это возможно, в то время как более высокое значение заставит ядро ​​более агрессивно использовать пространство подкачки.

Значение подкачки по умолчанию равно 60. Вы можете проверить текущее значение подкачки, используя команду :

Хотя значение перестановки 60 подходит для большинства систем Linux, для производственных серверов следует установить более низкое значение.

Например, чтобы установить значение swappiness на 10, введите:

Чтобы сделать этот параметр постоянным при перезагрузке, добавьте следующую строку в :

/etc/sysctl.conf

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

Удаление файла подкачки

Чтобы деактивировать и удалить файл подкачки, выполните следующие действия:

  1. Деактивируйте пространство подкачки, выполнив:

    Откройте файл текстовом редакторе и удалите по .

    Наконец, удалите фактический файл подкачки с помощью команды :

Вывод

Вы узнали, как создать файл подкачки, активировать и настроить пространство подкачки на вашем компьютере с Debian 10.

поменять оперативную память Debian

Своп — это пространство на диске, которое используется, когда объем физической оперативной памяти заполнен. В этом руководстве объясняется, как добавить файл подкачки в системах CentOS 7.

Своп — это пространство на диске, которое используется, когда объем физической оперативной памяти заполнен. В этой статье описываются этапы добавления файла подкачки в системах CentOS 8.

Своп — это пространство на диске, которое используется, когда объем физической оперативной памяти заполнен. В этом руководстве описаны шаги, необходимые для добавления файла подкачки в системах Debian 9.

Why do I need swap?

Memory consuming programs Sometimes, a large program (like LibreOffice, Neverwinter Nights, or a video editor) make the entire system need extra memory. A significant number of the pages used by these large programs during its startup may only be used for initialization and then never used again. The system can swap out those pages and free the memory for other programs or even for the disk cache. In these cases, swap will be used to help the system handle any extra load.

Hibernation (suspend-to-disk) The hibernation feature (suspend-to-disk) writes out the contents of RAM to the swap partition before turning off the machine. Therefore, your swap partition should be at least as big as your RAM size. Although the latest versions of Ubuntu don’t support hibernation OOTB you may configure your system to allow Hibernation. In both alternatives (PM-UTILS or SYSTEMD) you may use a partition or a file.

Unforeseeable Circumstances Unforeseeable events can and will happen (a program going crazy, some action needing much more space than you thought, or any other unpredictable combination of events). In these cases, swap can give you an extra delay to figure out what happened, or to finish what you are working on.

Optimizing memory usage Since mechanical hard drives are considerably slower than RAM (SSD — Solid State Drive — storage is not as slow as physical drives, but still slower than RAM), when you need a file (be it a data file like a video, executables like Firefox, or libraries), the Linux kernel reads the file into RAM and keeps it there, so that the next time you need it, it is already in RAM and data access is much faster. The portions of RAM that accelerate disk read are called «cached memory.» You will notice that they make a huge difference in terms of responsiveness. The Linux kernel automatically moves RAM reserved by programs—but not really used—into swap, so that it can serve the better purpose of extending cached memory.

Optimizing Swap performance Because swap space uses a disk device, this can cause performance issues in any system that uses swap space significantly because the system itself may also be using the same disk device at the same time that it is required for swap operations. One way to reduce this problem is to have swap space on a different physical drive so that the competition for that resource is either reduced or eliminated.

Размер областей подкачки

В общем случае, для Astra Linux правильным начальным выбором может являться объём области подкачки 2-3ГБ с последующим уточнением по итогам эксплуатации. Если предполагается использовать режим сна (hibernation или suspend to disk) с сохранением образа оперативной памяти, то нужный объём зависит от объёма оперативной памяти, и в таком случае хорошим первоначальным вариантом размера области подкачки является объём, равный объёму оперативной памяти плюс 2-3ГБ, а в при недостатке выделенной области использовать дополнительные области, размещаемые в файлах (порядок подключения и отключения файловых областей подкачки см. ниже).

Основным параметром настройки подкачки является значение параметра ядра vm.swappiness, определяющее объем свободной памяти (в процентах), при котором начинается вытеснение страниц. Проверить значение этого параметра можно командой

sudo sysctl vm.swappiness

TL;DR

  • Swap — достаточно важная часть хорошо функционирующей системы. Без него сложнее достичь разумного управления памятью.
  • Swap нужен не столько для срочного получения памяти, сколько для ровного и эффективного высвобождения памяти. Использовать его в качестве «срочной памяти» в общем случае очень вредно.
  • Отключение swap не спасает от проблемы дискового ввода/вывода при конкуренции за память — дисковый I/O просто перемещается с анонимных страниц на файловые. Это не только может быть менее эффективным, поскольку остаётся меньший пул страниц, доступных для высвобождения, но и само по себе может способствовать появлению этой высокой конкуренции.

Swap file

As an alternative to creating an entire partition, a swap file offers the ability to vary its size on-the-fly, and is more easily removed altogether. This may be especially desirable if disk space is at a premium (e.g. a modestly-sized SSD).

Warning: Btrfs supports swap file with limitations since Linux kernel version 5.0. See for more information.

Manually

Swap file creation

Note: If you use Btrfs, first follow the procedure described in to initialize the swap file.

Use dd to create a swap file the size of your choosing. For example, creating a 512 MiB swap file:

# dd if=/dev/zero of=/swapfile bs=1M count=512 status=progress

Note: Using dd to allocate a swap file is the most portable solution, see for details.

Set the right permissions (a world-readable swap file is a huge local vulnerability):

# chmod 600 /swapfile

After creating the correctly sized file, format it to swap:

# mkswap /swapfile

Activate the swap file:

# swapon /swapfile

Finally, edit the fstab configuration to add an entry for the swap file:

/etc/fstab
/swapfile none swap defaults 0 0

For additional information, see .

Note:

  • The swap file must be specified by its location on the file system, not by its UUID or LABEL.
  • When using Btrfs, do not forget to add the created subvolume to the list as well, and remove the and compression options.

Remove swap file

To remove a swap file, it must be turned off first and then can be removed:

# swapoff /swapfile
# rm -f /swapfile

Finally remove the relevant entry from .

Automated

This section is being considered for removal.

systemd-swap

systemd-swap is a script for creating hybrid swap space from zram swaps, swap files and swap partitions. It is not affiliated with the systemd project.

Install the package. Uncomment and set in the Swap File Chunked section of . Start/enable the service.

Note:

  • If the journal keeps showing the following warning and no swap file is being created, you need to uncomment and set in .
Рейтинг
( Пока оценок нет )
Понравилась статья? Поделиться с друзьями:
Ваша ОС
Добавить комментарий

;-) :| :x :twisted: :smile: :shock: :sad: :roll: :razz: :oops: :o :mrgreen: :lol: :idea: :grin: :evil: :cry: :cool: :arrow: :???: :?: :!: