Ich will ein Guru werden ;-) WAS: SUSE 8.2 Einwahlskript
Am Mittwoch, 28. April 2004 05:45 schrieb fjaussi@gmx.net:
Ich verwende dazu folgendes Script, habe es selber von nem Bekannten bekommen.
#! /bin/bash # /sbin/adsl-forever while [ 1 ]; do if ! $(ifconfig | grep -q ^ppp0); then killall -q pppd killall -q pptp sleep 2 killall -q -9 pppd killall -q -9 pptp ifconfig ppp0 down &> /dev/null cinternet -i dsl0 -A -D
Mal sehen, ob ich das checke ;-) Wenn ppp0 nicht gefunden wird (if !), werden alle Dämonen zum Verbinden ins Netz gestoppt und dann wird eben neu aufgebaut. Hm, richtig? Was beteutet eigentlich while [ 1 ] ? Und warum eigentlich grep -q ^ppp0, was sucht dann dort das ^ ? Und was beteutet &> /dev/null ? Gibt's eigentlich Literatur, mit der man sowas lernen kann? Nicht nur Shell-Scripte, eher ein Buch, dass einem zum Guru züchtet, der allgemein von Linux gute kenntnisse hat und auch schwerere Admin-Aufgaben lösen kann?
Patrick Dahl wrote:
Am Mittwoch, 28. April 2004 05:45 schrieb fjaussi@gmx.net:
Ich verwende dazu folgendes Script, habe es selber von nem Bekannten bekommen.
#! /bin/bash # /sbin/adsl-forever while [ 1 ]; do if ! $(ifconfig | grep -q ^ppp0); then killall -q pppd killall -q pptp sleep 2 killall -q -9 pppd killall -q -9 pptp ifconfig ppp0 down &> /dev/null cinternet -i dsl0 -A -D
Mal sehen, ob ich das checke ;-) Wenn ppp0 nicht gefunden wird (if !), werden alle Dämonen zum Verbinden ins Netz gestoppt und dann wird eben neu aufgebaut. Hm, richtig?
Was beteutet eigentlich while [ 1 ] ?
Das ist eine Endlosschleife. Es soll ja stetig auf eine Verbindung gewartet werden.
Und warum eigentlich grep -q ^ppp0, was sucht dann dort das ^ ?
Das ist Regex (Regular Expression). Mit ^ am Beginn des Ausdrucks wird nur das auch gefunden, wenn es auch am Anfang steht.
Und was beteutet &> /dev/null ?
device null: Der Mülleimer, also alles weg!
Gibt's eigentlich Literatur, mit der man sowas lernen kann? Nicht nur Shell-Scripte, eher ein Buch, dass einem zum Guru züchtet, der allgemein von Linux gute kenntnisse hat und auch schwerere Admin-Aufgaben lösen kann?
Manpages lesen. Wenn Dir das noch schwer fällt: Es gibt auch deutsche Man (nicht vollständig). Wo bekommt man die? Das wäre dann mein zweiter Tip: Google und MailingListe mitlesen! Mein Buchtip: Linux-Programmierung mitp-Verlag ISBN 3-8266-0569-1 Aus http://de.wikipedia.org/wiki/Guru: <zitat>Der Ausdruck Guru (Hindi </wiki/Hindi> und Sanskrit </wiki/Sanskrit> guru Lehrer; eigtl. aksharas </w/wiki.phtml?title=Aksharas&action=edit> "gu" Finsternis; "ru" entfernen) bezeichnet jemanden, der die Finsternis (Unwissenheit) des Geistes (des Menschen) beseitigt.</zitat> Also ein löblicher Vorsatz! Grusz Mathias -- Lieber lachende Pinguine als tanzende Büroklammern! CU in www.meeloon.de --
Am Samstag, 1. Mai 2004 10:35 schrieb Mathias Uebel:
Aus http://de.wikipedia.org/wiki/Guru: <zitat>Der Ausdruck Guru (Hindi </wiki/Hindi> und Sanskrit </wiki/Sanskrit> guru Lehrer; eigtl. aksharas </w/wiki.phtml?title=Aksharas&action=edit> "gu" Finsternis; "ru" entfernen) bezeichnet jemanden, der die Finsternis (Unwissenheit) des Geistes (des Menschen) beseitigt.</zitat>
Also ein löblicher Vorsatz!
Ok, danke, danke ;-) Da sind aber noch zwei Dinge, die ich nicht checken will. 1. ist auch in der Manual nicht dokumentiert:
killall -q -9 pppd und zwar die '-9'...
2. Der Befehl (die Funktion?)
sleep 2 (vllt kurz (zwei Sekunden?) pennen oder inne halten, oder so? ehm, na ja, wohl eher unwahrscheinlich ;-) )
-- mailto: foxmulder38@gmx.de / mafiasalvadore@yahoo.de jabber: johnbecker@jabber.ccc.de mail-client: kmail 1.5.3 (text/plain)
Patrick Dahl, Samstag, 1. Mai 2004 13:38:
Am Samstag, 1. Mai 2004 10:35 schrieb Mathias Uebel:
Aus http://de.wikipedia.org/wiki/Guru: <zitat>Der Ausdruck Guru (Hindi </wiki/Hindi> und Sanskrit </wiki/Sanskrit> guru Lehrer; eigtl. aksharas </w/wiki.phtml?title=Aksharas&action=edit> "gu" Finsternis; "ru" entfernen) bezeichnet jemanden, der die Finsternis (Unwissenheit) des Geistes (des Menschen) beseitigt.</zitat>
Also ein löblicher Vorsatz!
Ok, danke, danke ;-)
Da sind aber noch zwei Dinge, die ich nicht checken will.
1. ist auch in der Manual nicht dokumentiert:
killall -q -9 pppd
und zwar die '-9'...
Mit dem ersten 'killall' soll versucht werden, alle pppd-Prozesse normal zu beenden (Standardwert ist das Signal 15 (SIGTERM)). Da das in seltenen Fällen nicht klappt, wird in diesem Script der gleiche Befehl noch einmal wiederholt, jetzt allerdings mit dem Signal 9 (SIGKILL), was den Prozess "abwürgt" (vgl. man SIGNAL).
2. Der Befehl (die Funktion?)
sleep 2 (vllt kurz (zwei Sekunden?) pennen oder inne halten, oder so?
ehm, na ja, wohl eher unwahrscheinlich ;-) )
man sleep? -- Gruß MaxX 8-) Hinweis 1: PMs an diese Adresse werden automatisch vernichtet. Hinweis 2: Bitte unbedingt beachten: http://www.suse-etikette.de.vu
Hallo Patrick, hallo Mathias, hallo Leute, Am Samstag, 1. Mai 2004 13:38 schrieb Patrick Dahl: [...]
Da sind aber noch zwei Dinge, die ich nicht checken will.
1. ist auch in der Manual nicht dokumentiert:
killall -q -9 pppd
und zwar die '-9'...
Das ist ein "gnadenloser" kill. Bei einem "normalen" kill, wird das Programm erst benachricht, es kann sich dann ordentlich beenden. kill -9 schießt das Programm ohne Wenn und Aber ab und gibt ihm auch keine Chance, hinter sich aufzuräumen. Eine Auflistung der verschiedenen Signale findet sich unter man 7 signal
2. Der Befehl (die Funktion?)
sleep 2 (vllt kurz (zwei Sekunden?) pennen oder inne halten, oder so?
ehm, na ja, wohl eher unwahrscheinlich ;-) )
Doch, sleep ist eine Pause. Das Script wartet 2 Sekunden, bevor es den nächsten Befehl ausführt. Gruß Christian Boltz --
Genaugenommen kann es DAUs (also Mehrzahl) gar nicht geben ;-) Stimmt. Aber die werden ja gezuechtet, es gibt staendig einen neuen DAU, ergo hat man den aktuellen DAU und die nicht ganz aktuellen... [> Manfred Tremmel und David Haller in suse-linux]
Christian Boltz, Samstag, 1. Mai 2004 22:53:
Hallo Patrick, hallo Mathias, hallo Leute,
Am Samstag, 1. Mai 2004 13:38 schrieb Patrick Dahl: [...]
Da sind aber noch zwei Dinge, die ich nicht checken will.
1. ist auch in der Manual nicht dokumentiert:
killall -q -9 pppd
und zwar die '-9'...
Das ist ein "gnadenloser" kill.
Bei einem "normalen" kill, wird das Programm erst benachricht, es kann sich dann ordentlich beenden.
kill -9 schießt das Programm ohne Wenn und Aber ab und gibt ihm auch keine Chance, hinter sich aufzuräumen.
Jain. Auch kill[all] -9 sendet einen Befehl zum Beenden an das entsprechende Programm. Das macht kill[all] [-15] auch. Im Gegensatz zum "normalen" Kill hat das Programm nur keine Möglichkeit, diesen Prozess zu unterbrechen, um evtl. die eigene Routine zum Beenden abzuspulen. Deshalb sollte IMHO auch danach noch /etc/run aufgeräumt werden. -- Gruß MaxX 8-) Hinweis 1: PMs an diese Adresse werden automatisch vernichtet. Hinweis 2: Bitte unbedingt beachten: http://www.suse-etikette.de.vu
Hallo, On 01-May-2004 Patrick Dahl wrote:
Gibt's eigentlich Literatur, mit der man sowas lernen kann? Nicht nur Shell-Scripte, eher ein Buch, dass einem zum Guru züchtet, der allgemein von Linux gute kenntnisse hat und auch schwerere Admin-Aufgaben lösen kann?
Irgendeine Einfuehrung in Linux, damit man erst einmal eine Grundlage hat. Dass muss keineswegs das aktuellste Buch sein. Schau einfach mal bei www.terrashop.de oder www.smm.de nach, was es da guenstig abzustauben gibt. Achte nur darauf, dass kein Schwergewicht auf KDE und Co. gelegt wird, weil das in diesem Zusammenhang ueberfluessig ist. Und dann einfach immer manpages, Howtos, FAQs, Readmes und was es so gibt lesen, anstatt gleich in der Liste zu fragen. Selbst wenn du erst einmal 90 Prozent nicht verstehst, heisst das andersherum eben auch, dass du bereits 10 Prozent verstanden hast. Und dann ist natuerlich die Liste nicht zu vergessen. Ruhig auch Themen lesen, die du aktuell eigentlich nicht brauchst. Auch aus diesen Threads kannst man viel lernen, weil man einfach seinen Horizont erweitert. Last but not least hilft es, Probleme selbst anzugehen. GGfs. vorher ein zusaetzliches Backup machen. Veraenderungen in irgendwelchen Konfigurationsdateien kommentierst du natuerlich, damit du sie auch noch in drei Monaten rueckgaengig machen kannst. Dazu ist es sinnvoll, alle Aenderungen in Konfigurationsdateien gruendsaetzlich mit einem einheitlichen Stichwort zu kennzeichnen, damit du die Stellen spaeter auch wirklich finden kannst. Bei mir steht da z.B. immer "hinzugefuegt" oder "geaendert", damit ich die Stellen mit find und grep schnell wiederfinden kann. Dass ist das, was mir so auf die Schnelle einfaellt. Beste Gruesse, Heinz. -- http://www.pahlke-online.de/reisenews/ http://www.Pahlke-KunstWebDesign.de/
participants (5)
-
Christian Boltz
-
Heinz W. Pahlke
-
Mathias Uebel
-
Matthias Houdek
-
Patrick Dahl