Наблюдение за температурой при помощи Conky и устройства NetPing TS v2

Многим пользователям Linux знаком системный монитор conky, который позволяет отображать различную информацию о системе прямо на рабочем столе компьютера. И без того широкий функционал этого инструмента можно заметно расширить с помощью внешних скриптов.

Далее будет показано как можно настроить отображение данных о температуре, снимаемых с устройства NetPing TS v2.

Вот как будет выглядеть рабочий стол с conky и отображением температуры с устройства NetPing TS v2:

linux, netping ts v2, netping, температура, рабочий стол, мониторинг температуры, удаленный мониторинг температуры, термодатчик

Допустим что на компьютере уже установлена Ubuntu Linux и настроен и запущен Conky. Дополнительно нам понадобится только утилита snmpwalk, являющаяся частью пакета snmp. Установим этот пакет:

sudo apt-get install snmp

Далее допустим что устройство имеет доменное имя "netping" и SNMP-Community "SWITCH", датчик TS1 (OID: 1.3.6.1.4.1.25728.50.8.1005) установлен в помещении, а TS2 (OID: 1.3.6.1.4.1.25728.50.8.1017) - на улице.

Просмотреть значения температуры на датчиках можно примерно вот такой командой:

snmpwalk -Oqsv -v 1 -c SWITCH netping 1.3.6.1.4.1.25728.50.8.1017

Эта команда напечатает на стандартный вывод значение, считанное по указанному OID (в примере это OID датчика TS2). Теперь можно добавить вывод этой команды к другим данным, отображаемым в Conky, используя встроенную команду Conky "exec".

В нашем примере нам нужно добавить отображение данных с датчиков TS1 и TS2, снабдив их пояснительными комментариями. Для решения этой задачи вполне достаточно добавить в конец файла ~/.conkyrc строки:

Term internal: ${exec /usr/bin/snmpwalk -Oqsv -v 1 -c SWITCH netping 1.3.6.1.4.1.25728.50.8.1005}

Term external: ${exec /usr/bin/snmpwalk -Oqsv -v 1 -c SWITCH netping 1.3.6.1.4.1.25728.50.8.1017}

В результате вывод Conky будет выглядеть примерно вот так:

conky, netping, netping ts v2, нетпинг, туезштп, термодатчик, мониторинг температуры, удаленный мониторинг температуры

Если вы не пользовались Conky раньше, но вас заинтересовал этот инструмент то вы легко можете установить его командой:

sudo apt-get install conky

Конфигурирование Conky без чтения документации затруднительно, однако оно будет заметно проще если взять за основу готовый файл конфигурации. Например вы можете скопировать к себе в домашний каталог файл конфигурации, используемый по умолчанию ("/etc/conky/conky.conf") и попробовать отредактировать его под свои нужды.

На скриншоте показан вывод Conky, использующего файл "~/.conkyrc" следующего содержания:

own_window yes

own_window_hints undecorated,below,skip_taskbar

own_window_type override

own_window_transparent yes

 

alignment bottom_right

background no

border_width 1

cpu_avg_samples 2

default_color white

default_outline_color white

default_shade_color white

draw_borders no

draw_graph_borders yes

draw_outline no

draw_shades no

use_xft yes

xftfont DejaVu Sans Mono:size=12

gap_x 20

gap_y 60

minimum_size 5 5

net_avg_samples 2

no_buffers yes

out_to_console no

out_to_stderr no

extra_newline no

stippled_borders 0

uppercase no

use_spacer none

show_graph_scale no

show_graph_range no

update_interval 5

 

TEXT

${color grey}Uptime:$color $uptime

${color grey}Frequency (in MHz):$color $freq

${color grey}RAM Usage:$color $mem/$memmax - $memperc% ${membar 4}

${color grey}Swap Usage:$color $swap/$swapmax - $swapperc% ${swapbar 4}

${color grey}CPU Usage:$color $cpu% ${cpubar 4}

${color grey}Processes:$color $processes ${color grey}Running:$color $running_processes

$hr

${color grey}File systems:

/ $color${fs_used /}/${fs_size /} ${fs_bar 6 /}

/boot $color${fs_used /boot}/${fs_size /boot} ${fs_bar 6 /boot}

/home $color${fs_used /home}/${fs_size /home} ${fs_bar 6 /home}

/var $color${fs_used /var}/${fs_size /var} ${fs_bar 6 /var}

${color grey}Networking:

Up:$color ${upspeed eth0} ${color grey} - Down:$color ${downspeed eth0}

$hr

${color grey}Name PID CPU% MEM%

${color lightgrey} ${top name 1} ${top pid 1} ${top cpu 1} ${top mem 1}

${color lightgrey} ${top name 2} ${top pid 2} ${top cpu 2} ${top mem 2}

${color lightgrey} ${top name 3} ${top pid 3} ${top cpu 3} ${top mem 3}

${color lightgrey} ${top name 4} ${top pid 4} ${top cpu 4} ${top mem 4}

${color lightgrey} ${top name 5} ${top pid 5} ${top cpu 5} ${top mem 5}

$hr

${color grey}Term internal:$color ${exec /usr/bin/snmpwalk -Oqsv -v 1 -c SWITCH netping 1.3.6.1.4.1.25728.50.8.1005}

${color grey}Term external:$color ${exec /usr/bin/snmpwalk -Oqsv -v 1 -c SWITCH netping 1.3.6.1.4.1.25728.50.8.1017}

На этом всё. Приятной работы!

Автор: Вадим Калинников
E-mail: moose@ylsoftware.com
Web:
http://ylsoftware.com