Oft werden ja kleine Funktionen gebraucht, mit welchen man irgendeine Aufgabe schnell lösen kann. Für solche „Kleinigkeiten“ lohnt es sich meistens nicht, ein extra Programm zu schreiben und eine schöne GUI zu designen. Oder wenn man jeden Tag bestimmte Daten von seinem Computer auf einen Server backupen möchte, kann man das auch einfach mit einem Script lösen, welches man über einen Cronjob einmal am Tag ausführen lässt. In dem Artikel zeige ich euch, wie ihr ganz einfach ein eigenes Bash Script in Linux schreiben könnt und wie ihr dieses startet.
Linux
Cronjobs unter Linux
Der ein oder andere wird wahrscheinlich nicht genau wissen, was Cronjobs sind und wofür man diese nutzen kann. Ein Cronjob ist dazu da, um wiederkehrende Aufgaben zu einem bestimmten Zeitpunkt auszuführen. Das kann einem z. B. beim Backupen zu Gute kommen, denn hier möchte man ja nicht jedes Mal das Backup von Hand starten, sondern es soll automatisiert jeden Tag eine Sicherung erstellt werden. In diesem Artikel zeige ich euch, wie ihr selbstständig unter Linux Cronjobs anlegen und verwalten könnt.
Backup Strategien
Über das Thema Backupen bzw. darüber, mit welchen Programmen man ein Backup machen kann, habe ich hier bereits geschrieben. Hier hatte ich die Programme XXCopy und Robocopy vorgestellt. Bei diesen Programmvorstellungen bin ich aber nicht auf die Backupstrategien eingegangen. Das möchte ich mit diesem Artikel nachholen.
Sicherheit: SSH-Benutzer-Identitäten
Ich selbst bin eine Person, die täglich mehrmals das SSH-Protokoll benutzt. Ob unter Linux mit dem openssh-Paket oder unter Windows mit PuTTY oder anderen Programmen. SSH (was übrigens für secure shell steht) ist verschlüsselt und damit sicher und telnet und ähnlichen Protokollen, die Benutzernamen, Passwörter und sogar den ganzen Inhalt unveschlüsselt übertragen, vorzuziehen. Nun ist es ein universelles Gesetz der Sicherheit, dass eine Kette nur so stark ist wie ihr schwächstes Glied – und das ist meistens der Benutzer. Dieser Artikel erfordert ein wenig Wissen im Umgang mit Linux, jedoch nicht sehr viel. Er soll außerdem mehr Denkanreize als fertige Lösungen geben, da nur ein angepasstes Sicherheitssystem ein gutes ist.
Unix-Tools 8: info
Er gilt als Inbegriff der Unix-Philosophie und wird von vielen erfahrenen Benutzer jedem Anfänger als ultimativer erster Konsolen-Befehl gegeben. Die Rede ist von man man. man-Seiten (dt. Manualseiten) sind Bedienungsanleitungen für Programme. In diesen werden alle Parameter, Bugs und Copyright-Informationen aufgelistet. Es gibt jedoch noch eine mächtigere, aber nicht so bekannte Variante: info. Diese soll heute beschrieben werden.
Samba Server unter Linux
Gerade im privaten Netzwerk kann es äußerst praktisch sein, einen kleinen Server zu betreiben, auf dem Daten zentral gespeichert werden. So müssen unter anderem Urlaubsfotos nicht auf jedem einzelnen Computer liegen, sondern können auf einem gemeinsamen Laufwerk abgelegt werden, auf das alle Geräte im Netzwerk zugreifen können.
Unix-Tools 7: strings
UNIX/Linux ist bei Hobbyadministratoren und Informatikstudenten sehr beliebt. Kein Wunder, stellt es doch eine komplette Server- und Entwicklungsumgebung zur Verfügung. Das heutige Tool strings richtet sich mehr an die Programmierer als an die Administratoren. Wie der Name schon sagt, handelt es sich auch hierbei um ein String verarbeitendes Programm. Strings sind nicht mehr als zusammengesetzte Zeichen – also Zeichenketten (jeder Programmierer wird wissen, wovon ich rede).
Unix-Tools 6: join & paste
UNIX/Linux ist hauptsächlich ein sehr beliebtes Server-Betriebssystem. Viele Datenbank- und Webserver laufen auf diesem stabilen System. Wer viel mit Datenbankservern wie z. B. von Oracle oder MySQL (gehört ja letztendlich der gleichen Firma) arbeitet, sollte weiterlesen. Denn relationsalgebraische Operationen lassen sich auch auf normale Textdateien anwenden, durchaus sinnvoll.
cygwin – Unix-Tools unter Windows benutzen
Die bis jetzt vorgestellten Unix-Tools haben durchaus ihre Reize – wie so oft beschrieben. Jedoch helfen die allerbesten Tools nur, wenn man sie im richtigen Augenblick zur Hand hat.
Unix-Tools 5: fmt
fmt ist die Unix-Abkürzung für format (dt. formatieren). Und genau darum geht es auch in diesem Beitrag. Unix startete seine Karriere als Internet-Betriebssystem noch lang bevor es grafische Benutzerschnittstellen wie KDE, GNOME & Co. gab. Aber auch damals wurden Berichte geschrieben, E-Mails verschickt und Diagramme erstellt. Wenn es darum geht, einen ASCII-Text via Konsole zu formatieren, kann fmt recht nützlich werden.
Unix-Tools 4: wc & comm
Heute sollen zwei sehr kleine aber umso praktischere Tools vorgestellt werden. Das erste hört auf den kryptischen Namen wc (word count, dt. Wortzählung) und gibt die Länge einer Datei in verschiedenen Einheiten auf dem Bildschirm aus. Das zweite Tool heißt comm. Es vergleicht zwei Dateien auf Zeilenbasis und gibt die Unterschiede bzw. Gemeinsamkeiten zurück.
Unix-Tools 3: sort
Wir sortieren jeden Tag. Mehr oder weniger bewusst bewerten wir so Preise, Produkte, wirtschaftliche Zahlen, Schulnoten und vieles mehr. Auch dafür gibt es ein Unix-Tool, das auf den simplen und doch markanten Namen sort hört. Wie immer handelt es sich hier um ein Tool, das nur eine einzige Aufgabe übernimmt, aber das fast unschlagbar gut. Es gibt viele Optionen, die das Sortieren und die damit verbundenen Aufgaben schnell und meist ohne Stress erledigen können. Wollt ihr mehr wissen? Dann lest weiter!
Unix-Tools 2: head & tail
Unix und Linux bieten viele kleine Werkzeuge, die genau eine einzige Aufgabe bewältigen – dafür aber hervorragend. Die zwei Tools die heute vorgestellt werden, geben den Anfang bzw. das Ende einer Datei aus. Sie haben zwar nur wenige Optionen, dafür aber einige, die beim debuggen wirklich von Interesse sein können. Lasst euch also überraschen was man mit head und tail alles anstellen kann.
Unix-Tools 1: cut
Ich werde euch in dieser Reihe jeden Dienstag eine kleine Einführung in bekannte, unbekannte, einfache und schwierige Unix-Tools geben. Den Anfang macht cut (dt. schneiden) welches zu den Text verarbeitenden Programmen gehört. Um etwas genauer zu sein: es zerschneidet den Text anhand von so genannten Delimiters (dt. Trennzeichen). Das sind einfache Zeichen die zwischen den gewünschten Wörtern stehen. Genug mit der Theorie, hier ein paar Beispiele. Ein typischer Anwendungsbereich ist die Passwort-Datei unter Linux /etc/passwd. Ich habe meine (aus mir unerklärlichen Gründen ;)) kaputte Datei in ein beliebiges Verzeichnis kopiert um damit arbeiten zu können.
Linux 6: Standard Ein- und Ausgabekanäle
In dem letzten Linux-Artikel hatte ich darüber berichtet, wie man Dateien bearbeiten und packen kann. Wenn man jetzt eine Datei mit dem Befehl nano oder less anzeigen lässt, wird einem der Dateiinhalt auf dem Bildschirm ausgegeben. Das ist, denke ich, jedem klar und auch nichts wirklich Besonderes, denn man kennt es von Windows ja auch schon: Wenn ich eine Textdatei z. B. mit dem Editor öffne, bekomme ich den Inhalt angezeigt.
In diesem Artikel möchte ich aber auf die 3 Standard Ein / Ausgabekanäle (Streams) einer Shell eingehen.