zswap-cli

О проекте

ZSwap-Cli (command-line tool to control zswap options) — это клиент командной строки, предназначенный для работы с параметрами модуля ядра zswap как в интерактивном режиме, так и при помощи сервиса systemd.

Лицензия: MIT.

Распространение

Загрузить последнюю версию скрипта в исходных кодах, вы всегда можете на странице проекта на GitHub, в разделе Релизы, либо на общей странице загрузок.

Требования к системе

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

Опциональные зависимости:

  • fmtlib.

Установка и использование

Установка выполняется стандартно, хотя мы настоятельно рекомендуем собрать пакет для используемого дистрибутива.

Параметры командной строки

Приложение zswap-cli поддерживает следующие параметры командной строки:

  • -h или —help — вывести краткую справочную информацию;
  • —config — получить параметры из указанного файла конфигурации;
  • —env — получить параметры из переменных окружения;
  • —stats X— вывести статистику использования модуля, где X:
    • 0 (будет использоваться если не указано явно) — вывести всю полезную информацию: текущие настройки, статистику использования, а также отладочную информацию;
    • 1 — вывести только настройки модуля;
    • 2 — вывести только статистику использования;
    • 3 — вывести только отладочную информацию;
  • -e или —enabled — включить (Y) или отключить (N) модуль zswap;
  • -s или —same_filled_pages_enabled — включить (Y) или отключить (N) дедупликацию страниц памяти, помещаемых в раздел/файл подкачки;
  • -p или —max_pool_percent — задаёт максимальный размер пула, который может быть создан и использован модулем (целое в диапазоне от 1 до 100);
  • -c или —compressor — позволяет изменить алгоритм сжатия;
  • -z или —zpool — выбор варианта zpool ядра Linux;
  • -a или —accept_threhsold_percent — задаёт предел переполнения пула zswap (целое в диапазоне от 1 до 100).

Переменные окружения

Приложение zswap-cli поддерживает получение параметров при помощи переменных окружения:

  • ZSWAP_ENABLED_VALUE — включить (Y) или отключить (N) модуль zswap;
  • ZSWAP_SAME_FILLED_PAGES_ENABLED_VALUE — включить (Y) или отключить (N) дедупликацию страниц памяти, помещаемых в раздел/файл подкачки;
  • ZSWAP_MAX_POOL_PERCENT_VALUE — задаёт максимальный размер пула, который может быть создан и использован модулем (целое в диапазоне от 1 до 100);
  • ZSWAP_COMPRESSOR_VALUE — задаёт максимальный размер пула, который может быть создан и использован модулем (целое в диапазоне от 1 до 100);
  • ZSWAP_ZPOOL_VALUE — выбор варианта zpool ядра Linux;
  • ZSWAP_ACCEPT_THREHSOLD_PERCENT_VALUE — задаёт предел переполнения пула zswap (целое в диапазоне от 1 до 100).

Работа при помощи systemd

Внесём изменения в главный файл конфигурации zswap-cli:

sudoedit /etc/zswap-cli.conf

Активируем и запустим сервис systemd:

sudo systemctl enable --now zswap-cli.service

Изменения вступят в силу немедленно. Перезагрузка не требуется.