Die Linux-Konsole, die Bash, das Terminal, die - Anti
Transcription
Die Linux-Konsole, die Bash, das Terminal, die - Anti
Die Linux-Konsole, die Bash, das Terminal, die Kommandozeile, die Shell losrobos@users.sourceforge.net Von Windows-Usern gerne als Relikt aus grauer Vorzeit bezeichnet ist die Linux-Konsole doch etwas ganz anderes – sie ist die Kommunikationsschnittstelle zwischen dem System und dem User. Unter Microsoft Windows würde man die Linux-Konsole als MSDOS-ähnlich bezeichnen, doch ist sie viel mehr: Info: Was tut man unter Microsoft Windows wenn ein Programm gerade etwas nicht kann, man sucht sich ein weiteres Programm und wenn nötig noch ein drittes, hier ein mögliches kleines Beispiel: man lädt sich von Youtube eine Video-Datei in Flash herunter und möchte diese Datei in das MP3-Format konvertieren (nötigenfalls kann man dies in Firefox mit einem Dienst-AddOn erledigen) – diese dann weil zu viel Pause am Beginn und am Ende ist zurecht schneiden und dann noch die Lautstärke verändern – vielleicht auch noch ein vorhandenes Rauschen entfernen – bestenfalls benötigt man dazu schon drei Programme und jedes muss man extra starten, unter Linux jedoch öffnet man die Konsole gibt einen verketteten Befehl mit einigen Optionen ein und die ganze Geschichte hat sich in Sekunden erledigt. Unter Microsoft gibt es keine Möglichkeit mit dem System richtig zu kommunizieren – auch die von Microsoft neu entwickelte „Powershell“ ist nichts anderes als ein Flop, man muss sich an die Vorgaben halten die der Programmierer der grafischen Oberfläche bei gebracht hat – mehr ist nicht möglich, unter Linux stellt die Konsole die Möglichkeit dar mit dem System richtig zu kommunizieren – dem System Befehle zu erteilen, Fragen zu stellen und die richtigen Antworten zu bekommen. Wenn man die richtigen Befehle kennt erkennt man auch die Vorteile und vieles lässt sich viel schneller erledigen als wenn man sich unter einer grafischen Oberfläche durch unzählige Menüs klicken muss. Diese kleine Hilfe soll einen ersten Einstieg in den Umgang mit der Konsole ermöglichen und die Grundbegriffe erklären. Starten der Konsole: Der Konsolen-Prompt: Korrektes Eingeben von Befehlen: Datei-Verwaltung mit Bordmitteln: Optionen kombinieren zwischen Verzeichnissen wechseln: Befehls-Vervollständigung Dateien löschen: Dateien kopieren: Dateien verschieben: neue Dateien erstellen: Text-/Konfigurations-Dateien auf der Konsole bearbeiten: Benutzer-wechsel auf der Konsole: Programme mit grafischer Oberfläche auf der Konsole: Die Begriffe: Konsole, Terminal, Kommandozeile: eigentlich beschreiben diese Begriffe ein Programm – eine Schnittstelle zum eingeben von Befehlen und empfangen von Nachrichten vom System, unter KDE wird die Konsole Konsole genannt, unter GNOME und anderen DesktopUmgebungen zumeist Terminal. Shell, Bash, Dash usw.: sind die Namen von sogenannten BefehlsInterpretern, der Befehls-Interinterpreter übersetzt die vom User eingegebenen Befehle in eine für das System verständliche Sprache und die Systemausgaben zurück in eine für den User verständliche Sprache, hauptsächlich wird unter den meisten Linux-Distributionen die „Bash“ (Bourne Again Shell) eingesetzt. Starten der Konsole: um die Konsole zu starten muss man die grafische Oberfläche nicht komplett verlassen oder gleich ein System ohne grafische Oberfläche installieren, unter KDE öffnet man ganz einfach das Programm „Konsole“ aus dem Menü „System“, unter GNOME aus dem Menü „Anwendungen – Zubehör“. - So erhält man die Konsole auf der grafischen Oberfläche in einem Fenster, ein weiterer Weg die Konsole zu öffnen wäre die Tastenkombination: Strg + Alt + F1 bis F6 so legt sich die Konsole über den ganzen Bildschirm und verschiebt die grafische Oberfläche in den Hintergrund – die unter der grafischen Oberfläche laufenden Programme werden dabei nicht gestört, mit der Tastenkombination: Strg + Alt + F7 kommt man wieder auf die grafische Oberfläche zurück, befindet man sich auf der Konsole kann man mit der Tastenkombination: Strg + Alt + F1 bis F6 zwischen 6 verschiedenen Konsolen hin und her schalten. Der Konsolen-Prompt: hat man eine Konsole per Maus geöffnet ist diese noch ziemlich leer, alles was man sieht ist der Konsolen-Prompt oder auch Eingabe-Prompt und Shell-Prompt genannt, dieser könnte als Beispiel so aussehen: maxl@ubuntu:~$ „maxl“ zeigt hier den angemeldeten Benutzer und „ubuntu“ den Rechner-Namen, das „$“-DollarZeichen wiederum zeigt das man mit normalen Benutzer-Rechten arbeitet, würde der Prompt im gleichen Fall so aussehen: root@ubuntu:/home/maxl# würde das bedeuten das man als „root“ angemeldet ist, sich im Verzeichnis „/home/maxl“ befindet und die „#“ zeigt das man mit Systemverwalter-Rechten arbeitet. Hat man die Konsole per Tastenkombination „Strg + Alt + F1 bis F7“ geöffnet muss man sich erst einmal anmelden, in diesem Fall könnte der Prompt im gleichen Fall wie oben so aussehen: ubuntu login: _ in diesem Fall gibt man nun seinen Benutzer-Namen ein und drückt die „Enter“-Taste nun erscheint die Meldung: Password: geben Sie ganz einfach Ihr Passwort ein und drücken die „Enter“-Taste (beim Eingeben des Passwortes sind weder Buchstaben noch Punkte zu sehen) Korrektes Eingeben von Befehlen: Wie unter Linux üblich erwartet die Konsole die korrekte Eingabe in Groß- und Kleinbuchstaben von Passwörtern und Befehlen, so würde der Befehl „Firefox“ nicht das Programm Firefox starten sondern nur der Befehl: „firefox“, etwas das höchstwahrscheinlich nicht erwähnt werden muss ist die Bestätigung des Befehles mit der „Enter“-Taste – ansonsten wartet die Konsole solange Sie Geduld haben. Datei-Verwaltung mit Bordmitteln: Verzeichnis-Inhalt anzeigen: ls – zeigt die im Verzeichnis liegenden Dateien an Beispiel: maxl@ubuntu:~$ ls Bilder gnucash.20110328190831.xac RMAIL Desktop index.lokalize robert@debian-yedi: ~_001.png Dokumente kdenlive Videos Downloads lokalize-scripts Vorlagen firefox Musik X.ini FrostWire News gnucash Öffentlich maxl@ubuntu:~$ ls -l – zeigt ausführlichere Informationen über die im Verzeichnis liegenden Dateien Dateien an, etwa die Datei-Größe, das Datum der Erstellung, den Benutzer dem die Datei gehört sowie den Ersteller der Datei und die Zugriffs-Rechte Beispiel: drwxr-xr-x 5 maxl maxl 4096 31. Mär 14:15 Bilder drwxr-xr-x 2 maxl maxl 12288 9. Apr 12:19 Desktop drwxr-xr-x 9 maxl maxl 4096 9. Apr 15:42 Dokumente drwxr-xr-x 2 maxl maxl 4096 9. Apr 00:39 Downloads drwxr-xr-x 8 maxl maxl 4096 18. Mär 15:25 firefox drwxr-xr-x 7 maxl maxl 4096 4. Mär 01:07 FrostWire -rw-r--r-1 maxl maxl 5313 28. Mär 19:08 gnucash -rw-r--r-1 maxl maxl 5744 29. Mär 17:26 gnucash.20110328190831.xac -rw------1 maxl maxl 47 3. Apr 02:53 index.lokalize drwxr-xr-x 5 maxl maxl 4096 9. Mär 03:35 kdenlive drwxr-xr-x 2 maxl maxl 4096 3. Apr 02:53 lokalize-scripts drwxr-xr-x 2 maxl maxl 12288 30. Mär 22:02 Musik drwxr-xr-x 4 maxl maxl 4096 14. Mär 01:40 News drwxr-xr-x 2 maxl maxl 4096 29. Mär 16:48 Öffentlich -rw-r--r-1 maxl maxl 109417 14. Mär 01:40 RMAIL -rw-r--r-1 maxl maxl 51659 9. Apr 14:22 maxl@ubuntu: ~_001.png drwxr-xr-x 3 maxl maxl 4096 2. Apr 08:41 Videos drwxr-xr-x 2 maxl maxl 4096 4. Mär 01:09 Vorlagen -rw-r--r-1 maxl maxl 326 1. Apr 17:02 X.ini ls -a – zeigt auch Versteckte Dateien an (Dateien die mit einem Punkt beginnen) ls -R – zeigt bei Verzeichnissen auch deren Inhalt an ls -S – listet Dateien und Verzeichnisse nach Dateigröße auf ls -t – listet Dateien und Verzeichnisse nach dem Erstellungs-Datum auf natürlich kann man wie bei den meisten anderen Befehlen die Optionen kombinieren, so zeigt der Befehl: ls -l -a – zum Beispiel auch Versteckte Dateien und bei Verzeichnissen deren Inhalt an zwischen Verzeichnissen wechseln: um z.Bsp.: in das im Home-Verzeichnis liegende Verzeichnis „Bilder“ zu wechseln dient der Befehl: cd Bilder man gibt also ganz einfach den Befehl „cd“ mit den Verzeichnis an in das man wechseln will dabei kann man natürlich auch mehrere Verzeichnisse überspringen, will man z.Bsp.: in das Verzeichnis „/etc/apt/archives/“ zu wechseln gibt man einfach den Befehl: cd /etc/apt/archives/ ein und landet direkt im Verzeichnis „/archives“, hierbei könnte erstmals die Befehls-Vervollständigung erwähnt werden – man muss nicht immer den ganzen Befehl eingeben – im vorangegangenen Befehl würde es reichen: cd /e“Tab“-Taste/ap“Tab“-Taste/a“Tab“-Taste ein zu geben, mit Hilfe der „Tab“-Taste vervollständigt die Bash den Befehl automatisch – wenn kein weiterer Befehl oder kein weiteres Verzeichnis mit den gleichen Anfangs-Buchstaben beginnt, natürlich kann man Firefox mit dem Befehl: firefox starten und zum Beispiel mir fir“Tab“-Taste abkürzen, hätte man nun einen weiteren Befehl oder ein Programm das mit den gleichen Anfangs-Buchstaben beginnt würde die Vervollständigung nichts anzeigen – drückt man nun ein zweites Mal die „Tab“-Taste zeigt die Bash nun alle Befehle mit den gleichen Anfangs-Buchstaben an – nun fügt man ganz einfach so viele Buchstaben hinzu bis diese mit keinem anderen Befehl mehr gleich sind. Der Befehl: cd bringt den Nutzer nun direkt wieder in das Home-Verzeichnis zurück, arbeitet man als root – ist dies das „/root“-Verzeichnis Dateien löschen: der Befehl: rm dient dazu Dateien und Verzeichnisse zu löschen - !!Vorsicht!! mit dem Befehl landen Dateien nicht im Papierkorb – sondern werden sofort gelöscht. Um nun z.Bsp.: die Datei „maxl.jpg“ zu löschen genügt der Befehl: rm maxl.jpg ebenfalls für das Verzeichnis „Bilder“ rm Bilder ist das Verzeichnis jedoch nicht leer meldet die Bash das das Verzeichnis noch Dateien enthält – um nun das Verzeichnis Bilder samt Inhalt zu löschen genügt dann der Befehl: rm -r Bilder um nun noch die Nachfrage abzustellen ob das Verzeichnis wirklich gelöscht werden soll dient die Option rm -rf Bilder !!Vorsicht!! bei System-Dateien!! rm -rf als root löscht das angegebene Verzeichnis oder die Datei ohne Nachfrage, ein „rm -rf /“ als root putzt das gesamte System von der Festplatte Dateien kopieren: um eine oder mehrere Dateien zu kopieren dient der Befehl: cp um nun z.Bsp.: die Datei „maxl.jpg“ in das Unterverzeichnis „Maxl“ von „Bilder“ zu kopieren genügt der Befehl: cp maxl.jpg /Bilder/Maxl/ der Befehl: cp maxl.jpg /Bilder/Maxl/maxl1.jpg benennt die Datei im Verzeichnis „Maxl“ in „maxl1.jpg“ um Dateien verschieben: um Dateien oder Verzeichnisse zu verschieben dient der Befehl: mv um nun z.Bsp.: die Datei „maxl.jpg“ in das Unterverzeichnis „Maxl“ von „Bilder“ zu verschieben genügt der Befehl: mv maxl.jpg /Bilder/Maxl/ der Befehl: mv maxl.jpg /Bilder/Maxl/maxl1.jpg benennt die Datei im Verzeichnis „Maxl“ in „maxl1.jpg“ um neue Dateien erstellen: um eine neue Datei zu erstellen dient der Befehl: touch der Befehl: touch maxl erstellt eine leere Datei mit der Bezeichnung „maxl“ gibt man dem Dateinamen nun auch noch eine Datei-Endung mit: touch maxl.jpg erstellt der Befehl eine „jpg“-Datei mit dem Namen „maxl“ Text-/Konfigurations-Dateien auf der Konsole bearbeiten: unter Linux gibt es viele Konsolen-Texteditoren, einer der auf den meisten Systemen vorhanden ist ist „nano“, nano ist so einfach wie effizient zu bedienen, liegt die Datei im selben Verzeichnis in dem man sich gerade befindet genügt der Befehl: nano dateiname um z.Bsp.: die Datei „/etc/apt/sources.list“ zu bearbeiten genügt der Befehl: nano /etc/apt/sources.list egal in welchem Verzeichnis man sich gerade befindet, in diesem Fall würde dies so aussehen: # deb-src http://security.debian.org/ squeeze/updates main # Line commented out by installer because it failed to verify: # deb ://volatile.debian.org squeeze-updates main # Line commented out by installer because it failed to verify: # deb-src ://volatile.debian.org squeeze-updates main deb http://http.us.debian.org/debian/ squeeze contrib non-free main deb cdrom:[Debian GNU/Linux 6.0.0 _Squeeze_ - c't Squeeze Multi-architecture i3$ deb http://www.debian-multimedia.org squeeze main non-free deb http://mirror.isoc.org.il/pub/debian/ squeeze main contrib non-free deb http://mirror.isoc.org.il/pub/debian/ squeeze-proposed-updates main contrib$ deb http://security.debian.org/ squeeze/updates main contrib non-free deb http://ftp.debian.org/debian sqeeze-updates main ^G Hilfe ^O Speichern ^R Datei öffn^Y Seite zurü^K Ausschneid^C Cursor ^X Beenden ^J Ausrichten^W Wo ist ^V Seite vor ^U Ausschn. r^T Rechtschr. am unteren Bildschirmrand befinden sich die Systembefehle, mit den Pfeiltasten bewegt man sich an die richtige Stelle und kann wie mit einem normalen Texteditor arbeiten, die Systembefehle werden als Tastenkombination angewandt wobei der Buchstabe mit der „Strg“-Taste angewandt wird – so speichert Strg + O die Datei und Strg + X beendet nano Benutzer-wechsel auf der Konsole: um auf der Konsole zu root zu werden genügt auf den meisten Systemen der Befehl: su + „Enter“-Taste und der Eingabe des Administrator-Kennwortes um von root wieder zum normalen Benutzer zu werden reicht der Befehl: exit unter Ubuntu kann man sich nicht als root anmelden – hier stellt man dem Befehl sudo voran, um etwa den Dateimanager „Nautilus“ als root zu starten genügt der Befehl: sudo nautilus um sich als anderer Benutzer anzumelden etwa von maxl zu peter genügt ein su peter und der darauf folgenden Eingabe der Passwortes von peter Programme mit grafischer Oberfläche auf der Konsole: doch selbst ohne grafische Oberfläche müssen Einsteiger nicht alle Befehle kennen, für viele Aufgaben gibt es Programme die zumindest eine annähernd grafische Oberfläche bieten, etwa der „Midnight Commander“ als Dateimanger der mit dem Befehl: mc gestartet wird die Paketverwaltung Aptitude die mit dem Befehl: aptitude gestartet wird und viele weitere mehr dieses Dokument liegt unter der Lizenz: GNU FDL http://www.gnu.org/copyleft/fdl.html , losrobos 2011