Message ID | 1501324811-29060-1-git-send-email-freifunk@adrianschmutzler.de |
---|---|
State | Superseded |
Headers | show |
diff --git a/src/packages/fff/fff-support/files/etc/show_info.sh b/src/packages/fff/fff-support/files/etc/show_info.sh new file mode 100755 index 0000000..17fbb9f --- /dev/null +++ b/src/packages/fff/fff-support/files/etc/show_info.sh @@ -0,0 +1,123 @@ +#!/bin/sh + +. /etc/community.cfg +. /etc/firmware_release + +HOSTNAME=$(uci -q get 'system.@system[0].hostname') + +human_bytes() { + while read B ; do + [ $B -lt 1024 ] && echo ${B} B && break + KB=$(((B+512)/1024)) + [ $KB -lt 1024 ] && echo ${KB} KB && break + MB=$(((KB+512)/1024)) + [ $MB -lt 1024 ] && echo ${MB} MB && break + GB=$(((MB+512)/1024)) + [ $GB -lt 1024 ] && echo ${GB} GB && break + echo $(((GB+512)/1024)) TB + done +} + +if pidof fastd >/dev/null ; then + vpn_active="aktiv" +else + vpn_active="inaktiv" +fi +if grep -q '1' /sys/class/net/l2tp*/carrier 2> /dev/null ; then + l2tp_active="aktiv" +else + l2tp_active="inaktiv" +fi +up="$(uptime)" +load="${up##*:}" +uptime="${up%%,*}" +uptime="${uptime##*up}" + +#include OpenWrt version +. /etc/openwrt_release +. /etc/firmware_release + +addr() { + local addr="$(ip -$1 address show dev $2 2>/dev/null | tr '/' ' '| awk '/inet/{ printf("%s ", $2); }')" + echo "${addr:--}" +} +default_gw() { + ip -$1 route list 0/0 dev $2 2> /dev/null | awk '{print($3); exit(0)}' +} +wanif=$(uci -q get network.wan.ifname) +if [ -n "$(default_gw 4 $wanif)" -o -n "$(default_gw 6 $wanif)" ]; then + internet_active="Ja" +else + internet_active="Nein" +fi + +echo "" +echo "Router configuration overview:" + +echo "" +echo "-> SYSTEM" +echo "Name: ${HOSTNAME}" +echo "Modell: $(cat /tmp/sysinfo/model 2>/dev/null)" +echo "MAC-Adresse: $(cat /sys/class/net/br-mesh/address)" +echo "Bekannte Knoten: $((`cat /sys/kernel/debug/batman_adv/bat0/transtable_global | grep '^ [^ ]' | cut -b 39-55 | sort | uniq | wc -l 2>/dev/null`+1))" +echo "Nachbarknoten: $(cat /sys/kernel/debug/batman_adv/bat0/originators | grep '^[0-9a-f]' | cut -b 37-53 | sort | uniq | wc -l 2>/dev/null)" +echo "VPN via fastd: ${vpn_active}" +echo "VPN via L2TP: ${l2tp_active}" +echo "Laufzeit: ${uptime}" +echo "Auslastung: ${load}" +echo "Uhrzeit: $(date)" + +echo "" +echo "-> SOFTWARE" +echo "Firmware Version: ${FIRMWARE_VERSION}" +echo "LEDE Version: ${DISTRIB_DESCRIPTION}" +echo "Kernel Version: $(uname -s -m -r)" +echo "Batman-Adv Version: $(cat /sys/module/batman_adv/version 2>/dev/null)" +echo "Fastd Version: $(fastd --version 2> /dev/null | cut -d' ' -f 2)" + +echo "" +echo "-> Netz: FREIFUNK" +echo "Nutzer: $(cat /sys/kernel/debug/batman_adv/bat0/transtable_local 2> /dev/null | grep -c 'W')" +echo "Empfangen: $(cat /sys/class/net/br-mesh/statistics/rx_bytes | human_bytes)" +echo "Gesendet: $(cat /sys/class/net/br-mesh/statistics/tx_bytes | human_bytes)" +echo "IPv4 Adressen: $(addr 4 br-mesh)" +echo "IPv6 Adressen: $(addr 6 br-mesh)" + +echo "" +echo "-> Netz: WAN" +echo "Internet vorhanden: ${internet_active}" +echo "Empfangen: $(cat /sys/class/net/${wanif}/statistics/rx_bytes | human_bytes)" +echo "Gesendet: $(cat /sys/class/net/${wanif}/statistics/tx_bytes | human_bytes)" +echo "IPv4 Adressen: $(addr 4 $wanif)" +echo "IPv6 Adressen: $(addr 6 $wanif)" + +echo "" +echo "-> EINSTELLUNGEN" +echo "Knotenname: ${HOSTNAME}" +echo "Knotenbeschreibung: $(uci -q get 'system.@system[0].description')" +echo "GPS Breitengrad: $(uci -q get 'system.@system[0].latitude')" +echo "GPS Laengengrad: $(uci -q get 'system.@system[0].longitude')" +echo "Standortbeschreibung: $(uci -q get 'system.@system[0].position_comment')" +echo "E-Mail Adresse: $(uci -q get 'system.@system[0].contact')" + +echo "" +echo "-> SWITCH" +if swconfig list | grep -q switch0 ; then + swconfig dev switch0 show | grep "\t*link:" | while read line ; do + line=$(echo "$line" | tr -d '\n' | tr -d '\t') + port=$(echo "$line" | sed 's/.* port:\([^ ]*\) .*/\1/') + link=$(echo "$line" | sed 's/.* link:\([^ ]*\).*/\1/') + if [ "$link" == "up" ] ; then + speed=$(echo "$line" | sed 's/.* speed:\([^ ]*\).*/\1/') + duplex=$(echo "$line" | sed 's/.* \([^ ]*-duplex\).*/\1/') + else + speed="no link" + duplex="" + fi + port="Port ${port}" + echo "${port}: ${link} @ $speed $duplex" + done +fi + +echo "" +echo "END"
Hi, sieht gut aus. Reviewed-by: Dominik Heidler <dominik@heidler.eu> Tested-by: Dominik Heidler <dominik@heidler.eu> Am 29.07.2017 um 12:40 schrieb Adrian Schmutzler: > Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de> > > Tested-by: Adrian Schmutzler <freifunk@adrianschmutzler.de> > --- > .../fff/fff-support/files/etc/show_info.sh | 123 +++++++++++++++++++++ > 1 file changed, 123 insertions(+) > create mode 100755 src/packages/fff/fff-support/files/etc/show_info.sh > > diff --git a/src/packages/fff/fff-support/files/etc/show_info.sh b/src/packages/fff/fff-support/files/etc/show_info.sh > new file mode 100755 > index 0000000..17fbb9f > --- /dev/null > +++ b/src/packages/fff/fff-support/files/etc/show_info.sh > @@ -0,0 +1,123 @@ > +#!/bin/sh > + > +. /etc/community.cfg > +. /etc/firmware_release > + > +HOSTNAME=$(uci -q get 'system.@system[0].hostname') > + > +human_bytes() { > + while read B ; do > + [ $B -lt 1024 ] && echo ${B} B && break > + KB=$(((B+512)/1024)) > + [ $KB -lt 1024 ] && echo ${KB} KB && break > + MB=$(((KB+512)/1024)) > + [ $MB -lt 1024 ] && echo ${MB} MB && break > + GB=$(((MB+512)/1024)) > + [ $GB -lt 1024 ] && echo ${GB} GB && break > + echo $(((GB+512)/1024)) TB > + done > +} > + > +if pidof fastd >/dev/null ; then > + vpn_active="aktiv" > +else > + vpn_active="inaktiv" > +fi > +if grep -q '1' /sys/class/net/l2tp*/carrier 2> /dev/null ; then > + l2tp_active="aktiv" > +else > + l2tp_active="inaktiv" > +fi > +up="$(uptime)" > +load="${up##*:}" > +uptime="${up%%,*}" > +uptime="${uptime##*up}" > + > +#include OpenWrt version > +. /etc/openwrt_release > +. /etc/firmware_release > + > +addr() { > + local addr="$(ip -$1 address show dev $2 2>/dev/null | tr '/' ' '| awk '/inet/{ printf("%s ", $2); }')" > + echo "${addr:--}" > +} > +default_gw() { > + ip -$1 route list 0/0 dev $2 2> /dev/null | awk '{print($3); exit(0)}' > +} > +wanif=$(uci -q get network.wan.ifname) > +if [ -n "$(default_gw 4 $wanif)" -o -n "$(default_gw 6 $wanif)" ]; then > + internet_active="Ja" > +else > + internet_active="Nein" > +fi > + > +echo "" > +echo "Router configuration overview:" > + > +echo "" > +echo "-> SYSTEM" > +echo "Name: ${HOSTNAME}" > +echo "Modell: $(cat /tmp/sysinfo/model 2>/dev/null)" > +echo "MAC-Adresse: $(cat /sys/class/net/br-mesh/address)" > +echo "Bekannte Knoten: $((`cat /sys/kernel/debug/batman_adv/bat0/transtable_global | grep '^ [^ ]' | cut -b 39-55 | sort | uniq | wc -l 2>/dev/null`+1))" > +echo "Nachbarknoten: $(cat /sys/kernel/debug/batman_adv/bat0/originators | grep '^[0-9a-f]' | cut -b 37-53 | sort | uniq | wc -l 2>/dev/null)" > +echo "VPN via fastd: ${vpn_active}" > +echo "VPN via L2TP: ${l2tp_active}" > +echo "Laufzeit: ${uptime}" > +echo "Auslastung: ${load}" > +echo "Uhrzeit: $(date)" > + > +echo "" > +echo "-> SOFTWARE" > +echo "Firmware Version: ${FIRMWARE_VERSION}" > +echo "LEDE Version: ${DISTRIB_DESCRIPTION}" > +echo "Kernel Version: $(uname -s -m -r)" > +echo "Batman-Adv Version: $(cat /sys/module/batman_adv/version 2>/dev/null)" > +echo "Fastd Version: $(fastd --version 2> /dev/null | cut -d' ' -f 2)" > + > +echo "" > +echo "-> Netz: FREIFUNK" > +echo "Nutzer: $(cat /sys/kernel/debug/batman_adv/bat0/transtable_local 2> /dev/null | grep -c 'W')" > +echo "Empfangen: $(cat /sys/class/net/br-mesh/statistics/rx_bytes | human_bytes)" > +echo "Gesendet: $(cat /sys/class/net/br-mesh/statistics/tx_bytes | human_bytes)" > +echo "IPv4 Adressen: $(addr 4 br-mesh)" > +echo "IPv6 Adressen: $(addr 6 br-mesh)" > + > +echo "" > +echo "-> Netz: WAN" > +echo "Internet vorhanden: ${internet_active}" > +echo "Empfangen: $(cat /sys/class/net/${wanif}/statistics/rx_bytes | human_bytes)" > +echo "Gesendet: $(cat /sys/class/net/${wanif}/statistics/tx_bytes | human_bytes)" > +echo "IPv4 Adressen: $(addr 4 $wanif)" > +echo "IPv6 Adressen: $(addr 6 $wanif)" > + > +echo "" > +echo "-> EINSTELLUNGEN" > +echo "Knotenname: ${HOSTNAME}" > +echo "Knotenbeschreibung: $(uci -q get 'system.@system[0].description')" > +echo "GPS Breitengrad: $(uci -q get 'system.@system[0].latitude')" > +echo "GPS Laengengrad: $(uci -q get 'system.@system[0].longitude')" > +echo "Standortbeschreibung: $(uci -q get 'system.@system[0].position_comment')" > +echo "E-Mail Adresse: $(uci -q get 'system.@system[0].contact')" > + > +echo "" > +echo "-> SWITCH" > +if swconfig list | grep -q switch0 ; then > + swconfig dev switch0 show | grep "\t*link:" | while read line ; do > + line=$(echo "$line" | tr -d '\n' | tr -d '\t') > + port=$(echo "$line" | sed 's/.* port:\([^ ]*\) .*/\1/') > + link=$(echo "$line" | sed 's/.* link:\([^ ]*\).*/\1/') > + if [ "$link" == "up" ] ; then > + speed=$(echo "$line" | sed 's/.* speed:\([^ ]*\).*/\1/') > + duplex=$(echo "$line" | sed 's/.* \([^ ]*-duplex\).*/\1/') > + else > + speed="no link" > + duplex="" > + fi > + port="Port ${port}" > + echo "${port}: ${link} @ $speed $duplex" > + done > +fi > + > +echo "" > +echo "END" >
Danke. Bitte beim applien noch "similar" und "output" im Titel vertauschen, damit der Satz Sinn gibt. -----Original Message----- From: franken-dev [mailto:franken-dev-bounces@freifunk.net] On Behalf Of Dominik Heidler Sent: Samstag, 29. Juli 2017 17:05 To: Adrian Schmutzler <freifunk@adrianschmutzler.de>; franken-dev@freifunk.net Subject: Re: [PATCH] fff-support: Provide shell script with similar output to WebUI > Hi, > > sieht gut aus. > > Reviewed-by: Dominik Heidler <dominik@heidler.eu> > Tested-by: Dominik Heidler <dominik@heidler.eu> > Am 29.07.2017 um 12:40 schrieb Adrian Schmutzler: > Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de> > > Tested-by: Adrian Schmutzler <freifunk@adrianschmutzler.de> > --- > .../fff/fff-support/files/etc/show_info.sh | 123 +++++++++++++++++++++ > 1 file changed, 123 insertions(+) > create mode 100755 > src/packages/fff/fff-support/files/etc/show_info.sh > > diff --git a/src/packages/fff/fff-support/files/etc/show_info.sh > b/src/packages/fff/fff-support/files/etc/show_info.sh > new file mode 100755 > index 0000000..17fbb9f > --- /dev/null > +++ b/src/packages/fff/fff-support/files/etc/show_info.sh > @@ -0,0 +1,123 @@ > +#!/bin/sh > + > +. /etc/community.cfg > +. /etc/firmware_release > + > +HOSTNAME=$(uci -q get 'system.@system[0].hostname') > + > +human_bytes() { > + while read B ; do > + [ $B -lt 1024 ] && echo ${B} B && break > + KB=$(((B+512)/1024)) > + [ $KB -lt 1024 ] && echo ${KB} KB && break > + MB=$(((KB+512)/1024)) > + [ $MB -lt 1024 ] && echo ${MB} MB && break > + GB=$(((MB+512)/1024)) > + [ $GB -lt 1024 ] && echo ${GB} GB && break > + echo $(((GB+512)/1024)) TB > + done > +} > + > +if pidof fastd >/dev/null ; then > + vpn_active="aktiv" > +else > + vpn_active="inaktiv" > +fi > +if grep -q '1' /sys/class/net/l2tp*/carrier 2> /dev/null ; then > + l2tp_active="aktiv" > +else > + l2tp_active="inaktiv" > +fi > +up="$(uptime)" > +load="${up##*:}" > +uptime="${up%%,*}" > +uptime="${uptime##*up}" > + > +#include OpenWrt version > +. /etc/openwrt_release > +. /etc/firmware_release > + > +addr() { > + local addr="$(ip -$1 address show dev $2 2>/dev/null | tr '/' ' '| awk '/inet/{ printf("%s ", $2); }')" > + echo "${addr:--}" > +} > +default_gw() { > + ip -$1 route list 0/0 dev $2 2> /dev/null | awk '{print($3); exit(0)}' > +} > +wanif=$(uci -q get network.wan.ifname) if [ -n "$(default_gw 4 > +$wanif)" -o -n "$(default_gw 6 $wanif)" ]; then > + internet_active="Ja" > +else > + internet_active="Nein" > +fi > + > +echo "" > +echo "Router configuration overview:" > + > +echo "" > +echo "-> SYSTEM" > +echo "Name: ${HOSTNAME}" > +echo "Modell: $(cat /tmp/sysinfo/model 2>/dev/null)" > +echo "MAC-Adresse: $(cat /sys/class/net/br-mesh/address)" > +echo "Bekannte Knoten: $((`cat /sys/kernel/debug/batman_adv/bat0/transtable_global | grep '^ [^ ]' | cut -b 39-55 | sort | uniq | wc -l 2>/dev/null`+1))" > +echo "Nachbarknoten: $(cat /sys/kernel/debug/batman_adv/bat0/originators | grep '^[0-9a-f]' | cut -b 37-53 | sort | uniq | wc -l 2>/dev/null)" > +echo "VPN via fastd: ${vpn_active}" > +echo "VPN via L2TP: ${l2tp_active}" > +echo "Laufzeit: ${uptime}" > +echo "Auslastung: ${load}" > +echo "Uhrzeit: $(date)" > + > +echo "" > +echo "-> SOFTWARE" > +echo "Firmware Version: ${FIRMWARE_VERSION}" > +echo "LEDE Version: ${DISTRIB_DESCRIPTION}" > +echo "Kernel Version: $(uname -s -m -r)" > +echo "Batman-Adv Version: $(cat /sys/module/batman_adv/version 2>/dev/null)" > +echo "Fastd Version: $(fastd --version 2> /dev/null | cut -d' ' -f 2)" > + > +echo "" > +echo "-> Netz: FREIFUNK" > +echo "Nutzer: $(cat /sys/kernel/debug/batman_adv/bat0/transtable_local 2> /dev/null | grep -c 'W')" > +echo "Empfangen: $(cat /sys/class/net/br-mesh/statistics/rx_bytes | human_bytes)" > +echo "Gesendet: $(cat /sys/class/net/br-mesh/statistics/tx_bytes | human_bytes)" > +echo "IPv4 Adressen: $(addr 4 br-mesh)" > +echo "IPv6 Adressen: $(addr 6 br-mesh)" > + > +echo "" > +echo "-> Netz: WAN" > +echo "Internet vorhanden: ${internet_active}" > +echo "Empfangen: $(cat /sys/class/net/${wanif}/statistics/rx_bytes | human_bytes)" > +echo "Gesendet: $(cat /sys/class/net/${wanif}/statistics/tx_bytes | human_bytes)" > +echo "IPv4 Adressen: $(addr 4 $wanif)" > +echo "IPv6 Adressen: $(addr 6 $wanif)" > + > +echo "" > +echo "-> EINSTELLUNGEN" > +echo "Knotenname: ${HOSTNAME}" > +echo "Knotenbeschreibung: $(uci -q get 'system.@system[0].description')" > +echo "GPS Breitengrad: $(uci -q get 'system.@system[0].latitude')" > +echo "GPS Laengengrad: $(uci -q get 'system.@system[0].longitude')" > +echo "Standortbeschreibung: $(uci -q get 'system.@system[0].position_comment')" > +echo "E-Mail Adresse: $(uci -q get 'system.@system[0].contact')" > + > +echo "" > +echo "-> SWITCH" > +if swconfig list | grep -q switch0 ; then > + swconfig dev switch0 show | grep "\t*link:" | while read line ; do > + line=$(echo "$line" | tr -d '\n' | tr -d '\t') > + port=$(echo "$line" | sed 's/.* port:\([^ ]*\) .*/\1/') > + link=$(echo "$line" | sed 's/.* link:\([^ ]*\).*/\1/') > + if [ "$link" == "up" ] ; then > + speed=$(echo "$line" | sed 's/.* speed:\([^ ]*\).*/\1/') > + duplex=$(echo "$line" | sed 's/.* \([^ ]*-duplex\).*/\1/') > + else > + speed="no link" > + duplex="" > + fi > + port="Port ${port}" > + echo "${port}: ${link} @ $speed $duplex" > + done > +fi > + > +echo "" > +echo "END" > -- franken-dev mailing list franken-dev@freifunk.net http://lists.freifunk.net/mailman/listinfo/franken-dev-freifunk.net
Hallo, Skript sieht gut aus. Ich finde, es sollte im Pfad sein, z.B /usr/bin/ . Entspricht dann auch dem FHS. Eventuell auch ohne .sh hinten dran. Dann hat es mehr so nen Kommandocharakter. Robert Am 30.07.2017 um 01:02 schrieb mail@adrianschmutzler.de: > Danke. Bitte beim applien noch "similar" und "output" im Titel vertauschen, > damit der Satz Sinn gibt. > > -----Original Message----- > From: franken-dev [mailto:franken-dev-bounces@freifunk.net] On Behalf Of > Dominik Heidler > Sent: Samstag, 29. Juli 2017 17:05 > To: Adrian Schmutzler <freifunk@adrianschmutzler.de>; > franken-dev@freifunk.net > Subject: Re: [PATCH] fff-support: Provide shell script with similar output > to WebUI > >> Hi, >> >> sieht gut aus. >> >> Reviewed-by: Dominik Heidler <dominik@heidler.eu> >> Tested-by: Dominik Heidler <dominik@heidler.eu> >> > Am 29.07.2017 um 12:40 schrieb Adrian Schmutzler: >> Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de> >> >> Tested-by: Adrian Schmutzler <freifunk@adrianschmutzler.de> >> --- >> .../fff/fff-support/files/etc/show_info.sh | 123 > +++++++++++++++++++++ >> 1 file changed, 123 insertions(+) >> create mode 100755 >> src/packages/fff/fff-support/files/etc/show_info.sh >> >> diff --git a/src/packages/fff/fff-support/files/etc/show_info.sh >> b/src/packages/fff/fff-support/files/etc/show_info.sh >> new file mode 100755 >> index 0000000..17fbb9f >> --- /dev/null >> +++ b/src/packages/fff/fff-support/files/etc/show_info.sh >> @@ -0,0 +1,123 @@ >> +#!/bin/sh >> + >> +. /etc/community.cfg >> +. /etc/firmware_release >> + >> +HOSTNAME=$(uci -q get 'system.@system[0].hostname') >> + >> +human_bytes() { >> + while read B ; do >> + [ $B -lt 1024 ] && echo ${B} B && break >> + KB=$(((B+512)/1024)) >> + [ $KB -lt 1024 ] && echo ${KB} KB && break >> + MB=$(((KB+512)/1024)) >> + [ $MB -lt 1024 ] && echo ${MB} MB && break >> + GB=$(((MB+512)/1024)) >> + [ $GB -lt 1024 ] && echo ${GB} GB && break >> + echo $(((GB+512)/1024)) TB >> + done >> +} >> + >> +if pidof fastd >/dev/null ; then >> + vpn_active="aktiv" >> +else >> + vpn_active="inaktiv" >> +fi >> +if grep -q '1' /sys/class/net/l2tp*/carrier 2> /dev/null ; then >> + l2tp_active="aktiv" >> +else >> + l2tp_active="inaktiv" >> +fi >> +up="$(uptime)" >> +load="${up##*:}" >> +uptime="${up%%,*}" >> +uptime="${uptime##*up}" >> + >> +#include OpenWrt version >> +. /etc/openwrt_release >> +. /etc/firmware_release >> + >> +addr() { >> + local addr="$(ip -$1 address show dev $2 2>/dev/null | tr '/' ' '| > awk '/inet/{ printf("%s ", $2); }')" >> + echo "${addr:--}" >> +} >> +default_gw() { >> + ip -$1 route list 0/0 dev $2 2> /dev/null | awk '{print($3); > exit(0)}' >> +} >> +wanif=$(uci -q get network.wan.ifname) if [ -n "$(default_gw 4 >> +$wanif)" -o -n "$(default_gw 6 $wanif)" ]; then >> + internet_active="Ja" >> +else >> + internet_active="Nein" >> +fi >> + >> +echo "" >> +echo "Router configuration overview:" >> + >> +echo "" >> +echo "-> SYSTEM" >> +echo "Name: ${HOSTNAME}" >> +echo "Modell: $(cat /tmp/sysinfo/model 2>/dev/null)" >> +echo "MAC-Adresse: $(cat /sys/class/net/br-mesh/address)" >> +echo "Bekannte Knoten: $((`cat > /sys/kernel/debug/batman_adv/bat0/transtable_global | grep '^ [^ ]' | cut -b > 39-55 | sort | uniq | wc -l 2>/dev/null`+1))" >> +echo "Nachbarknoten: $(cat /sys/kernel/debug/batman_adv/bat0/originators > | grep '^[0-9a-f]' | cut -b 37-53 | sort | uniq | wc -l 2>/dev/null)" >> +echo "VPN via fastd: ${vpn_active}" >> +echo "VPN via L2TP: ${l2tp_active}" >> +echo "Laufzeit: ${uptime}" >> +echo "Auslastung: ${load}" >> +echo "Uhrzeit: $(date)" >> + >> +echo "" >> +echo "-> SOFTWARE" >> +echo "Firmware Version: ${FIRMWARE_VERSION}" >> +echo "LEDE Version: ${DISTRIB_DESCRIPTION}" >> +echo "Kernel Version: $(uname -s -m -r)" >> +echo "Batman-Adv Version: $(cat /sys/module/batman_adv/version > 2>/dev/null)" >> +echo "Fastd Version: $(fastd --version 2> /dev/null | cut -d' ' -f 2)" >> + >> +echo "" >> +echo "-> Netz: FREIFUNK" >> +echo "Nutzer: $(cat /sys/kernel/debug/batman_adv/bat0/transtable_local 2> > /dev/null | grep -c 'W')" >> +echo "Empfangen: $(cat /sys/class/net/br-mesh/statistics/rx_bytes | > human_bytes)" >> +echo "Gesendet: $(cat /sys/class/net/br-mesh/statistics/tx_bytes | > human_bytes)" >> +echo "IPv4 Adressen: $(addr 4 br-mesh)" >> +echo "IPv6 Adressen: $(addr 6 br-mesh)" >> + >> +echo "" >> +echo "-> Netz: WAN" >> +echo "Internet vorhanden: ${internet_active}" >> +echo "Empfangen: $(cat /sys/class/net/${wanif}/statistics/rx_bytes | > human_bytes)" >> +echo "Gesendet: $(cat /sys/class/net/${wanif}/statistics/tx_bytes | > human_bytes)" >> +echo "IPv4 Adressen: $(addr 4 $wanif)" >> +echo "IPv6 Adressen: $(addr 6 $wanif)" >> + >> +echo "" >> +echo "-> EINSTELLUNGEN" >> +echo "Knotenname: ${HOSTNAME}" >> +echo "Knotenbeschreibung: $(uci -q get 'system.@system[0].description')" >> +echo "GPS Breitengrad: $(uci -q get 'system.@system[0].latitude')" >> +echo "GPS Laengengrad: $(uci -q get 'system.@system[0].longitude')" >> +echo "Standortbeschreibung: $(uci -q get > 'system.@system[0].position_comment')" >> +echo "E-Mail Adresse: $(uci -q get 'system.@system[0].contact')" >> + >> +echo "" >> +echo "-> SWITCH" >> +if swconfig list | grep -q switch0 ; then >> + swconfig dev switch0 show | grep "\t*link:" | while read line ; do >> + line=$(echo "$line" | tr -d '\n' | tr -d '\t') >> + port=$(echo "$line" | sed 's/.* port:\([^ ]*\) .*/\1/') >> + link=$(echo "$line" | sed 's/.* link:\([^ ]*\).*/\1/') >> + if [ "$link" == "up" ] ; then >> + speed=$(echo "$line" | sed 's/.* speed:\([^ > ]*\).*/\1/') >> + duplex=$(echo "$line" | sed 's/.* \([^ > ]*-duplex\).*/\1/') >> + else >> + speed="no link" >> + duplex="" >> + fi >> + port="Port ${port}" >> + echo "${port}: ${link} @ $speed $duplex" >> + done >> +fi >> + >> +echo "" >> +echo "END" >> > -- > franken-dev mailing list > franken-dev@freifunk.net > http://lists.freifunk.net/mailman/listinfo/franken-dev-freifunk.net >
Find ich auch gut, habe ne v2 gebaut. Unterschied ist nur der Dateiname. -----Original Message----- From: franken-dev [mailto:franken-dev-bounces@freifunk.net] On Behalf Of robert Sent: Sonntag, 30. Juli 2017 11:13 To: franken-dev@freifunk.net Subject: Re: [PATCH] fff-support: Provide shell script with similar output to WebUI Hallo, Skript sieht gut aus. Ich finde, es sollte im Pfad sein, z.B /usr/bin/ . Entspricht dann auch dem FHS. Eventuell auch ohne .sh hinten dran. Dann hat es mehr so nen Kommandocharakter. Robert Am 30.07.2017 um 01:02 schrieb mail@adrianschmutzler.de: > Danke. Bitte beim applien noch "similar" und "output" im Titel > vertauschen, damit der Satz Sinn gibt. > > -----Original Message----- > From: franken-dev [mailto:franken-dev-bounces@freifunk.net] On Behalf > Of Dominik Heidler > Sent: Samstag, 29. Juli 2017 17:05 > To: Adrian Schmutzler <freifunk@adrianschmutzler.de>; > franken-dev@freifunk.net > Subject: Re: [PATCH] fff-support: Provide shell script with similar > output to WebUI > >> Hi, >> >> sieht gut aus. >> >> Reviewed-by: Dominik Heidler <dominik@heidler.eu> >> Tested-by: Dominik Heidler <dominik@heidler.eu> >> > Am 29.07.2017 um 12:40 schrieb Adrian Schmutzler: >> Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de> >> >> Tested-by: Adrian Schmutzler <freifunk@adrianschmutzler.de> >> --- >> .../fff/fff-support/files/etc/show_info.sh | 123 > +++++++++++++++++++++ >> 1 file changed, 123 insertions(+) >> create mode 100755 >> src/packages/fff/fff-support/files/etc/show_info.sh >> >> diff --git a/src/packages/fff/fff-support/files/etc/show_info.sh >> b/src/packages/fff/fff-support/files/etc/show_info.sh >> new file mode 100755 >> index 0000000..17fbb9f >> --- /dev/null >> +++ b/src/packages/fff/fff-support/files/etc/show_info.sh >> @@ -0,0 +1,123 @@ >> +#!/bin/sh >> + >> +. /etc/community.cfg >> +. /etc/firmware_release >> + >> +HOSTNAME=$(uci -q get 'system.@system[0].hostname') >> + >> +human_bytes() { >> + while read B ; do >> + [ $B -lt 1024 ] && echo ${B} B && break >> + KB=$(((B+512)/1024)) >> + [ $KB -lt 1024 ] && echo ${KB} KB && break >> + MB=$(((KB+512)/1024)) >> + [ $MB -lt 1024 ] && echo ${MB} MB && break >> + GB=$(((MB+512)/1024)) >> + [ $GB -lt 1024 ] && echo ${GB} GB && break >> + echo $(((GB+512)/1024)) TB >> + done >> +} >> + >> +if pidof fastd >/dev/null ; then >> + vpn_active="aktiv" >> +else >> + vpn_active="inaktiv" >> +fi >> +if grep -q '1' /sys/class/net/l2tp*/carrier 2> /dev/null ; then >> + l2tp_active="aktiv" >> +else >> + l2tp_active="inaktiv" >> +fi >> +up="$(uptime)" >> +load="${up##*:}" >> +uptime="${up%%,*}" >> +uptime="${uptime##*up}" >> + >> +#include OpenWrt version >> +. /etc/openwrt_release >> +. /etc/firmware_release >> + >> +addr() { >> + local addr="$(ip -$1 address show dev $2 2>/dev/null | tr '/' ' '| > awk '/inet/{ printf("%s ", $2); }')" >> + echo "${addr:--}" >> +} >> +default_gw() { >> + ip -$1 route list 0/0 dev $2 2> /dev/null | awk '{print($3); > exit(0)}' >> +} >> +wanif=$(uci -q get network.wan.ifname) if [ -n "$(default_gw 4 >> +$wanif)" -o -n "$(default_gw 6 $wanif)" ]; then >> + internet_active="Ja" >> +else >> + internet_active="Nein" >> +fi >> + >> +echo "" >> +echo "Router configuration overview:" >> + >> +echo "" >> +echo "-> SYSTEM" >> +echo "Name: ${HOSTNAME}" >> +echo "Modell: $(cat /tmp/sysinfo/model 2>/dev/null)" >> +echo "MAC-Adresse: $(cat /sys/class/net/br-mesh/address)" >> +echo "Bekannte Knoten: $((`cat > /sys/kernel/debug/batman_adv/bat0/transtable_global | grep '^ [^ ]' | > cut -b > 39-55 | sort | uniq | wc -l 2>/dev/null`+1))" >> +echo "Nachbarknoten: $(cat >> +/sys/kernel/debug/batman_adv/bat0/originators > | grep '^[0-9a-f]' | cut -b 37-53 | sort | uniq | wc -l 2>/dev/null)" >> +echo "VPN via fastd: ${vpn_active}" >> +echo "VPN via L2TP: ${l2tp_active}" >> +echo "Laufzeit: ${uptime}" >> +echo "Auslastung: ${load}" >> +echo "Uhrzeit: $(date)" >> + >> +echo "" >> +echo "-> SOFTWARE" >> +echo "Firmware Version: ${FIRMWARE_VERSION}" >> +echo "LEDE Version: ${DISTRIB_DESCRIPTION}" >> +echo "Kernel Version: $(uname -s -m -r)" >> +echo "Batman-Adv Version: $(cat /sys/module/batman_adv/version > 2>/dev/null)" >> +echo "Fastd Version: $(fastd --version 2> /dev/null | cut -d' ' -f 2)" >> + >> +echo "" >> +echo "-> Netz: FREIFUNK" >> +echo "Nutzer: $(cat >> +/sys/kernel/debug/batman_adv/bat0/transtable_local 2> > /dev/null | grep -c 'W')" >> +echo "Empfangen: $(cat /sys/class/net/br-mesh/statistics/rx_bytes | > human_bytes)" >> +echo "Gesendet: $(cat /sys/class/net/br-mesh/statistics/tx_bytes | > human_bytes)" >> +echo "IPv4 Adressen: $(addr 4 br-mesh)" >> +echo "IPv6 Adressen: $(addr 6 br-mesh)" >> + >> +echo "" >> +echo "-> Netz: WAN" >> +echo "Internet vorhanden: ${internet_active}" >> +echo "Empfangen: $(cat /sys/class/net/${wanif}/statistics/rx_bytes | > human_bytes)" >> +echo "Gesendet: $(cat /sys/class/net/${wanif}/statistics/tx_bytes | > human_bytes)" >> +echo "IPv4 Adressen: $(addr 4 $wanif)" >> +echo "IPv6 Adressen: $(addr 6 $wanif)" >> + >> +echo "" >> +echo "-> EINSTELLUNGEN" >> +echo "Knotenname: ${HOSTNAME}" >> +echo "Knotenbeschreibung: $(uci -q get 'system.@system[0].description')" >> +echo "GPS Breitengrad: $(uci -q get 'system.@system[0].latitude')" >> +echo "GPS Laengengrad: $(uci -q get 'system.@system[0].longitude')" >> +echo "Standortbeschreibung: $(uci -q get > 'system.@system[0].position_comment')" >> +echo "E-Mail Adresse: $(uci -q get 'system.@system[0].contact')" >> + >> +echo "" >> +echo "-> SWITCH" >> +if swconfig list | grep -q switch0 ; then >> + swconfig dev switch0 show | grep "\t*link:" | while read line ; do >> + line=$(echo "$line" | tr -d '\n' | tr -d '\t') >> + port=$(echo "$line" | sed 's/.* port:\([^ ]*\) .*/\1/') >> + link=$(echo "$line" | sed 's/.* link:\([^ ]*\).*/\1/') >> + if [ "$link" == "up" ] ; then >> + speed=$(echo "$line" | sed 's/.* speed:\([^ > ]*\).*/\1/') >> + duplex=$(echo "$line" | sed 's/.* \([^ > ]*-duplex\).*/\1/') >> + else >> + speed="no link" >> + duplex="" >> + fi >> + port="Port ${port}" >> + echo "${port}: ${link} @ $speed $duplex" >> + done >> +fi >> + >> +echo "" >> +echo "END" >> > -- > franken-dev mailing list > franken-dev@freifunk.net > http://lists.freifunk.net/mailman/listinfo/franken-dev-freifunk.net > -- franken-dev mailing list franken-dev@freifunk.net http://lists.freifunk.net/mailman/listinfo/franken-dev-freifunk.net