Online.sh

Aus Linupedia.org
Version vom 10. Juni 2019, 10:23 Uhr von Itu (Diskussion | Beiträge) (siehe disk , sowieso nur einmal benutzt - bräuchte keine variable sein. .... und obsolete reste sollte man immer rasch rausschmeissen, die vermiesen die erfassbarkeit)
(Unterschied) ← Nächstältere Version | Aktuelle Version (Unterschied) | Nächstjüngere Version → (Unterschied)
Wechseln zu: Navigation, Suche

Dies Script ist mal im Forum entstanden, damit es nicht verlorengeht stelle ich es hier mal ein. Das ganze muss über einen CronJob laufen. Dieser wird so eingestellt, dass das Script alle 5 Minuten ausgeführt wird, und so eine permanenten Verbindung zum Internet herstellt. Da man alle 24 Stunden der Provider eine Zwangstrennung vornimmt, ist man so maximal einmal am Tag für max. 5 Minuten nicht Online.

Der CronJob lässt sich am einfachsten über KCron einstellen.

Diese Beschreibung wurde mit folgenden Distributionen getestet:


#!/bin/sh
#
# Quelle : https://linux-club.de/wiki/opensuse/Online.sh
# 
#######################################################
# VARIABLEN
#######################################################

datei=~/log/internetstatus.log
pingtarget=8.8.8.8    # google nameserver vermutlich lange existent und pingbar 
count=3

#######################################################
# Wiedereinwählen bei ping-fail
####################################################### 

/bin/ping -c $count -w 20 $pingtarget > /dev/null 2>&1  # eventuell -w auch als Variable
retc=$?
if [ $retc -eq 0 ]   # ping hat Kontakt
then
  echo "Wir sind online" >> $datei    # Umleitung, da sonst mail
elif [ $retc -eq 1 ]             # ping hat keinen Kontakt
then
  echo `date -R` Neueinwahl >> $datei
  cinternet -i dsl0 -H
  cinternet -i dsl0 -O
  sleep 30
  cinternet -i dsl0 -A
  cinternet -i dsl0 -D
  cinternet -i dsl0 -s
  cinternet -i dsl0 -l
  echo `date -R` Eingewählt >> $datei
else   # ping hat harten Fehler
  echo "Konnte ping nicht ausführen. Fehler $retc!" >> $datei
fi


Quellen und weiterführende Links