svxlink log Buch als Web Seite

  • Hallo und hier ein kleine Änderung svxlink log Buch als Webseite ansehen aktualisiert sich von alleine alle 60 Sekunden :


    * APT Update/Upgrade
    sudo apt-get update
    sudo apt-get upgrade



    * Terminal
    sudo vi /etc/profile.d/term.sh
    export TERM=linux



    * Neuer APT paketen


    sudo apt-get install hwinfo pciutils rcconf sysstat sysv-rc-conf
    sudo apt-get install screen
    sudo apt-get install bash
    sudo apt-get install less
    sudo apt-get install bzip2 htop lsof lshw strace
    sudo apt-get install wget curl



    * ich als user noch da zu
    sudo /usr/sbin/useradd -s /bin/bash -c "www.user.de" -G audio -m name
    sudo passwd name



    * Ich als SUDO
    sudo vi sudo


    # User privilege specification
    name ALL=(ALL) ALL
    root ALL=(ALL:ALL) ALL




    * svxlink usera
    sudo /usr/sbin/useradd -s /bin/false -c "Svxlink" -G audio svxlink



    * kopie erstellen
    sudo mv /etc/init.d/svxlink /etc/svxlink/backup_orig/etc_init.d_svxlink_orig



    * und neuer file
    sudo vi /etc/init.d/svxlink


    #!/bin/bash
    #set -x
    ### BEGIN INIT INFO
    # Provides: svxlink
    # Required-Start: $network $local_fs $syslog $ntp
    # Required-Stop:
    # Default-Start: 2 3 4 5
    # Default-Stop: 0 1 6
    # Short-Description: Start SvxLink Server daemon
    ### END INIT INFO


    PROG="svxlink"
    PRG_PATH="/usr/bin"
    LOGFILE="/var/log/$PROG"
    PIDFILE=/var/run/$PROG
    USER=root


    . /lib/lsb/init-functions


    POPTS="--daemon ${LOGFILE:+--logfile=$LOGFILE} ${CFGFILE:+--config=$CFGFILE} --runasuser=$USER"


    start() {
    echo -n $"Starting $PROG : "
    touch $LOGFILE
    $PRG_PATH/$PROG $POPTS --pidfile $PIDFILE
    echo "OK"
    }



    stop() {
    echo -n $"Shutting down $PROG: "
    if [ -e $PIDFILE ]; then
    kill -TERM `cat $PIDFILE`
    fi
    echo "OK"
    rm -f $PIDFILE
    }



    # See how we were called.
    case "$1" in
    start)
    start
    ;;
    stop)
    stop
    ;;
    status)
    status_of_proc $PROG "Svxlink server"
    # status $PROG
    # RETVAL=$?
    ;;
    restart|reload)
    stop
    start
    RETVAL=$?
    ;;
    condrestart)
    if [ -f /var/run/$PROG ]; then
    stop
    start
    RETVAL=$?
    fi
    ;;
    *)
    echo $"Usage: $0 {start|stop|restart|condrestart|status}"
    exit 1
    esac


    exit $RETVAL



    * ausführbar gemacht
    sudo chmod 755 /etc/init.d/svxlink
    sudo chown root:root /etc/init.d/svxlink



    * log rotate alle 24h
    sudo vi /etc/logrotate.d/svxlink


    /var/log/svxlink {
    missingok
    notifempty
    daily
    rotate 7
    create 0644 svxlink daemon
    compress
    delaycompress
    postrotate
    killall -HUP svxlink
    endscript
    }



    * und svxlink bei booten hochladen
    sudo update-rc.d svxlink defaults



    *Start svxlink aus rc.local gelöscht
    sudo vi /etc/rc.local


    #Starte SvxLink
    #sleep 10
    #svxlink --daemon
    #sleep 5
    #echo "SvxLink +++++++++++++++"




    * cleen cached APT paketen
    sudo apt-get clean




    * Web server installiren
    sudo apt-get install apache2


    sudo mkdir -p /var/www/dh1aa/r_un
    sudo vi /var/www/dh1aa/r_un/svxlink_log.cgi


    #!/bin/bash
    echo ""
    echo '<html>'
    echo '<head>'
    echo '<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">'
    echo '<title>DH1AA</title>'
    echo '<meta http-equiv="refresh" content="60">'
    echo '</head>'
    echo ""
    echo '<body>'


    echo "<pre>"
    tac /var/log/svxlink |grep CONNECTED -A 1 |grep -v BYE_RECEIVED


    echo "</pre>"
    echo '</body>'
    echo '</html>'


    exit 0


    * ausführbar gemacht
    sudo chmod +x /var/www/dh1aa/r_un/svxlink_log.cgi



    * Podesavanje APache config file
    sudo vi /etc/apache2/sites-available/default


    ScriptAlias /r_un/ /var/www/dh1aa/r_un/
    <Directory "/usr/lib/cgi-bin">
    AllowOverride None
    Options +ExecCGI -MultiViews +SymLinksIfOwnerMatch
    Order allow,deny
    Allow from all
    </Directory>


    Reboot dann log einsehen auf browser ip adresse rasspberry Pi/r_un/svxlink_log.cgi


    Oder nur ip adresse dan aber index.html bearbeiten und svxlink_log.cgi integriren mit QSL karte info etc chat programm oder oder ...


    73 dzevad dh1aa/e74dd

  • Hallo Dzevad,


    hast Du vielleicht einen Link, wo man sich das direkt mal anschauen kann?
    Klingt nämlich wirklich interessant...


    vy73 de Wilm,
    DL4OCH

  • Hallo
    jetzt geht es nicht mehr.



    Mit Wechsel von Image auf das neuer Jesi habe ich die rechte verloren für die cgi Datei hat einer den passende Tipp ?
    Der User von Apache www-data hat nicht die passende rechte normale html Seite klappt aber die script nicht.
    Bin ratlos.
    73 de dzevad dh1aa

  • Ich hab mir selbst was gebastelt und das sieht so aus

    DL3SS Link


    Übrigends sollte man das Logfile nicht zu lang werden lassen. Ich lasse daher jede Nacht einmal folgendes Script über Crontab ausführen:

    Bash
    #!/bin/sh
    tail -n 100000 /tmp/svxlink.txt > /tmp/svxlink-tmp.txt
    sleep 10
    cp /tmp/svxlink-tmp.txt /tmp/svxlink.txt

    Jetzt wird das Logfile in /tmp/svxlink.txt nach jeden Aufruf auf die letzten 100000 Zeilen gekürzt.


    73!

    Sylvia

  • Inspiriert von Dzevads-Starter habe ich etwas für Linux-Minimalisten. Da ich mein Logfile nur 1x wöchentlich rotieren lasse, dauert mir das Einlesen und bearbeiten zu lange. Deutlich schneller geht mit folgendem Bash-Script:


    Bash
    #!/bin/bash
    datei=/tmp/svx_log.tmp
    cat /var/log/svxlink |grep "CONNECTED" |grep -v "BYE_RECEIVED" <$datei
    while read line; do
    status=$(echo $line | awk '{print $NF}')
    stn=$(echo $line | cut -d":" -f1-4)
    echo $stn $status
    done <$datei