Настройка swap в Linux

Настройка swap в Linux Ubuntu

    Общие сведения

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

    ~$ swapon --show NAME TYPE SIZE USED PRIO /swapfile file 2G 0B -2

    Если вывод отсутствует, значит swap не настроен
    Вспомогательная команда free -h, покажет более информативно
    Чтобы узнать, есть ли место для swap на жестком диске:

    ~$ df -h Файл.система Размер Использовано Дост Использовано% Cмонтировано в udev 1,9G 0 1,9G 0% /dev tmpfs 379M 1,5M 378M 1% /run /dev/sda7 53G 12G 39G 24% / tmpfs 1,9G 31M 1,9G 2% /dev/shm tmpfs 5,0M 4,0K 5,0M 1% /run/lock tmpfs 1,9G 0 1,9G 0% /sys/fs/cgroup /dev/sda3 511M 4,0K 511M 1% /boot/efi tmpfs 379M 20K 379M 1% /run/user/1000
    Создание файла подкачки
    sudo fallocate -l 4G /swapfile

    Проверить что файл был создан размером 3gb:

    ls -lh /swapfile

    Запретить доступ к swapfile всем кроме root:

    chmod 600 /swapfile

    Создать файловую систему swap:

    sudo mkswap /swapfile

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

    sudo swapon /swapfile

    Убедиться, что файл включен:

    free -h
    Добавление swap в автозагрузку

    Добавить строку в /etc/fstab

    echo '/swapfile none swap sw 0 0' | sudo tee -a /etc/fstab
    Создание раздела подкачки

    Вместо файла используется раздел

    sudo mkswap /dev/sda2

    В остальном все также как и при создании файла подкачки

    Контроль памяти в swap
    cat /proc/sys/vm/swappiness

    По умолчанию установлено значение 60, но его можно изменить командой и сохранить после перезагрузки опцией -w:

    sudo sysctl -w vm.swappiness=80

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

    ~$ cat /proc/sys/vm/vfs_cache_pressure #Изменить значение: ~$ sudo sysctl -w vm.vfs_cache_pressure=100
    Источники
    Последнее изменение: 08.10.2024 11:52


    Связанные темы
    Здесь пока нет комментариев
    Добавлять комментарии могут только авторизованные пользователи

    Авторизоваться
    Я буду рекламой
    Я тоже буду рекламой
    И я
    ВВЕРХ