Zram Raspbian 9

Настройка zram в Raspbian 9 на Raspberry Pi 3 Model B+

Одноплатный компьютер-малютка Raspberry Pi 3 Model B+ у меня уже несколько месяцев, и справляется он с нужными мне задачами без проблем. ОЗУ у неё всего 1 гигабайт, что даже для современных среднечков-смартфонов уже мало, и никак её физически не увеличишь. За то программно — легко ☺️ Данный пост — заметка преимущественно для себя о том, как увеличить оперативную память на Raspberry Pi 3, но писался в надежде на то, что многим владельцам малины это тоже будет полезно 😉 Будем запиливать Zram в Raspbian 9.

Что такое zram?

Zram — это технология, при которой все данные, не помещающиеся в оперативной памяти (или не нужные там в данный момент) сбрасываются в swap, который находится в той же ОЗУ, но данные которого сжимаются современными алгоритмоми сжатия, тем самым уменьшая размер данных более, чем в 3 раза. Подробнее можно почитать здесь. Для малины — то, что надо.

Установка и настройка zram в Raspbian

Качаем deb пакет по этой ссылке: http://de.archive.ubuntu.com/ubuntu/pool/universe/z/zram-config/zram-config_0.5_all.deb и устанавливаем в систему:

wget http://de.archive.ubuntu.com/ubuntu/pool/universe/z/zram-config/zram-config_0.5_all.deb sudo dpkg -i zram-config_0.5_all.deb

Далее редактируем файл /etc/rc.local. Добавляем перед строкой «exit 0» следующее строки:

swapoff -a
modprobe zram num_devices=1
zramctl -r /dev/zram*
zramctl --find --size 512M
mkswap /dev/zram0
swapon -p 15 /dev/zram0

Сохраняем и перезагружаем Raspberry Pi.

Проверка работы

Чтобы убедиться, что zram в системе работает, выполняем команду:

sudo zramctl

Если ответ будет такой, значит zram работает:

NAME ALGORITHM DISKSIZE DATA COMPR TOTAL STREAMS MOUNTPOINT
/dev/zram0 lzo 512M 4K 76B 4K 4 [SWAP]

Создание и подключение zram при каждой загрузке системы

Создавать раздел Zram и монтировать его вручную после каждой перезагрузки не очень удобно. Создадим задание cron, которое будет делать это автоматически при каждом запуске Raspberry Pi. Открываем crontab:

sudo crontab -e

Добавляем строку:

sudo su root -c "swapoff -a && modprobe zram num_devices=1 && zramctl -r /dev/zram* && zramctl --find --size 512M && mkswap /dev/zram0 && swapon -p 15 /dev/zram0"

Не забываем поменять параметр --size на нужный вам размер виртуального раздела zram. Сохраняем изменения и закрываем crontab, для nano это комбинации клавишь CTRL+O, CTRL+X. Об успешном применении заданий cron оповестит строчка в терминале «crontab: installing new crontab». Теперь раздел zram будет автоматически создаваться, настраиваться и подключаться во время каждой загрузки системы.

Вы можете поделиться материалом в социальных сетях:

4 комментария

    1. Можно, всё что он делает — добавляет скрипт в systemd, зачем это же ещё дублировать в rc.local и cron не понятно.

        1. Он отводит половину от всей памяти, нужно либо править его скрипт или не ставить его вообще. У вас отрабатывает zram-config потом rc.local потом ещё и cron и делают одно и то же

Добавить комментарий

Ваш e-mail не будет опубликован, однако если вы его укажете, вам смогут приходить оповещения когда кто-то ответит на ваш комментарий.

Ваш адрес email не будет опубликован.