zram plan9port RAM память

Прощай ноут и долой ПК. Малинка в качестве приличного десктопа

Самой большой моей мечтой за долгие годы, было посидеть в тишине, а не слушать как многочисленные вентиляторы с завыванием гоняют пыль в пылающих недрах БЭСМ, а им вторят неутомимым стрекотанием диски, вечно чем-то озадаченные.

Итак, перфокарты в мусорку, ноут другому страдальцу, а Raspberry Pi 3 model B прикручена к спине монитора. Что мы имеем? Топовое железо уровня 2005 года и проблему с узким бутылочным горлышком в виде дискового ввода-вывода.

Однако, самой большой проблемой, если не бояться, и называть вещи своими именами, причиной проблем является... браузер и его друзья - жадные до памяти программы . Это мой юзер-кейс - десктоп, если ваша малина трудится в суровых спартанских условиях без иксов, то можете смело прерывать чтение.

Вижу, что количество тех кто остался значительно сократилось, но это самые смелые люди. Хорошо, тогда продолжим и примем вызов брошенный нам в лицо этими творцами неуемных в своем аппетите программ. Давайте раздробим проблему на более мелкие и не связанные с собой части. Увеличим размер доступной памяти, попробуем свести к минимуму обращение к диску (под ним будем иметь в виду нашу SD-карту), избавимся от "лишних" занимающих память программ.

Часть первая

Увеличь свою память быстро! без рекламы регистрации и смс Физически увеличить память на устройстве не получится. Но руки опускать рано ведь в линуксе есть zram.

zRam — модуль ядра Linux. Он увеличивает производительность путём предотвращения подкачки страниц на диск, используя сжатое блочное устройство в оперативной памяти, пока не появится необходимость использовать файл подкачки на жёстком диске. Скорость обмена с оперативной памятью быстрее, чем с жёстким диском, следовательно zRam позволяет Linux производить большее число операций подкачки, особенно на старых компьютерах с малым объёмом оперативной памяти.

Добавляем в конец файла /etc/rc.local инициализацию и запуск модуля zram (перед строкой exit 0):

####################

modprobe zram num_devices=4  # Пусть все 4 ядра будут задействованы для компрессии

SIZE=512    # Отдадим под псевдо свап-файл 512 Мб

echo $(($SIZE*1024*1024)) > /sys/block/zram0/disksize

echo $(($SIZE*1024*1024)) > /sys/block/zram1/disksize

echo $(($SIZE*1024*1024)) > /sys/block/zram2/disksize

echo $(($SIZE*1024*1024)) > /sys/block/zram3/disksize



mkswap /dev/zram0

mkswap /dev/zram1

mkswap /dev/zram2

mkswap /dev/zram3


swapon /dev/zram0 -p 10

swapon /dev/zram1 -p 10

swapon /dev/zram2 -p 10

swapon /dev/zram3 -p 10

####################

Файл доступен на запись только пользователю root, так что не забудьте $ sudo leafpad /etc/rc.local

Часть вторая

Посади толстяка на диету

В качестве ежовых руковиц мы возьмем расширения для хрома OneTab которое группирует все открытые вкладки в одну (а одна открытая вкладка = запущенному процессу = съеденной памяти) и uMatrix который фильтрует контент страницы удаляя рекламу, скрипты фреймы, аудио и видео. Если uMatrix покажется вам слишком агрессивным, попробуйте uBlock Origin.

Часть третья

Все ненужное на слом, соберем металлолом! Ребята колдующие над Raspbian и так постарались основательно подчистив lxde и дальнейшее творчество рассчитано исключительно на людей сильных духом и обладающих пытливым умом.

Поскольку я давно заметил что наблюдаю красивые обои только после включения компьютера, а затем они быстро пропадают под многочисленными окнами, то если их не будет, ничего страшного не случиться. Тоже относиться и к обрамлению окон. Ну а если так, то почему бы не попробовать в меру аскетичный оконный менеджер что-то вроде awesome, dwm, wmii, larswm, 9wm, w9wm...

Странно, почему они все пытаются в той или иной мере воссоздать окружение Plan9? Лично я возьму plan9port от Расса Кокса и скомпилирую его. Но предварительно нужно поставить необходимые библиотеки для сборки. $ sudo apt install libx11-dev libxext-dev libxt-dev

