Weiter Zurück Inhalt

## 4. Datein im Verzeichniss vom Admin-user

Die Dateien die beim Admin-User im Verzeichniss liegen sind groessten Teils nur Vereinfachungen.

Also ich habe folgende Dateien ins Verzeichniss gelinkt.

    cd /home/fido
    ln -s /usr/local/lib/fidogate/areas.bbs
    ln -s /usr/local/lib/fidogate/fareas.bbs
    ln -s /usr/local/lib/fidogate/packing
    ln -s /usr/local/lib/fidogate/passwd
    ln -s /usr/local/lib/fidogate/routing
    ln -s /usr/local/lib/fidogate/ftn2rfc
    ln -s /usr/local/lib/fidogate/ftnaf
    ln -s /usr/local/lib/fidogate/ftnfattach
    ln -s /usr/local/lib/fidogate/ftnhatch
    ln -s /usr/local/lib/fidogate/ftntick
    ln -s /usr/local/lib/fidogate/rfc2ftn
    ln -s /usr/local/lib/fidogate/runin

    ln -s /etc/ifcico/config
    ln -s /etc/ifcico/passworts
    ln -s /usr/local/bin/ifcico/ifcico
    ln -s /usr/local/bin/ifcico/ifindex
    ln -s /usr/local/bin/ifcico/ifstat

Um bei meinem Hub meine Mails zu holen verwende ich das Skript `ifmail/misc/contrib/ifpoll` in STARK gekuerzter Fassung. Es liegt in beim admin-user im Verzeichniss und wird per CRON um 04:50 ausgefuehrt. (Gekuerzt habe ich es deshalb weil die Ausgaben in `/fido/log/ifdebug` bzw auf `tty7` voellig ausreichend sind.)

    #!/bin/sh
    #
    # /home/fido/ifpollhub
    #
    # gekuerzte Fassung von Matthias Schniedermeyer
    #
    # fuer Cry in the Darkness
    #

    # how often should i try to call NODE?
    MaxTry=20

    Node="f602.n2432.z2"

    # delay between outgoing calls in seconds
    DELAY=60

    # loop until ifcico could connect the node or MaxTry is encountered
    #
    i=1; errlv=1
    while let 'i <= MaxTry' && let 'errlv != 0'
    do
            #
            # start ifcico in master mode ..
            #
            ~/ifcico -r 1 $Node
            errlv=$?
            if [ $errlv != "0" ]; then
                    if [ $i != $MaxTry ]; then
                            sleep $DELAY
                    fi
                    let i=i+1
            fi
    done

Von diesem Script habe ich noch eine 2 Fassung.

    #!/bin/sh
    #
    # /home/fido/ifpollhub2
    #
    # gekuerzte Fassung von Matthias Schniedermeyer
    #
    # fuer Cry in the Darkness
    #

    if [ -f /var/spool/fnet/outbound/00000005.* ]; then

      # how often should i try to call NODE?
      MaxTry=20

      Node="f602.n2432.z2"

      # delay between outgoing calls in seconds
      DELAY=60

      # loop until ifcico could connect the node or MaxTry is encountered
      #
      i=1; errlv=1
      while let 'i <= MaxTry' && let 'errlv != 0'
      do
              #
              # start ifcico in master mode ..
              #
              ~/ifcico -r 1 $NODE
              errlv=$?
              if [ $errlv != "0" ]; then
                      if [ $i != $MaxTry ]; then
                              sleep $DELAY
                      fi
                      let i=i+1
              fi
      done

    fi

Dies Script liegt auch beim admin-user im Verzeichniss und wird per CRON um 00:00 aufgerufen und pollt nur dann beim Hub wenn auch wirklich ein Packet fuer ihn vorhanden ist. (Um den richtigen Dateinamen herrauszubekommen muss man aber warten bis ein Packet fuer den "Chef" im outbound liegt und sich den Dateinamen merken. Es ist naemlich IMMER der gleiche. (Mit Aussnahme der Extension, die ist Wochentags abhaengig))

Jetzt muessen aber auch Packete die von Points hochgeladen wurden eingetosst werden. Dafuer habe ich folgendes Script geschrieben das auch beim admin-user im Verzeichniss liegt und per CRON alle 5 Minuten aufgerufen wird.

    #!/bin/sh
    #--------------------------------------------
    ls /var/spool/fnet/in/*.mo* &>/dev/null && ~/runin
    ls /var/spool/fnet/in/*.tu* &>/dev/null && ~/runin
    ls /var/spool/fnet/in/*.we* &>/dev/null && ~/runin
    ls /var/spool/fnet/in/*.th* &>/dev/null && ~/runin
    ls /var/spool/fnet/in/*.fr* &>/dev/null && ~/runin
    ls /var/spool/fnet/in/*.sa* &>/dev/null && ~/runin
    ls /var/spool/fnet/in/*.su* &>/dev/null && ~/runin
    ls /var/spool/fnet/in/*.pkt &>/dev/null && ~/runin

    ls /var/spool/fnet/in/*.MO* &>/dev/null && ~/runin
    ls /var/spool/fnet/in/*.TU* &>/dev/null && ~/runin
    ls /var/spool/fnet/in/*.WE* &>/dev/null && ~/runin
    ls /var/spool/fnet/in/*.TH* &>/dev/null && ~/runin
    ls /var/spool/fnet/in/*.FR* &>/dev/null && ~/runin
    ls /var/spool/fnet/in/*.SA* &>/dev/null && ~/runin
    ls /var/spool/fnet/in/*.SU* &>/dev/null && ~/runin
    ls /var/spool/fnet/in/*.PKT &>/dev/null && ~/runin
    #-------------------------------------------------

    # Ticker -------------------------------------------
    ls /var/spool/fnet/in/*.tic &>/dev/null && ~/ftntick
    #---------------------------------------------------

    #E-Mail -----------------------------------------------------
    if [ -f /fido/fnet/outbound/0980025d.pnt/00000063.hut ]; then
        ~/ftnin
        ~/ftninpost
    fi
    #------------------------------------------------------------

    #-----------------------------------------------------------------
    if [ -f /var/spool/fnet/outbound/0980025d.pnt/00000062.hut ]; then
        ./areafix.pl
        runin
    fi
    #-----------------------------------------------------------------

Dies Script ist jetzt aber starker Tobac als werde ich versuche es zu erklaeren.

Im ersten Abschnitt wird geprueft ob ein Packet im inbound liegt und wenn ja dann wird `runin` gestarted. (runin entpackt die Packete und started dann den tosser.)

Der zweite Abschnitt prueft ob Tic-Files vorhanden sind und started gegebenfalls den File-ticker.

Der dritte Abschnitt sorgt dafuer das NMs an den Gateway-Point ins Internet verschickt werden.

Der vierte Abschnitt ruft meinen Areafix auf. (Einen Filefix fuer File-Areas habe ich noch nicht fertig, wird aber noch kommen.)

So das wars was bei meinem Admin-User im Verzeichniss liegt.

Weiter Zurück Inhalt