Наблюдение за температурой при помощи Conky и устройства NetPing TS v2
Наблюдение за температурой при помощи Conky и устройства NetPing TS v2
Многим пользователям Linux знаком системный монитор conky, который позволяет отображать различную информацию о системе прямо на рабочем столе компьютера. И без того широкий функционал этого инструмента можно заметно расширить с помощью внешних скриптов.
Далее будет показано как можно настроить отображение данных о температуре, снимаемых с устройства NetPing TS v2.
Вот как будет выглядеть рабочий стол с conky и отображением температуры с устройства NetPing TS v2:
Допустим что на компьютере уже установлена 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 раньше, но вас заинтересовал этот инструмент то вы легко можете установить его командой:
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