System Info - системная информация роутера
Отсюда подсмотрел скрипт, немного его подправил. Скрипт выводит разнообразную инфу о роутере. Позволяет посмотреть и очистить лог роутера. Называем его info.cgi и закидываем в папку вебсервера.
Code:
#!/bin/sh
run_time=`cat /proc/uptime | awk '{print $1}'`
cnt="<center>"
cnt_end="</center>"
syst="System Info"
if [ "$QUERY_STRING" == "" ]
then
QUERY_STRING="sys"
fi
case "$QUERY_STRING" in
sys) vhead="${syst}"
cnt=""
cnt_end=""
tab="`cat /proc/version`<br>`uptime`<br><center><u>Cpu</u></center><pre>`cat /proc/cpuinfo`</pre>"
tab="${tab}<center><u>Memory</u></center><pre>`cat /proc/meminfo`</pre>"
tab="${tab}<center><u>Filesystem</u></center><pre>`/bin/df -h`</pre>"
tab="${tab}<center><u>Proccess</u></center><pre>`ps`</pre>"
tab="${tab}<center><u>Loaded modules</u></center><pre>`lsmod`</pre>"
tab="${tab}<center><u>Route</u></center><pre>`route -en`</pre>"
tab="${tab}<center><u>Arp</u></center><pre>`cat /proc/net/arp`</pre>"
tab="${tab}<center><u>Hosts</u></center><pre>`cat /etc/hosts`</pre>"
tab="${tab}<center><u>Interfaces</u></center><pre>`ifconfig`</pre>" ;;
net) vhead="${syst}"
cnt=""
cnt_end=""
tab="${tab}<center><u>Listening ports</u></center><pre>`netstat -lna`</pre>"
tab="${tab}<center><u>Connections</u></center><pre>`cat /proc/net/ip_conntrack`</pre>" ;;
iptab) vhead="${syst}"
cnt=""
cnt_end=""
tab="${tab}<center><u>Iptables Info</u></center><pre>`iptables-save`</pre>" ;;
log) vhead="${syst}"
cnt=""
cnt_end=""
tab="${tab}<center><u>System Logfile</u></center><br><pre>`tail -n 5000 /tmp/syslog.log`</pre>"
tab="${tab}<center><u><a href=info.cgi?clog>Clear Log</a><br></u></center>" ;;
clog) vhead="${syst}"
cnt=""
cnt_end=""
tab="${tab}<center><u>Log Empty</u></center><br><pre>`echo "" > /tmp/syslog.log`</pre>" ;;
soft) vhead="${syst}"
cnt=""
cnt_end=""
tab="${tab}<center><u>Installed Packages</u></center><pre>`/opt/bin/ipkg-opt list_installed`</pre>" ;;
esac
echo "Content-type: text/html; charset=utf-8"
echo
echo "<HTML><HEAD><TITLE>System Info v.1.0.1</TITLE><meta http-equiv=pragma content=no-cache>"
echo "<meta http-equiv=cache-control content=no-cache, no-store, must-revalidate>"
echo "</HEAD><BODY link=#cecece vlink=#cecece alink=#cecece bgcolor=#000000 text=#FFFFFFFF>"
echo "<table cols=1 width=100% border=0>"
echo "<tr><td><center><h3>${vhead}</h3></center></td>"
echo "</center></td></tr></table>"
echo "<center><script language=JavaScript>"
echo "document.writeln(document.lastModified)"
echo "</script></center><br>"
echo "<table width=100% border=0><tr><td valign=top>"
echo "<fieldset><legent>Menu:</legent><br><a href=info.cgi?sys>General</a><br>"
echo "<a href=info.cgi?iptab>Firewall</a><br>"
echo "<a href=info.cgi?net>Network</a><br>"
echo "<a href=info.cgi?soft>Software</a><br>"
echo "<a href=info.cgi?log>Syslog</a>"
echo "</fieldset>"
echo "<td width=100%>${cnt} ${tab} ${cnt_end}</td></table>"
run_time2=`cat /proc/uptime | awk '{print $1}'`
run_time=`echo "$run_time2 $run_time" | awk '{printf "%s\n",$1-$2}'`
echo "<center>Generated in ${run_time} sec.</center>"
echo "</BODY></HTML>"
Оперативная системная информация в wl500gp1
Было бы здорово, если бы был оперативный доступ к некой панели информации, на которой значилась бы например загружка процессора роутера, забитость канала, забитость памяти, свободное место на жестком диске и прочее подобное.
Кто-либо делал подобное ?
В консоли можно посмотреть, но хочется именно сводку и лучше в хтмл, чтобы прямо из браузера зайти спокойно и посмотреть.
1 Attachment(s)
System Info и OPKG-WEB frontend
Подкорректировал файлы info.cgi (System Info для удобного просмотра состояния системной информации роутера (процессор, память, запущенные процессы, установленные пакеты, системный лог с возможностью его очистки и др.) и package.cgi (OPKG-WEB frontend - управление IPK-пакетами через WEB-морду -просмотр, установка, обновление, удаление - http://wl500g.info/showthread.php?t=13272, скрипт для "чайников") для работы с OPKG. Скрипты работают под управлением Web-сервера (у меня lighttpd+php-fcgi).
System Info работает нормально:
http://download.kanet.ru/gallery/fil...rtn16/info.jpg
С OPKG-WEB frontend есть проблемы. Механизмы скрипта (синхронизация OPKG с репозиторием, установка-удаление-обновление пакетов) работают. А вот показ состояния корректно работает только для установленных пакетов ("Installed"):
http://download.kanet.ru/gallery/fil...tn16/opkg1.jpg
При показе всех пакетов репозитория ("NONE"), неустановленных пакетов ("Not installed") или при обновлении всех установленных ("Update") в таблице появляются лишние строчки:
http://download.kanet.ru/gallery/fil...tn16/opkg2.jpg
Лишние строчки будут у пакетов, имеющих многострочные Description (т.е там, где есть символ перевода строки для каждой строчки Description). В случае IPKG-WEB frontend и пакетов optware такого не происходило, т.к. в optware все пакеты имеют однострочные Description.
Тем не менее для установленных пакетов в столбце comment выводится только первая строка Description и все корректно.
Есть два пути решения проблемы - попросить наших мейнтейнеров преобразовать Description всех пакетов в репозитории Entware к однострочному виду или подправить скрипт packgage.cgi. Первое представляется менее вероятным.
Файлы прилагаются. Если есть специалисты по скриптам, могущие подправить package.cgi - просьба это сделать.