![]() |
|
||||||||||||||||||||
|
|||||||||||||||||||||
|
|||||||||||||||||||||
Know-how für die Kommandozeile
von Andrea Müller
Um schnell etwas mit root-Rechten zu erledigen, etwa einen Blick in die Log-Dateien des Systems zu werfen, eignet sich der Befehl su. Nach der Eingabe des Administatorpassworts arbeiten Sie als root. Mit exit oder [Strg-D] wechseln Sie zurück zum normalen Benutzerkonto. Um nur einen Befehl als Administrator auszuführen, kennt su den Parameter -c (für command) gefolgt von dem gewünschten Befehl. So zeigt
su -c "less /var/log/messages"
nach Eingabe des Passworts die Protokolldatei /var/log/messages in less an. Da der Befehl eine Leerstelle enthält, müssen Sie ihn in Anführungszeichen setzen. Sobald Sie less mit [Q] beenden, arbeiten Sie wieder als normaler Benutzer.
Möchten Sie unter Suse Linux ein grafisches Programm als root starten, verwenden Sie statt su das KDE-Programm kdesu, also etwa
kdesu -c "kwrite /etc/fstab"
um die Datei /etc/fstab im Text-Editor KWrite zu öffnen. kdesu erlaubt es Ihnen unter Suse Linux, auch als nicht angemeldeter Benutzer auf die grafische Oberfläche zuzugreifen. Wer unter Mandriva Linux 2006 mit der Sicherheitsebene Standard arbeitet, hat diese Probleme nicht, da die Distribution root automatisch den Zugriff auf grafische Programme gestattet, wenn Sie als normaler Nutzer mit su zum Administrator werden.
Wenn ein Skript mit einem Fehler abbricht, gibt es oft die Zeilennummer aus, in welcher der Fehler auftritt. Um schnell zu schauen, welcher Befehl dort steht, und um festzustellen, ob man den Fehler eventuell selbst korrigieren kann, reicht es, mit cat dateiname einen Blick in das Skript zu werfen. Mit dem Aufrufparameter -n gestartet, zeigt das Programm sogar die Zeilennummern an (Abbildung 1). Bei langen Skripten sollten Sie die Ausgabe des Befehls mit
cat -n datei | less
an den Betrachter less weiterleiten [2]. Das Pipe-Zeichen (|) erhalten Sie mit [AltGr-<].
Shell-Anfänger verlieren bei der Navigation in den tiefen Linux-Verzeichnisstrukturen schnell den Überblick. Um zu erfahren, in welchem Ordner Sie sich befinden, geben Sie pwd ein. Dieser Befehl verrät Ihnen das aktuelle Arbeitsverzeichnis. Wenn Sie von dort wieder in Ihr Home-Verzeichnis wechseln wollen, müssen Sie nicht
cd /home/benutzername
tippen: viel schneller gelangen Sie mit cd zurück ins Home-Verzeichnis.
Wenn man gerade aus einem Unterordner mit langem Pfadnamen wieder ins Home-Verzeichnis gewechselt ist und feststellt, dass man im vorigen eigentlich noch etwas hätte erledigen müssen, ist das ärgerlich. Die Bash kennt jedoch ein praktisches Kürzel, mit dem Sie sich die Eingabe des vollen Pfads zum vorherigen Arbeitsverzeichnis sparen: Geben Sie
cd -
ein, um zurück in den letzten Ordner zu wechseln. Rufen Sie den Befehl erneut auf, gelangen Sie wieder zurück ins letzte Verzeichnis, so dass Sie mit wiederholter Eingabe von cd - bequem zwischen zwei Ordnern hin- und herspringen.
Buchstabendreher gehören zu den häufigsten Tippfehlern. Gerade bei Schnellschreibern steht leicht einmal sl statt ls in der Befehlszeile. Solche Fehler korrigieren Sie besonders flink mit [Strg-T]: Setzen Sie den Cursor auf den zweiten falschen Buchstaben und drücken Sie die Tastenkombination, um ihn mit dem Zeichen davor zu vertauschen.
Der Befehl clear entfernt die Ausgaben der letzten Befehle aus der Konsole und beschert Ihnen ein leeres Fenster. Tippfaule erreichen denselben Effekt mit [Strg-L].
Mit Hilfe der Scroll-Balken gelangen Sie danach trotzdem noch zurück zu den letzten Befehlen und deren Ausgabe. Arbeiten Sie mit der KDE-Konsole, verhindern Sie das, indem Sie über Bearbeiten / Verlaufsspeicher löschen die alten Kommandos entfernen. Alternativ deaktivieren Sie den Verlauf über Einstellungen / Verlaufsspeicher. Das ist jedoch unpraktisch, da Sie dann gar nicht mehr zurückblättern können.
Mit dem Befehl head dateiname zeigen Sie die ersten zehn Zeilen einer Datei an. Geben Sie stattdessen
head -3 dateiname
ein, sehen Sie nur die ersten drei Zeilen der Datei. Der Befehl, der die letzten zehn Zeilen einer Datei anzeigt, heißt tail. Beiden Kommandos können Sie sogar mehrere Dateinamen übergeben. Rufen Sie beispielsweise
head text1.txt config test.txt
auf, zeigt das Programm die ersten zehn Zeilen der Dateien an und schreibt vor jeden Abschnitt den jeweiligen Dateinamen (Abbildung 2). Auch die Ausgabe dieses Befehls können Sie mit dem Pipe-Zeichen (|) an less weiterleiten, um mit [Bild auf] und [Bild ab] in der Ausgabe zu blättern. Der Aufruf lässt sich mit der Angabe einer Zeilenzahl kombinieren, so dass Sie selbst bestimmen, wie viele Zeilen der Dateien head und tail ausgeben. (amü)
| Suse Linux: Online Update auf Kommando |
|
Suse-Linux-Anwender, die ihr System mit dem Online Update über das Internet auf dem neuesten Stand halten, müssen sich nicht erst durch YaST klicken, um die fehlerbereinigten Pakete herunterzuladen. Besonders schnell starten Sie das Update auf der Kommandozeile über den Befehl you. Dabei handelt es sich um ein Alias [3], das der Distributor eingerichtet hat. Wenn Sie you eingeben, führt die Shell das Kommando su - -c "/sbin/yast2 online_update" aus. Daraufhin startet das Update-Modul von YaST, und Sie müssen nur noch auf Weiter klicken, um die Liste der aktualisierten Pakete herunterzuladen. Einen Haken hat die Sache allerdings: Wenn Sie den Befehl eingeben, erhalten Sie nach der Eingabe des root-Passworts die Fehlermeldung Xlib: connection to ":0.0" refused by server" und der Update-Dialog startet nicht. Das liegt daran, dass unter Suse Linux nur der angemeldete Benutzer Zugriff auf den X Server, das grafische System von Linux, hat [4]. Der Befehl funktioniert daher erst einmal nur auf Textkonsolen, die Sie mit einem Druck auf [Strg-Alt-F1] bis [Strg-Alt-F6] erreichen. Zurück zur grafischen Oberfläche gelangen Sie mit [Alt-F7]. Dann meldet sich YaST im Textmodus, und Sie müssen mit Hilfe der Tastatur durch die Paketliste navigieren. Mit einem Trick sorgen Sie dafür, dass das Befehlskürzel auch auf der grafischen Oberfläche funktioniert: Dazu passen Sie einfach die systemweite Aliasdefinition an. Sie befindet sich in der Datei /etc/bash.bashrc, die Sie nur als root ändern dürfen. Öffnen Sie diese daher mit dem Kommando kdesu kwrite /etc/bash.bashrc im KDE-Text-Editor. Drücken Sie [Strg-F] und geben Sie als Suchbegriff online ein. KWrite springt zur richtigen Stelle in der Datei, unter Suse Linux 10.0 in Zeile 212. Ersetzen Sie dort su durch kdesu, mit dessen Hilfe Sie auch als root grafische Programme starten, und speichern Sie die Datei. Die Zeile sollte so aussehen wie in Abbildung 3. Nun geben Sie in einer neu geöffneten Konsole einfach you ein, um das System auf den neuesten Stand zu bringen. Im Textmodus funktioniert der Befehl jetzt allerdings nicht mehr, da kdesu ein Fenster für die Passworteingabe öffnet. Abb. 3: Indem Sie "su" durch "kdesu" ersetzen, sorgen Sie dafür, dass das Alias "you" auf der grafischen Oberfläche funktioniert. |
| Infos |
|
[1] Artikel über "su" und "sudo": Heike Jurzik, "Doppelgänger", EasyLinux 11/2004, S. 77 ff., http://www.easylinux.de/2004/11/077-guru-sudo/
[2] Artikel über Umleitungen in der Shell: Heike Jurzik, "Genial gelenkig", EasyLinux 09/2005, S. 84 ff., http://www.easylinux.de/2005/09/084-umleitungen/ [3] Alias-Artikel: Elisabeth Bauer, "Schleichwege", EasyLinux 07/2004, S. 82 f., http://www.easylinux.de/2004/07/082-bash/ [4] Artikel über den Zugriff auf X: Andrea Müller, "Einmal Root und zurück", EasyLinux 07/03, S.48 f., http://www.easylinux.de/2003/07/048-kdesu/index.html |
Dieser Online-Artikel kann Links enthalten, die auf nicht mehr vorhandene Seiten verweisen. Wir ändern solche "broken links" nur in wenigen Ausnahmefällen. Der Online-Artikel soll möglichst unverändert der gedruckten Fassung entsprechen.
Druckerfreundliche Version |
Feedback zu dieser Seite |
Datenschutz |
© 2012 Linux New Media AG |
Last modified: 2007-04-05 11:24
[Linux-Magazin]
[LinuxUser]
[Linux-Community]
[Admin-Magazin]
[Ubuntu User]
[Smart Developer]
[Linux Events]
[Linux Magazine]
[Ubuntu User]
[Admin Magazine]
[Smart Developer]
[Linux Magazine Poland]
[Linux Community Poland]
[Linux Magazine Brasil]
[Linux Magazine Spain]
[Linux Technical Review]