Пост

Меняем swap область на swap файл

Swap (своп) - это механизм виртуальной памяти в операционной системе Linux, который позволяет оперативной памяти (ОЗУ) компенсировать нехватку физической памяти. Когда ОЗУ заполнена и не хватает места для новых данных, Linux переносит неиспользуемые страницы памяти (например, файлы, которые не используются в данный момент) на специальный раздел на жёстком диске или файловой системе, называемый областью подкачки (swap area или swap space).

Для чего мы это делаем?

  • Со swap файлом гораздо удобней работать, если требуется его расширить или уменьшить.
  • Если по какой-либо причине корневой диск забился, мы можем отключить swap, и у нас появляется дополнительное дисковое пространство.

Менять swap область на swap файл будем на примере ОС Astra Linux

Отключаем swap

1
2
3
4
$ sudo swapoff -a
$ sudo nano /etc/fstab
...
#/dev/mapper/astra--vg-swap_1 none            swap    sw              0       0

Удаляем swap область, для этого удаляем раздел /dev/astra-vg/swap_1 и расширяем корневой раздел /dev/astra-vg/root (файловая система ext4)

1
2
3
4
$ sudo lvdisplay
$ sudo lvremove /dev/astra-vg/swap_1
$ sudo lvextend -l +100%FREE /dev/astra-vg/root
$ sudo resize2fs /dev/astra-vg/root

Вносим изменения в файл resume

1
2
3
$ sudo nano /etc/initramfs-tools/conf.d/resume
#RESUME=/dev/mapper/astra--vg-swap_1
RESUME=none

Обновляем параметры загрузчика и обновляем initramfs после внесения изменений

1
2
$ sudo update-grub
$ sudo update-initramfs -u

Создаем swap файл и монтируем его

1
2
3
4
5
$ sudo fallocate -l 12G /swapfile
$ sudo chmod 600 /swapfile
$ sudo mkswap /swapfile
$ sudo swapon /swapfile
$ echo '/swapfile none swap sw 0 0' | sudo tee -a /etc/fstab > /dev/null 2>&1
Авторский пост защищен лицензией CC BY 4.0 .

© IT Draft. Некоторые права защищены.