Скачанный plan9port-master.zip сохраню в /opt/plan9port распакую и запущу компиляцию $ ./INSTAL После сборки создадим файл ~/.xsession следующего содержания 

export PLAN9=/opt/plan9port
export PATH=$PATH:$PLAN9/bin
export LANG=en_US.UTF-8
font=$PLAN9/font/lucm/unicode.9.font
GS_FONTPATH=$PLAN9/postscript/font
home=$HOME
prompt="$H=;  "
user=$USER
export \

GS_FONTPATH \

font \

home \

prompt \

user\

plumber &

/home/pi/riostart &

exec rio

Еще один файл ~/riostart для "автозапуска" нужных вам приложений

#!/opt/plan9port/bin/rc
stats -W 100x100@0,0 -lmsew &
xclock -geometry  100x100+0+100 &
9term -W 500x300@300,770 &
9term -W 310x200@1600,870 &

Сделаем его исполняемым $ chmod a+x ~/riostart

Ну и напоследок, добавим в конец ~/.bashrc пару строк

PLAN9=/opt/plan9port export PLAN9
PATH=$PATH:$PLAN9/bin export PATH

 Почитать про Plan9 , оконный менеджер Rio и редактор Acme можно на вики.

Выглядит необычно первые пару дней, но к этому скоро привыкаешь.

Чтобы загружалась ваша привычная оконная среда вам понадобиться удалить или переименовать файл .xsession $ mv ~/.xsession ~/.xsession.old

Желаю Вам быстрой и приятной эксплуатации малинки!

Тэги:

 

Автор:

Комментариев: 9

  • Anton7
    29.01.2017 в 18:57 ответ

    С отображением Adobe Flash в браузере проблем нет?

    • n900
      30.01.2017 в 19:22 ответ

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

      • Anton7
        31.01.2017 в 16:27 ответ

        Да любой в принципе. Просто иногда приходится открывать сайты с flash анимацией. И вот лучше винды это так никто и не научился делать. Меня это бесит как и сама анимация, просто необходимость иногда возникает.

        • n900
          31.01.2017 в 21:06 ответ

          открыл первый попавшийся сайт с флеш-играми. запустились, звук есть, вроде бегают-прыгают. i.imgur.com/8OgcsmQ.png

  • dmlbr
    02.02.2017 в 23:58 ответ

    Можно посмотерть полное содержимое файла rc.local после изменения? файл rc.local может так выглядить? #!/bin/sh -e # # rc.local # # This script is executed at the end of each multiuser runlevel. # Make sure that the script will «exit 0» on success or any other # value on error. # # In order to enable or disable this script just change the execution # bits. # # By default this script does nothing. exit 0 #################### modprobe zram num_devices=4 # Пусть все 4 ядра будут задействованы для компрессии SIZE=512 # Отдадим под псевдо свап-файл 512 Мб echo $(($SIZE*1024*1024)) > /sys/block/zram0/disksize echo $(($SIZE*1024*1024)) > /sys/block/zram1/disksize echo $(($SIZE*1024*1024)) > /sys/block/zram2/disksize echo $(($SIZE*1024*1024)) > /sys/block/zram3/disksize mkswap /dev/zram0 mkswap /dev/zram1 mkswap /dev/zram2 mkswap /dev/zram3 swapon /dev/zram0 -p 10 swapon /dev/zram1 -p 10 swapon /dev/zram2 -p 10 swapon /dev/zram3 -p 10 ####################

    • n900
      03.02.2017 в 13:37 ответ

      Строка exit 0 должна быть в самом конце файла

  • IVAN_PLOTNIKOV
    26.02.2017 в 15:16 ответ

    Всем привет. Я новичок в rasberry. Прошу консультации. Возможно в малинку загрузить программу voxcommando с голосовыми движками, по подробней про эту программу. Это голосовое общение с компьютером и может управлять выходными устройствами через голосовые команды. Жду какого нибудь ответа.

  • mshock
    26.04.2017 в 11:56 ответ

    Хорошая статья, полезная. Спасибо!  Я тоже последнее время вместо большого ПК включаю Raspberry Pi 3B - и наслаждась тишиной... 8-) [Вот и сечас пишу с "малинки".]

    • NikitOS
      27.08.2017 в 21:25 ответ

      А у меня малина постоянный комп т к стационарного нет

Ваш комментарий

Авторизуйтесь для отправки комментария

© Сообщество пользователей RaspberryPi 2021