Форум сообщества Runtu.org
Январь 22, 2018, 14:49:03 *
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Вам не пришло письмо с кодом активации?

Новости: Доступна для тестирования альфа-версия Runtu LITE 18.04 - 20180101

Подробнее
   Начало   Помощь Поиск Войти Регистрация  
Страниц: 1   Вниз
  Печать  
Автор Тема: Вывод произвольной информации на панель XFCE  (Прочитано 1073 раз)
0 Пользователей и 1 Гость смотрят эту тему.
ek-nfn
Местный
*****
Online Online

Сообщений: 1046


« : Май 11, 2016, 13:48:43 »

В XFCE есть такой панельный плагин - xfce4-genmon-plugin. Этот модуль периодически запускает указанный сценарий/программу и показывает её текстовый вывод в панели. Полезен для периодического наблюдения за состоянием различных параметров системы и запущенных программ.

Например, меня не устраивают панельные плагины, отражающие информацию о занятости ОЗУ. Какие-то столбики и графики, по которым непонятно когда подвесит машину в очередном свопировании. Желательно иметь четкую информацию о количестве свободной памяти, чтобы успеть что-нибудь закрыть.

Пишем скриптик с такой конвейерной командой - echo $(( $(awk '/MemAvailable:/ { print $2 }' /proc/meminfo) / 1024 )) , отфильтровывающей нужный нам параметр для вывода на панель. В плагине делаем на него ссылку, устанавливаем период запуска скрипта, скажем 5 сек, и ....

Цифры информативней столбиков  Смеющийся

Но чтобы не прозевать момент начала активного сброса в swap и старта связанных с этим процессом тормозов, лучше довериться автоматике.
Спойлер  скрыт:
#!/bin/bash
# Подача сигнала при остатке свободной памяти менее 700 мб и завершения работы Opera при пороге 400 мб

lim=700      # порог для выдачи визуально-звукового сообщения
lim_op=400      # порог завершения работы браузера Opera

mem=$(( $(awk '/MemAvailable:/ { print $2 }' /proc/meminfo) / 1024 ))
 
if [ "$lim" -gt "$mem" ]
then
aplay  /home/nfn/Музыка/Система/low/Ping.wav   # звуковой сигнал
DISPLAY=:0.0 notify-send "свободной памяти менее 700 мб"    # всплывающее сообщение
fi

# Завершение Opera при памяти меньше 400 мб
if [ "$lim_op" -gt "$mem" ]
then
killall opera
aplay /home/nfn/Музыка/Система/low/Ping.wav
DISPLAY=:0.0 notify-send "killall Opera"
fi
По комментариям все понятно. Жертвой выбрана Opera, как самое прожорливое приложение. При достижении лимита свободной памяти ее просто закрывает в случае, если ранее я не среагировал по визуально-звуковому сообщению и не закрыл ненужные окна.
Пороги срабатывания выбираете исходя из общего объема ОЗУ.
« Последнее редактирование: Август 29, 2017, 20:29:31 от ek-nfn » Записан
Страниц: 1   Вверх
  Печать  
 
Перейти в:  

Powered by MySQL Powered by PHP Powered by SMF 1.1.21 | SMF © 2006, Simple Machines Valid XHTML 1.0! Valid CSS!