О проекте
ZSwap-Cli (command-line tool to control zswap options) – это клиент командной строки, предназначенный для работы с параметрами модуля ядра zswap как в интерактивном режиме, так и при помощи сервиса systemd.
Лицензия: MIT.
Распространение
Загрузить последнюю версию скрипта в исходных кодах, вы всегда можете на странице проекта на GitHub, в разделе Релизы, либо на общей странице загрузок.
Требования к системе
Для работы проекта необходима современная версия ядра Linux, собранная с поддержкой модуля zswap.
Опциональные зависимости:
- Boost.
Установка и использование
Установка выполняется стандартно, хотя мы настоятельно рекомендуем собрать пакет для используемого дистрибутива.
Параметры командной строки
Приложение zswap-cli поддерживает следующие параметры командной строки:
-hили--help– вывести краткую справочную информацию;- -
vили--version– вывести информацию о версии программы и поддерживаемом API ядра; --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);-nили--non_same_filled_pages_enabled– включить (Y) или отключить (N) приём в пул отличающихся страниц памяти;-xили--exclusive_loads– включить (Y) или отключить (N) аннулирование страниц, загруженных из сжатого пула;-rили--shrinker_enabled- включить (Y) или отключить (N) усечение пула для хранения сжатых страниц в зависимости от свободного объёма оперативной памяти.
Переменные окружения
Приложение 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);ZSWAP_NON_SAME_FILLED_PAGES_ENABLED_VALUE– включить (Y) или отключить (N) приём в пул отличающихся страниц памяти;ZSWAP_EXCLUSIVE_LOADS_VALUE– включить (Y) или отключить (N) аннулирование страниц, загруженных из сжатого пула;ZSWAP_SHRINKER_ENABLED_VALUE– включить (Y) или отключить (N) усечение пула для хранения сжатых страниц в зависимости от свободного объёма оперативной памяти.
Работа при помощи systemd
Внесём изменения в главный файл конфигурации zswap-cli:
sudoedit /etc/zswap-cli.conf
Активируем и запустим сервис systemd:
sudo systemctl enable --now zswap-cli.service
Изменения вступят в силу немедленно. Перезагрузка не требуется.