Введение
Подкачка — это пространство на диске, которое используется, когда объем физической оперативной памяти заполнен. Когда в системе Linux заканчивается ОЗУ, неактивные страницы перемещаются из ОЗУ в пространство подкачки.
Пространство подкачки может иметь форму выделенного раздела подкачки или файла подкачки. Как правило, при запуске CentOS на виртуальной машине раздел подкачки отсутствует, поэтому единственный вариант — создать файл подкачки.
В этой статье описываются шаги по добавлению файла подкачки в системах CentOS 8.
Если вы хотите продолжить на удаленном сервере, читайте дальше, в противном случае пропустите первый абзац «Подключение к серверу» и читайте следующий.
Подключение к серверу
Чтобы получить доступ к серверу, вам нужно знать IP-адрес. Вам также потребуется ваше имя пользователя и пароль для аутентификации. Чтобы подключиться к серверу как root, введите следующую команду:
ssh root@IP_DEL_SERVER
Далее вам нужно будет ввести пароль пользователя root.
Если вы не используете пользователя root, вы можете войти под другим именем пользователя с помощью той же команды, а затем изменить root на свое имя пользователя:
ssh nome_utente@IP_DEL_SERVER
Затем вам будет предложено ввести пароль пользователя.
Стандартный порт для подключения по ssh — 22, если ваш сервер использует другой порт, вам нужно будет указать его с помощью параметра -p, затем введите следующую команду:
ssh nome_utente@IP_DEL_SERVER -p PORTA
Создание и активация файла подкачки
Выполните следующие шаги от имени пользователя root или пользователя с привилегиями sudo, чтобы добавить пространство подкачки в системе CentOS 8.
Начните с создания файла, который будет действовать как пространство подкачки:
sudo fallocate -l 1G /swapfile
В этом примере мы создаем файл подкачки размером 1G. Если вам нужно больше свопа, замените 1G
на нужный размер.
Если утилита fallocate
недоступна в вашей системе или вы получаете сообщение об ошибке вроде этого fallocate failed: Operation not supported
, используйте команду dd
для создания файла подкачки:
sudo dd if=/dev/zero of=/swapfile bs=1024 count=1048576
Установите права доступа к файлу, чтобы только пользователь root мог читать и записывать файл подкачки:
sudo chmod 600 /swapfile
Затем настройте область подкачки Linux в файле:
sudo mkswap /swapfile
Setting up swapspace version 1, size = 1024 MiB (1073737728 bytes)
no label, UUID=0abdb8ba-57d6-4435-8fd8-5db9fc705045
Активируйте своп, выполнив следующую команду:
sudo swapon /swapfile
Убедитесь, что своп активен, используя команду swapon
или команду free
, как показано ниже:
sudo swapon --show
NAME TYPE SIZE USED PRIO
/swapfile file 1024M 507.4M -1
sudo free -h
total used free shared buff/cache available
Mem: 488M 158M 83M 2.3M 246M 217M
Swap: 1.0G 506M 517M
Сделайте изменение постоянным, добавив запись подкачки в /etc/fstab
:
sudo nano /etc/fstab
Вставьте следующую строку:
/swapfile swap swap defaults 0 0
Настройка значения подкачки
Подкачка — это свойство ядра Linux, которое определяет, как часто система будет использовать пространство подкачки. Swappiness может иметь значение от 0 до 100. Низкое значение заставит ядро стараться избегать свопинга, когда это возможно, в то время как более высокое значение заставит ядро более агрессивно использовать пространство подкачки.
Значение подкачки по умолчанию в CentOS 8 равно 30. Вы можете проверить текущее значение подкачки, введя следующую команду:
cat /proc/sys/vm/swappiness
30
Хотя значение подкачки 30 является правильным для настольных компьютеров и машин разработки, для рабочих серверов может потребоваться установить более низкое значение.
Например, чтобы установить значение swappiness равным 10, введите:
sudo sysctl vm.swappiness=10
Чтобы сохранить этот параметр после перезагрузки, откройте следующий файл:
sudo vi /etc/sysctl.conf
Добавьте следующую строку:
vm.swappiness=10
Сохраните и закройте файл.
Оптимальное значение подкачки зависит от рабочей нагрузки системы и от того, как используется память. Этот параметр необходимо регулировать с небольшими приращениями, чтобы найти оптимальное значение.
Удаление файла подкачки
Чтобы деактивировать и удалить файл подкачки, выполните следующие действия: деактивируйте пространство подкачки, набрав:
sudo swapoff -v /swapfile
Откройте /etc/fstab
:
sudo vi /etc/fstab
Удалите следующую /swapfile swap swap defaults 0 0
:
/swapfile swap swap defaults 0 0
Удалите настоящий файл подкачки с помощью команды rm:
sudo rm /swapfile
Вывод
Мы показали вам, как создать файл подкачки, а также активировать и настроить пространство подкачки в вашей системе CentOS 8.