Многим пользователям Linux знаком системный монитор conky, который позволяет отображать различную информацию о системе прямо на рабочем столе компьютера. И без того широкий функционал этого инструмента можно заметно расширить с помощью внешних скриптов.
Далее будет показано как можно настроить отображение данных о температуре, снимаемых с устройства NetPing TS v2, о котором мы уже писали ранее ([1], [2], [3], [4], [5], [6], [7]).
Допустим что на компьютере уже установлена 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}
На этом всё. Приятной работы!
Anonymous 2011-03-15 14:17:29 (#)