Как создать файл подкачки Linux

Как создать файл подкачки Linux

Я новый разработчик и пользователь системы Linux. Как мне создать файл подкачки Linux из параметра командной строки для моего облачного сервера? Как я могу добавить пространство подкачки на моем сервере Ubuntu 20.04 LTS или CentOS Linux 7/8?

Пространство подкачки — это не что иное, как управление диском, разделом или файлом подсистемой памяти ядра Linux. Ядро Linux использует пространство подкачки, когда на сервере заканчивается физическая RAM (оперативная память). Другими словами, пространство подкачки будет содержать неактивные страницы. Комбинация физической RAM и swap описывается как виртуальная память. Пространство подкачки также критически важно для пользователей ноутбуков и настольных компьютеров с Linux при переходе в спящий режим. Пользователи настольных компьютеров Linux используют пространство подкачки для сохранения содержимого оперативной памяти перед переходом в спящий режим.

Шаги по созданию файла подкачки Linux

  1. Отображение текущего пространства подкачки и использования ОЗУ в Linux::
    $ free -h
    $ swapon --summary
  2. Затем создайте новый файл, который вы будете использовать для пространства подкачки, либо с помощью команды dd:
    # Example: 2 Gib Linux swap file #
    $ sudo dd if=/dev/zero of=/swap-file count=2 bs=1GiB
  3. Убедитесь, что вы установили правильные разрешения файловой системы Linux по соображениям безопасности, используя команду chmod и команду chown:
    $ sudo chmod -v 0600 /swap-file
    $ sudo chown -v root:root /swap-file
    # List permissions #
    $ ls -l /swap-file
  4. Выполните следующую команду mkswap, чтобы настроить область подкачки Linux с помощью файла:
    $ sudo mkswap /swap-file
  5. Активация пространства подкачки путем ввода команды swapon:
    $ sudo swapon /swap-file

Отображение использования ОЗУ и свопа в Linux

Вы можете использовать любую из следующих команд:
$ swapon --summary
$ free -h
$ top
$ htop
$ vmstat

Как постоянно активировать файл пространства подкачки в Linux

Убедитесь, что наш файл подкачки активирован после перезагрузки системы Linux. Чтобы сделать изменение постоянным, отредактируйте файл  /etc/fstab:
$ sudo vi /etc/fstab
Добавьте следующие директивы конфигурации:
/swap-file swap swap defaults 0 0
Сохраните и закройте файл.

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

По умолчанию ядро ​​Linux использует первое активированное пространство подкачки, пока оно не заполнится. Затем ядро ​​начинает использовать второе пространство подкачки и так далее. Тем не менее Linux позволяет нам определять приоритет. Приоритет по умолчанию — -2, и Linux может использовать в первую очередь наивысший приоритет. Отредактируйте /etc/fstab и добавьте priследующее:

/dev/sdb none swap sw  0 0
/swap-file swap swap pri=5 0 0
/swap-file-2 swap swap pri=10 0 0

Теперь мое ядро ​​Linux сначала использует / swap-file-2 с pri = 10 . Когда это пространство заполнено, Linux использует / swap-файл с pri = 5 . Наконец, Linux использует / dev / sdb с приоритетом -2 .

Замечание о замене

Значение swappiness определяется в файле / proc / sys / vm / swappiness. Он контролирует, насколько агрессивно ядро ​​Linux будет менять страницы памяти. Более высокие значения увеличивают агрессивность, а более низкие значения снижают агрессивность. Значение по умолчанию — 60. Используйте команду cat для просмотра значений:

$ cat /proc/sys/vm/swappiness
60

Я рекомендую оставить значение по умолчанию, которое отлично подходит для большинства пользователей. Однако вы можете изменить его следующим образом, чтобы сказать 40:
$ sudo echo "vm.swappiness=10" | sudo tee -a /etc/sysctl.d/99-swappiness.conf
См. « Как добавить текст в файл при использовании команды sudo в Linux или Unix » и « Как постоянно вносить изменения в / proc / filesystem с помощью sysctl.conf » для получения дополнительной информации. .

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

Хотите удалить файл подкачки? Пытаться:

  1. Отключите файл подкачки:
    $ sudo swapoff -v /swap-file
  2. Удалите физический файл подкачки с помощью команды rm:
    $ sudo rm -v -i /swap-file
  3. Отредактируйте / etc / fstab и удалите запись для файла подкачки. Например:
    /swap-file swap swap defaults 0 0

Вывод

Вы узнали о создании файла подкачки в Linux для оптимизации виртуальной машины / сервера без операционной системы или рабочего стола Linux для увеличения доступного пространства подкачки. Для получения дополнительной информации см. Следующие справочные страницы / документацию , набрав команду man:

$ man 8 mkswap
$ man 8 swapon
$ man 8 swapoff
$ man 8 mount
$ man 5 fstab