Если вы пользуетесь операционной системой
Ubuntu и любите всякие гаджеты, то вот пример одного из них. Точнее это даже не гаджет, а удобный и достаточно информативный системный монитор, который сможет отображать полную информацию о вашем компьютере. Большим преимуществом этого системного монитора является гибкость в настройке, и его внешний вид полностью зависит от вашего желания.
Установка Conky
Установку этого системного монитора можно выполнить как с помощью менеджера пакетов Synaptic, так и с консоли набрав следующую команду:
sudo apt-get install conky
Настройка Conky
После установки программы его конфигурационный файл вы сможете найти в /etc/conky/conky.conf. Но надобности править основной конфиг нет, так как Conky перед запуском проверяет домашний каталог пользователя на наличие файла conkyrc. Его мы и будем править. Для этого находясь в своем домашнем каталоге создайте файл conkyrc с помощью, к примеру, Gedit или в любом другом текстовом редакторе:
gedit ~/.conkyrc
Далее более подробно рассмотрим этот конфигурационный файл. Он делиться на две части:
первая отвечает за внешний вид системного монитора вторая (она идет после слова TEXT) за то, что он будет отображать
Таблица с основными параметрами (до слова TEXT)
Параметр Описание
TEXT |
Дальше идет текст, выводимый на экран. Обратный слэш (\) обозначает новую строку |
alignment |
Задает позицию на экране, может принимать значения top_left вверху слева, top_right (вверху справа), top_middle (вверху посередине), bottom_left (внизу слева), bottom_right (внизу справа), bottom_middle (внизу посередине), middle_left (слева по центру), middle_middle (по цетру), middle_right (справа по центру), или none так же возможны аббревиатуры tl, tr, tm, bl, br, bm, ml, mm, mr |
append_file |
Прикрепить файл для вывода |
background |
Если yes, Conky будет запущен в фоне |
border_inner_margin |
Отступ между границей и текстом в пикселах |
border_outer_margin |
Отступ между границей и краем окна в пикселах |
border_width |
Толщина границы в пикселах |
colorN |
Цвет для использования внутри сегмента TEXT, применяется к последующим элементам. Замените N на цифру от 0 до 9 включительно. При указании цвета в шестнадцатеричном формате опустите ‘#’ |
cpu_avg_samples |
Количество замеров для усреднения значения нагрузки на процессор |
default_bar_size |
Ширина и высота баров. Например ‘default_bar_size 0 6′ Особенно это полезно для execbar и execibar, поскольку у них отсутствует параметр размера |
default_color |
Цвет по умолчанию и цвет границы |
default_gauge_size |
Ширина и высота датчиковю. Например ‘default_gauge_size 25 25′ Особенно это полезно для execgauge и execigauge, поскольку у них отсутствует параметр размера |
default_graph_size |
Ширина и высота графиков. Например ‘default_graph_size 0 25′ Особенно это полезно для execgraph и execigraph, поскольку у них отсутствует параметр размера |
default_outline_color |
Цвет окантовки |
default_shade_color |
Цвет тени от текста и границы |
disable_auto_reload |
Включите для отключения автоматической перезагрузки при изменении файла настроек |
diskio_avg_samples |
Количество замеров для усреднения значения операций ввода-вывода дисков |
display |
Дисплей X для вывода |
double_buffer |
Использовать или нет расширение Xdbe (устраняет мерцание) Рекомендуется установить ‘own_window yes’, тогда буфер будет занимать меньше памяти |
draw_borders |
Включает отображение границы вокруг текста |
draw_graph_borders |
Включает отображение границы вокруг графиков |
draw_outline |
Включает отображение окантовки |
draw_shades |
Включает отображение тени |
extra_newline |
Добавить еще одну строку в конец при выводе в stdout |
font |
Название шрифта в X |
format_human_readable |
При включении значения в байтах будут заменены на соответствующие значения в KiB, MiB и т. д. |
gap_x |
Отступ в пикселах по горизонтали от края экрана, указанного в alignment |
gap_y |
Отступ в пикселах по вертикали от края экрана, указанного в alignment |
hddtemp_host |
Хост для подключения к hddtemp, по умолчанию ’127.0.0.1′ |
hddtemp_port |
Порт для подключения к hddtemp, по умолчанию 7634 |
if_up_strictness |
Насколько точен должен быть if_up при проверке интерфейса на доступность, возможные значения up интерфейс доступен link интерфейс доступен и есть связь addres интерфейс доступен, есть связь и назначен IP аддрес |
imap |
Задает глобальный IMAP сервер, параметры: хост имя пароль [-i интервал (в секундах)] [-f 'папка'] [-p порт] [-e 'команда'] [-r попыток] По умолчанию порт 143, папка ‘INBOX’, интервал 5 минут, количество попыток 5. Если пароль задан как ‘*’, то он будет запрошен при запуске Conky |
imlib_cache_flush_interval |
Интервал (в секундах) сброса кэша Imlib2 |
imlib_cache_size |
Размер кэша Imlib2 в байтах, по умолчанию 4MiB Установите 0 чтобы отключить кэш изображений |
lua_draw_hook_post |
Если задана, функция будет вызвана каждый раз после отрисовки окна. Требуется поддержка X. Принимает любые числа в качестве аргументов. Используйте этот hook для отрисовки вещей поверх того, что отображает Conky Conky добавляет ‘conky_’ к названиям своих функций для предотвращения случайного вызовова неверной функции |
lua_draw_hook_pre |
Если задана, функция будет вызвана каждый раз перед отрисовкой окна. Требуется поддержка X. Принимает любые числа в качестве аргументов. Используйте этот hook для отрисовки вещей поверх того, что отображает Conky Conky добавляет ‘conky_’ к названиям своих функций для предотвращения случайного вызовова неверной функции |
lua_load |
Загрузить Lua скрипты, перечисленные через пробел |
lua_shutdown_hook |
Если задана, функция будет вызвана при завершении Conky или при перезагрузке файла настроек. Используйте этот hook для уборки за собой, например освобождения памяти, которая была выделена внешними библиотеками через lua Conky добавляет ‘conky_’ к названиям своих функций для предотвращения случайного вызовова неверной функции |
lua_startup_hook |
Если задана, функция будет вызвана при старте Conky или при перезагрузке файла настроек. Используйте этот hook для инициализации переменных или для выполняемых только один раз приложений Conky добавляет ‘conky_’ к названиям своих функций для предотвращения случайного вызовова неверной функции |
mail_spool |
Почтовый ящик для проверки |
max_port_monitor_connections |
Разрешить каждому монитору портов отслеживать не более этого количества соединений, по умолчанию 256 |
max_specials |
Максимальное количество специальных вещей (fonts, offsets, aligns и т.д), по умолчанию 512 |
max_text_width |
Максимальное количество символов в строке, последующие символы будут расположены в новой строке Если хотите убедиться, что строка не будет разорвана, установите 0 |
max_user_text |
Максимальный размер пользовательского текста внутри сегмента TEXT, по умолчанию 16384B |
maximum_width |
Максимальная ширина окна |
minimum_size |
Минимальный размер окна |
mpd_host |
Хост MPD |
mpd_password |
Пароль от MPD сервера |
mpd_port |
Порт MPD сервера |
music_player_interval |
Интервал обновления информации от аудиоплеера, по умолчанию – интервал обновления Conky |
net_avg_samples |
Количество замеров для усреднения значения сетевой статистики |
no_buffers |
Вычитать буфер (file system) из используемой памяти? |
nvidia_display |
Дисплей, который будет использовать переменная nvidia |
out_to_console |
Выводить текст на stdout |
out_to_ncurses |
Выводить текст в консоль, но использовать ncurses для вывода нового текста поверх старого |
out_to_stderr |
Выводить текст на stderr |
out_to_x |
При отключении не будет вывода в X (полезно когда используется вывод в консоль), по умолчанию yes При установке в no убедитесь, что установлено перед всеми X-зависимыми настройками (поместите первой строкой для надежности) |
override_utf8_locale |
Включение UTF8 независимо от локали системы. Требует XFT |
overwrite_file |
Переписывать файл, заданный в append_file |
own_window |
Создавать собственное окно или нет |
own_window_class |
Вручную задать WM_CLASS, по умолчанию «Conky» |
own_window_colour |
При ‘own_window_transparent no’ задает цвет фона, по умолчанию черный Задается либо шестнадцатеричным значением без »#», либо именным цветом (см. /usr/lib/X11/rgb.txt) |
own_window_hints |
При ‘own_window yes’ используется для изменения отображения окна: undecorated, below, sticky, skip_taskbar, skip_pager При ‘own_window_type override’ этот параметр игнорируется Используйте ‘own_window_type desktop’ как другой способ включить многие из этих функций |
own_window_title |
Вручную задать имя окна, по умолчанию »– conky» |
own_window_argb_visual |
Включает полупрозрачность. Для корректной работы необходим композитный менеджер При ‘own_window_type override’ этот параметр игнорируется |
own_window_argb_value |
При ‘own_window_argb_visual yes’ задает уровень прозрачности фона, принимает значение от 0 (прозрачный) до 255 (непрозрачный) |
own_window_transparent |
Делает фон полностью прозрачным |
own_window_type |
При ‘own_window yes’ задает тип окна: normal, desktop, dock, panel или override, по умолчанию normal desktop – окно без декораций, всегда видимо на рабочем столе, отсутствует в переключателе окон и панели задач panel – так же как и панели резервирует место вдоль края рабочего стола, предотвращая перекрытие развернутыми на весь экран окнами. край выбирается на основании значения alignment override – не управляется оконным менеджером. own_window_hints игнорируется. Полезно в некоторых ситуациях |
pad_percents |
Pad percentages to this many decimals (0 = no padding) |
pop3 |
Задает глобальный POP3 сервер, параметры: хост имя пароль [-i интервал (в секундах)] [-p порт] [-e 'команда'] [-r попыток] По умолчанию порт 110, интервал 5 минут, количество попыток 5. Если пароль задан как ‘*’, то он будет запрошен при запуске Conky |
short_units |
Сокращать единицы измерения до одной буквы (kiB→k, GiB→G и так далее), по умолчанию ‘off’ |
show_graph_range |
Показывать временной диапазон, охватываемый графиком |
show_graph_scale |
Показывать максимальное значение в графике |
stippled_borders |
Прерывистость границы окна в пикселах |
temperature_unit |
Единицы измерения температуры, значения «fahrenheit» или «celsius», по умолчанию «celsius» |
templateN |
Определяет шаблон для последующего использования внутри сегмента TEXT. Замените N на цифру от 0 до 9 включительно. Значения аргументов записываються в соответствующее положение при обьявлении переменной внутри сегмента TEXT ‘\n’ → новая строка ‘\\’ → обратный слэш ‘\ ‘ → пробел ‘\X’ → аргумент шаблона X |
text_buffer_size |
Размер текстового буфера, по умолчанию 256 байт Этот буфер используется для промежуточных текстовых данных, таких как вывод $exec или других переменных. Увеличение размера этого буфера может снизить производительность Conky, но позволит выводить больше текста от переменных Размер буфера не может быть меньше значения по умолчанию |
times_in_seconds |
При включении переменные, выводящие время, будут выводить его в секундах одним числом Не влияет на $time, $tztime и $utime |
top_cpu_separate |
Отображать в $top нагрузку на один процессор (yes) или на все процессоры вместе (no) |
top_name_width |
Количество символов в имени процесса в $top, по умолчанию 15 |
total_run_times |
Количество обновлений, после которых Conky выключится 0 – работать постоянно |
update_interval |
Интервал обновления в секундах |
update_interval_on_battery |
Интервал обновления при работе от аккумулятора |
uppercase |
Включите для отображения текста В ВЕРХНЕМ РЕГИСТРЕ |
use_spacer |
Добавляет пробелы вокруг некоторых обьектов для предотвращения смещения ими соседних вещей, может принимать значения: left, right или none, по умолчанию none Помогает только при использовании моноширинного шрифта, например Bitstream Vera Sans Mono |
use_xft |
Включите для использования Xft |
xftalpha |
Прозрачность Xft шрифтов, принимает значение от 0 до 1 включительно |
xftfont |
Шрифт Xft для использования |
Таблица с переменными (доступными после слова TEXT)
Параметр Описание
${addr} |
Выводит текущий IP, пример: ${addr eth0} |
${addrs} |
|
${acpiacadapter} |
|
${acpifan} |
|
${acpitemp} |
Температура процессора (°C) |
${acpitempf} |
|
${adt746xcpu} |
|
${adt746xfan} |
|
${alignr} |
Выравнивание текста по правому краю |
${alignc} |
Выравнивание текста по центру |
${apm_adapter} |
|
${apm_battery_life} |
|
${apm_battery_time} |
|
${audacious_bar} |
|
${audacious_bitrate} |
|
${audacious_channels} |
|
${audacious_filename} |
|
${audacious_frequency} |
|
${audacious_length} |
|
${audacious_length_seconds} |
|
${audacious_playlist_position} |
|
${audacious_playlist_length} |
|
${audacious_position} |
|
${audacious_position_seconds} |
|
${audacious_status} |
|
${audacious_title} |
|
${battery} |
Статус акумулятора.(по умолчанию BAT0) |
${battery_bar x,y} |
Диаграмма заряда акуммулятора. x-ширина,y-высота |
${battery_percent} |
Заряд акуммулятора в процентах. |
${battery_time} |
Заряда аккумулятора в часах. |
${bmpx_artist} |
|
${bmpx_album} |
|
${bmpx_title} |
|
${bmpx_track} |
|
${bmpx_bitrate} |
|
${bmpx_uri} |
|
${buffers} |
|
${cached} |
|
${color} |
Задает цвет шрифта текста идущего за этой переменной (если не использовать то цвет будет согласно default_color, цвет – может быть задан как кодом так и названием. Если неуказать то вернет цвет по умолчанию указанный в default_color. пример: ${color lightgrey} |
${color0} |
|
${color1} |
|
${color2} |
|
${color3} |
|
${color4} |
|
${color5} |
|
${color6} |
|
${color7} |
|
${color8} |
|
${color9} |
|
${conky_version} |
|
${conky_build_date} |
|
${conky_bulid_arch} |
|
$cpu |
Значение загрузки процессора в процентах. Может быть представлено в качестве аргумента. |
${cpubar} |
Бар загрузки процессора, параметр: длинна, без параметра – максимальная длинна |
${cpugraph} |
|
${diskio} |
|
${diskiograph} |
|
${diskio_read} |
|
${diskiograph_read} |
|
${diskio_write} |
|
${diskiograph_write} |
|
${disk_protect} |
|
${downspeed} |
Cкорость входящего трафика в килобайтах пример: ${downspeed wlan0} |
${downspeedf} |
Скорость входящего трафика в килобайтах с одной десятой пример: ${downspeedf wlan0} |
${downspeedgraph net y,x g1 g2 m} |
График скорости входящего трафика y – высота графика(в пикселах), x – ширина графика(в пикселах), g1,g2 – градиенты цвета (задаются в шестнадцатиричном коде, без #)m – масштаб (необязательный параметр) пример: ${downspeedgraph wlan0 32,150 000000 7f8ed3} |
${else} |
|
${entropy_avail} |
|
${entropy_bar} |
|
${entropy_poolsize} |
|
${exec} |
|
${execbar} |
|
${execgraph} |
|
${execi} |
|
${execibar} |
|
${execigraph} |
|
${execp} |
|
${execpi} |
|
${font} |
Задает шрифт выводимого текста. Если неуказать то вернет шрифт по умолчанию |
${freq} |
Возвращает частоту процессора в МГц. если не указан номер процессора то по умолчанию считается 1. |
${freq_g} |
Возвращает частоту процессора в ГГц.если не указан номер процессора то по умолчанию считается 1. |
${freq_dyn} |
Возвращает частоту процессора в МГц. Но вычисляется путем подсчета counting to clock cycles to complete an instruction. Доступно только для x86/amd64. |
${freq_dyn_g} |
Аналогично ${freq_dyn}, но в Ггц. |
${fs_bar} |
|
${fs_free} |
|
${fs_free_perc} |
Свободное место в файловой системе в % |
${fs_size} |
Общий размер раздела файловой системы в Гб. |
${fs_type} |
Тип файловой системы. |
${fs_used} |
Объем используемого пространсва раздела в файловой системе в Гб. |
${goto} |
|
${gw_iface} |
|
${gw_ip} |
|
${hddtemp} |
|
${head} |
|
${hr} |
горизонтальная линия.Толщина линии задается в пикселах. |
${hwmon} |
|
${iconv_start} |
|
${iconv_stop} |
|
${i2c} |
|
${i8k_ac_status} |
|
$i8k_bios |
Если работает i8k ядро драйвера для ноутбуков Inspiron, отображает версию БИОС, указанную в /proc/i8k. |
${i8k_buttons_status} |
|
$i8k_cpu_temp |
Если работает i8k ядро драйвера для ноутбуков Inspiron, показывает температуру процессора по Цельсию из / proc/i8k. |
$i8k_cpu_tempf |
Если работает i8k ядро драйвера для ноутбуков Inspiron, показывает температуру процессора по Фаренгейту из / proc/i8k. |
$i8k_left_fan_status |
Если работает i8k ядро драйвера для ноутбуков Inspiron, отображает статус левого вентилятора, как перечислены в /proc/i8k. Будьте осторожны, некоторые ноутбуки i8k доклады этих вентиляторов показывают в обратном порядке. |
$i8k_right_fan_status |
Если работает i8k ядро драйвера для ноутбуков Inspiron, отображает статус правого вентилятора, как перечислены в /proc/i8k. Будьте осторожны, некоторые ноутбуки i8k доклады этих вентиляторов показывают в обратном порядке. |
i8k_left_fan_rpm |
Если работает i8k ядро драйвера для ноутбуков Inspiron, отображает скорость левого вентилятора (оборотов в минуту), перечисленных в /proc/i8k. Будьте осторожны, некоторые ноутбуки i8k доклады этих вентиляторов показывают в обратном порядке. |
$i8k_right_fan_rpm |
Если работает i8k ядро драйвера для ноутбуков Inspiron, отображает скорость правого вентилятора (оборотов в минуту), перечисленных в /proc/i8k. Будьте осторожны, некоторые ноутбуки i8k доклады этих вентиляторов показывают в обратном порядке. |
${i8k_serial} |
|
${i8k_version} |
|
${ibm_fan} |
|
${ibm_temps} |
|
${ibm_volume} |
|
${ibm_brightness} |
|
${if_empty} |
|
${if_gw} |
|
${if_running} |
|
${if_existing} |
|
${if_mounted} |
|
${if_smapi_bat_installed} |
|
${if_up} |
|
${imap_messages} |
|
${imap_unseen} |
|
${ioscheduler} |
|
$kernel |
Версия ядра |
${laptop_mode} |
|
${loadavg} |
|
${machine} |
|
${mails} |
|
${mboxscan} |
|
$mem |
Колличество используемой оперативной памяти в Мб. |
${membar} |
Бар загрузки памяти, параметр: длинна, без параметра – максимальная длинна |
$memmax |
Общий объем оперативной памяти, в Мб. |
$memperc |
Процент использования оперативной памяти |
${mpd_artist} |
|
${mpd_album} |
|
${mpd_bar} |
|
${mpd_bitrate} |
|
${mpd_status} |
|
${mpd_title} |
|
${mpd_vol} |
|
${mpd_elapsed} |
|
${mpd_length} |
|
${mpd_percent} |
|
${mpd_random} |
|
${mpd_repeat} |
|
${mpd_track} |
|
${mpd_name} |
|
${mpd_file} |
|
${mpd_smart} |
|
${nameserver} |
|
${new_mails} |
|
${nodename} |
|
${outlinecolor} |
|
${offset} |
Смещение текста по горизонтали (величина смещения в пикселах, если отрицательное то смещение будет влево) пример: ${offset -49} |
${pb_battery} |
|
${platform} |
|
${pop3_unseen} |
|
${pop3_used} |
|
${pre_exec} |
|
$processes |
Все процессы |
$running_processes |
Запущенные процессы (не спящие), требуется ядро не ниже 2,6. |
${shadecolor} |
|
${smapi} |
|
${smapi_bat_perc} |
|
${smapi_bat_bar} |
|
$stippled_hr |
пунктирная горизонтальная линия |
${swapbar} |
Бар использования swap раздела, параметр: длинна, без параметра – максимальная длинна |
$swap |
Сколько задействовано память swap в Мб. |
$swapmax |
Общий объем раздела swap раздела |
$swapperc |
Процент использования swap раздела |
${sysname} |
|
${tcp_portmon} |
|
${texeci} |
|
${rss} |
Выводит заголовки rss ленты. ${rss адрес_ленты частота_обновления_(мин.) item_titles кол-во_заголовков } Например: ${rss http://unixforum.org/index.php?act=rssout&id=1 1 item_titles 10 } |
${tab} |
|
${tail} |
|
${time} |
Местное время пример: ${time %A, %d %B} ## Wednesdey, 31 August |
${utime} |
|
${tztime} |
|
${totaldown} |
|
${top} |
Выдает информацию по процессу более всего загружающего процессор. В зависимости от указанных параметров выдает следующую информацию о процессе: name – имя процесса, pid – pid номер процесса, cpu – загруженность процессора этим процессом в %, mem – занято памяти данным процессом, mem_res – занято памяти данным процессом, mem_vsize – занято памяти данным процессом, time – время работы процесса. номер – порядковый номер процесса (максимум 10). 1 – соответсвенно самый активный. |
${top_mem} |
Аналогично ${top}, но по загрузке памяти. |
${totalup} |
|
${updates} |
|
${upspeed} |
Cкорость исходящего трафика в килобайтах пример: ${upspeed wlan0} |
${upspeedf} |
Скорость иходящего трафика в килобайтах с одной десятой пример: ${upspeedf wlan0} |
${upspeedgraph net y,x g1 g2 m} |
График скорости исходящего трафика. аналогично {downspeedgraph net y,x g1 g2 m} пример: ${upspeedgraph wlan0 32,150 000000 7f8ed3} |
${uptime} |
|
${uptime_short} |
|
${user_number} |
|
${user_names} |
|
${user_terms} |
|
${user_times} |
|
${voffset} |
смещение текста по вертикали, величина смещения в пикселах пример: ${color lightgrey}RAM:$color $memperc${color lightgrey}% ${offset 55}Swap:$color $swapperc%'${voffset 5}‘ ## Следующая строка будет на 5 пикселей ниже. |
${voltage_mv} |
|
${voltage_v} |
|
${wireless_essid} |
|
${wireless_mode} |
|
${wireless_bitrate} |
|
${wireless_ap} |
|
${wireless_link_qual} |
|
${wireless_link_qual_max} |
|
${wireless_link_qual_perc} |
|
${wireless_link_bar} |
|
${xmms2_artist} |
|
${xmms2_album} |
|
${xmms2_title} |
|
${xmms2_genre} |
|
${xmms2_comment} |
|
${xmms2_decoder} |
|
${xmms2_transport} |
|
${xmms2_url} |
|
${xmms2_tracknr} |
|
${xmms2_bitrate} |
|
${xmms2_id} |
|
${xmms2_duration} |
|
${xmms2_elapsed} |
|
${xmms2_size} |
|
${xmms2_percent} |
|
${xmms2_status} |
|
${xmms2_bar} |
|
${xmms2_smart} |
|
Это все была сухая теория, теперь чтобы стало понятнее перейдем к практике. Если посмотреть на стандартный файл конфигурации Conky, который лежит в /etc или, как более сложный пример, рассмотреть мой файл конфигурации, то станет более понятна структура файла настроек:
alignment top_right
background yes
border_width 0
border_inner_margin 3
border_outer_margin 0
cpu_avg_samples 2
default_color white
default_outline_color white
default_shade_color white
double_buffer yes
draw_borders no
draw_graph_borders yes
draw_outline no
draw_shades no
gap_x 4
gap_y 24
maximum_width 415
max_port_monitor_connections 64
max_specials 512
max_user_text 16384
minimum_size 350 10
net_avg_samples 2
no_buffers yes
out_to_console no
own_window_hints undecorated,below,sticky,skip_taskbar,skip_pager
own_window_transparent yes
own_window_type display
own_window no
stippled_borders 2
top_cpu_separate no
update_interval 3
update_interval_on_battery 10
uppercase no
use_spacer right
use_xft yes
xftalpha 0.8
xftfont Bitstream Vera Sans Mono:size=9
TEXT
${image /home/thecore/.conkytheme/background.png -p 0,0}
${color #E96A33}$sysname $kernel ${alignr}Время работы: $uptime
${color #E96A33}GPU:$color${execi 5 nvidia-settings -q gpucoretemp |grep '):' | awk '{print $4}' | cut -b1-2}°C ${color #E96A33}HDD:$color${execi 5 netcat localhost 7634 | cut --delimiter '|' --fields 4}°C ${color #E96A33}CPU:$color${execi 5 sensors acpitz-virtual-0 | grep '+' | cut -b15-16}°C ${color #E96A33}Core1:$color${execi 5 sensors coretemp-isa-0000 | grep '+' | cut -b15-16}°C ${color #E96A33}Core2:$color${execi 5 sensors coretemp-isa-0001 | grep '+' | cut -b15-16}°C
${color #E96A33}Заряд батареи: $color${execi 5 cat /proc/acpi/battery/BAT1/state | grep remaining | cut -b26-} ${color #E96A33}Напряжение: $color${execi 5 cat /sys/class/power_supply/BAT1/uevent | grep POWER_SUPPLY_VOLTAGE_NOW | cut -b26-27}.${execi 5 cat /sys/class/power_supply/BAT1/uevent | grep POWER_SUPPLY_VOLTAGE_NOW | cut -b28-30} V
${color #E96A33}Текущая частота CPU: $color${freq} MGz ${color #E96A33}Загрузка:$color $loadavg
${color #E96A33}CPU:$color ${cpu}% ${color #E96A33}${cpubar 5,110} ${color #E96A33}HDD I/O: $color${diskio}
${color #E96A33}${cpugraph 0 32,180 FF0003 FFC900} $alignr${color #E96A33}${diskiograph 32,180 FF0003 FFC900 750}
${color #E96A33}RAM:$color $mem${color #E96A33}/${color}$memmax - $memperc% ${alignr}${color #E96A33}${membar 5,180}
${color #E96A33}Swap:$color $swap${color #E96A33}/${color}$swapmax - $swapperc% ${alignr}${color #E96A33}${swapbar 5,180}
${color #E96A33}Всего процессов:$color $processes ${color #E96A33}Активных:$color $running_processes
${color #E96A33}Tоп процессов:
${color #E96A33} PID CPU% MEM% Имя Время
$color${top pid 1} ${top cpu 1} ${top mem 1} ${top name 1} ${top time 1}
$color${top pid 2} ${top cpu 2} ${top mem 2} ${top name 2} ${top time 2}
$color${top pid 3} ${top cpu 3} ${top mem 3} ${top name 3} ${top time 3}
$color${top pid 4} ${top cpu 4} ${top mem 4} ${top name 4} ${top time 4}
$color${top pid 5} ${top cpu 5} ${top mem 5} ${top name 5} ${top time 5}
${color #E96A33}Использование памяти:
$color${top_mem pid 1} ${top_mem cpu 1} ${top_mem mem 1} ${top_mem name 1} ${top_mem time 1}
$color${top_mem pid 2} ${top_mem cpu 2} ${top_mem mem 2} ${top_mem name 2} ${top_mem time 2}
$color${top_mem pid 3} ${top_mem cpu 3} ${top_mem mem 3} ${top_mem name 3} ${top_mem time 3}
$color${top_mem pid 4} ${top_mem cpu 4} ${top_mem mem 4} ${top_mem name 4} ${top_mem time 4}
$color${top_mem pid 5} ${top_mem cpu 5} ${top_mem mem 5} ${top_mem name 5} ${top_mem time 5}
${color #E96A33}Файловые системы:
${color #E96A33}/ $color${fs_type /} $color${fs_used /}/${fs_size /}${alignr}${color #E96A33}${fs_bar 5,160 /}
${color #E96A33}/mnt $color${fs_type /mnt} $color${fs_used /mnt}/${fs_size /mnt}${alignr}${color #E96A33}${fs_bar 5,160 /mnt}
${color #E96A33}Получение:$color ${downspeed ppp0} ${color #E96A33}Отправка: $color${upspeed ppp0}
${color #E96A33}${downspeedgraph ppp0 32,180 FF0003 FFC900} $alignr${color #E96A33}${upspeedgraph ppp0 32,180 FF0003 FFC900}
${color #E96A33}Всего: $color${totaldown ppp0} ${color #E96A33}Всего: $color${totalup ppp0}
${color #E96A33}Внешний IP: $color${addr ppp0} ${color #E96A33}Внутренний IP: $color${addr eth0}
${color #E96A33}Порты $color Входящие: ${tcp_portmon 1 32767 count} Исходящие: ${tcp_portmon 32768 61000 count}${alignr}Все:${tcp_portmon 1 65535 count}
${color #E96A33}Исходящие соединения ${alignr} Удаленный Сервис/Порт$color
${tcp_portmon 32768 61000 rhost 0} ${alignr} ${tcp_portmon 32768 61000 rservice 0}
${tcp_portmon 32768 61000 rhost 1} ${alignr} ${tcp_portmon 32768 61000 rservice 1}
${tcp_portmon 32768 61000 rhost 2} ${alignr} ${tcp_portmon 32768 61000 rservice 2}
${tcp_portmon 32768 61000 rhost 3} ${alignr} ${tcp_portmon 32768 61000 rservice 3}
${tcp_portmon 32768 61000 rhost 4} ${alignr} ${tcp_portmon 32768 61000 rservice 4}
Как видно из содержимого этого файла в начале идут переменные и первой таблицы, а затем после слова TEXT переменные отвечающие за содержание монитора из второй.
Возможности монитора Conky
Системный монитор Conky позволяет отображать очень большой спектр информации о системе, а конкретно у меня отображаются текущее ядро, время старта системы, все доступные для системы датчики, интенсивность загрузки процессора и винчестера, состояние оперативной памяти и свободное место на жестком, топ процессов по количеству используемых ресурсов, сетевой трафик и IP адреса сетевых адаптеров.
В основном с настройкой Conky у меня проблем не возникало, за исключением датчиков системы. Такие параметры как температуры устройств и состояние батареи мне пришлось добавлять хитрым способом. Так для подключения датчиков и сенсоров системы необходимо установить дополнительные библиотеки. Как это сделать читайте в предыдущей статье: Как задействовать датчики и сенсоры компьютера. После этого состояние датчиков станет доступным с помощью команды:
user@host:~$ sensors
Поскольку добавить их в монитор Conky другим способом у меня не получилось, то я воспользовался этой командой чтобы получать состояние температуры процессора. Рассмотрим следующие строки из конфигурационного файла(они идут начиная с 3-й строки после слова TEXT):
${color #E96A33}GPU:$color${execi 5 nvidia-settings -q gpucoretemp |grep '):' | awk '{print $4}' | cut -b1-2}°C
${color #E96A33}HDD:$color${execi 5 netcat localhost 7634 | cut --delimiter '|' --fields 4}°C
${color #E96A33}CPU:$color${execi 5 sensors acpitz-virtual-0 | grep '+' | cut -b15-16}°C
${color #E96A33}Core1:$color${execi 5 sensors coretemp-isa-0000 | grep '+' | cut -b15-16}°C
${color #E96A33}Core2:$color${execi 5 sensors coretemp-isa-0001 | grep '+' | cut -b15-16}°C
Где первые две строки отвечают за считывание и обновление температур графического процессора и жесткого диска. Тут проще так как эти строчки должны подойти всем у кого видео карта NVidia и установлен датчик hddtemp. Следующие строчки зависят от установленных в вашей системе датчиков. Переменные ${color #E96A33} и $color просто отвечают за цвета надписей и текста на панели, а переменная ${execi ______} состоит из следующих составных: 5 – это число секунд обновления, sensors acpitz-virtual-0 – это команда sensors с флагом acpitz-virtual-0, у меня так называется датчик на процессоре, cut -b15-16 – вырезать из строки байты по номерами 15-16. Если перевести на на человеческий язык то это все звучит так: «Каждые 5 секунд выполнить команду sensors с параметром acpitz-virtual-0, где найти строку со знаком + и вырезать из нее байты под номерами 15-16«.
Как видно эта трактовка подходит для всех строк с датчиками, даже для определения состояния батареи:
${color #E96A33}Заряд батареи: $color${execi 5 cat /proc/acpi/battery/BAT1/state | grep remaining | cut -b26-}
${color #E96A33}Напряжение: $color${execi 5 cat /sys/class/power_supply/BAT1/uevent | grep POWER_SUPPLY_VOLTAGE_NOW | cut -b26-27}.${execi 5 cat /sys/class/power_supply/BAT1/uevent | grep POWER_SUPPLY_VOLTAGE_NOW | cut -b28-30} V
Только здесь сразу вырезаются нужные байты с динамических файлов, для получения текущего заряда и напряжения на батарее.
Также в системный терминал удалось добавить фоновое изображение с помощью строки:
${image /home/user/.conkytheme/background.png -p 0,0}
которая не была описана в начале в таблицах, параметр -р 0,0 отвечает за позицию фоновой картинки в окне Conky.
Для того чтобы запустить Conky используя свой файл конфигурации необходимо ввести команду, или создать ярлык с командой:
conky -c /путь/к/конфигурационному/файлу/conkyrc
К примеру как это у меня:
conky -c /home/user/.conkytheme/conkyrc
Чтобы закрыть Conky воспользуйтесь комбинацией клавиш Alt+F2 или терминалом, где нужно ввести:
killall conky
Если у вас разрешение монитора 1366х768, или любое другое …х768, то вам полностью подойдет мой файл конфигурации с фоновым рисунком 420х720. Или если расширение монитора другое, то просто найдите другой фон или вообще его не подключайте.
В этом файле conkyrc были специально убраны строки с датчиками, так как у каждого они свои и с моими строчками тема не заработает.
Источник: http://osmaster.org.ua/?p=2103