Know-how für die Kommandozeile

Aus EasyLinux 02/2009

Know-how für die Kommandozeile

Shell-Tipps

Erfahrene Linux-Nutzer schwören auf flexible Kommandozeilentools, mit denen sich manche Aufgabe schneller bewältigen lässt als in grafischen Programmen. Wir stellen die wichtigsten Anwendungen vor, um auch Einsteiger zu einem Ausflug in die Shell zu ermutigen.

Tipp: Verknüpfungen (Symlinks) anzeigen

Verknüpfungen (so genannte symbolische Links) begegnen Ihnen häufig unter Linux. Es handelt sich eigentlich um “Attrappen” – diese Dateien tun nichts anderes als auf etwas anderes zu verweisen, ähnlich wie HTML-Links auf Webseiten. Erstellen Sie einen symbolischen Link, greifen Sie auf die Datei oder den Ordner nicht nur über den ursprünglichen Namen und Pfad zu, sondern auch über den Namen des Links.

Bekannte Vertreter dieser Gattung sind beispielsweise die Symlinks vmlinuz und initrd.img, die in / oder /boot liegen und jeweils auf den Standard-Kernel und die zugehörige Initial Ramdisk im Verzeichnis /boot verweisen, oder auch die Links zu den Start-/Stopp-Skripten in den Runlevel-Verzeichnissen [1].

Die grafischen Dateimanager haften für Symlinks meistens einen kleinen Pfeil ans Icon, der anzeigt, dass die Datei oder der Ordner auf etwas anderes verweist. Auf der Kommandozeile identifizieren Sie symbolische Links mit dem Befehl ls und dem Aufrufparameter -l für die ausführliche Darstellung (Listing 1).

Listing 1

Symbolische Links

$ ls -l /etc/rc0.d/
insgesamt 4
lrwxrwxrwx 1 root root  13 2009-02-03 14:54 K01gdm -> ../init.d/gdm
lrwxrwxrwx 1 root root  13 2009-02-03 11:22 K01kdm -> ../init.d/kdm
lrwxrwxrwx 1 root root  17 2009-02-03 11:21 K02usplash -> ../init.d/usplash
…

Der kleine Pfeil verrät, wo der Link hinzeigt. Auch die Desktopumgebungen bieten Mittel und Wege, mehr über die Verweise herauszufinden. Unter KDE und auch Gnome öffnen Sie über einen rechten Mausklick auf ein Symbol den Eigenschaften-Dialog, der Aufschluss über die Verknüpfung gibt (Abbildung 1).

Abbildung 1: Einmal grafisch (unter Gnome), einmal auf der Shell: So spüren Sie symbolische Verknüpfungen und das Ziel der Links auf.

Abbildung 1: Einmal grafisch (unter Gnome), einmal auf der Shell: So spüren Sie symbolische Verknüpfungen und das Ziel der Links auf.

Tipp: Symbolische Links erstellen

Eine Möglichkeit, selbst solche Verweise zu erstellen, bietet der Dateimanager der Desktopumgebung: Unter Gnome fassen Sie ein Objekt mit der mittleren Maustaste an und ziehen es in Nautilus an einen neuen Ort (oder auf den Desktophintergrund). Sobald Sie die Maustaste loslassen, können Sie Verknüpfung erstellen als eine mögliche Aktion auswählen – fertig ist der Symlink. Unter KDE funktioniert das Ganze ähnlich, allerdings ziehen Sie hier das Objekt mit der linken Maustaste aus Dolphin heraus und lassen es über der Arbeitsfläche los.

Noch schneller geht’s auf der Shell: Hier ist nur ein einziger Befehl notwendig, um einen Symlink zu erstellen. Die Syntax lautet ln -s Quelle Ziel. Um also beispielsweise das Verzeichnis /home/username/musik/folk/Calico/Songdogs/ für den schnelleren Zugriff auf dem Desktop abzulegen, tippen Sie:

ln -s /home/username/musik/folk/Calico/Songdogs Desktop

Diese Vorgehensweise funktioniert sowohl unter Gnome als auch unter KDE.

Tipp: Bootmeldungen kontrollieren: “dmesg”

Bei vielen Distributionen gehört es mittlerweile zum guten Ton dazu, den Bootvorgang mit einem hübschen Splash-Screen und einem Fortschrittsbalken zu “verschönern”. Dieser lässt sich meistens durch eine entsprechende Option (nosplash) in der Grub-Konfigurationsdatei menu.lst abschalten, aber das nur am Rande. Ohne einen Splash-Screen huschen beim Systemstart jede Menge Meldungen über den Bildschirm, die Ihnen Informationen zu Festplatten, Grafik- oder Netzwerkkarten, Bluetooth-Adaptern usw. geben. Diese Meldungen des Kernels verraten Ihnen, ob es beispielsweise Probleme mit einem Treiber für ein bestimmtes Gerät gibt.

Als Systemverwalter root haben Sie jederzeit die Möglichkeit, die Protokolldateien im Verzeichnis /var/log anzuschauen und dort nach Informationen über eventuelle Sorgenkinder Ausschau zu halten. Aber auch für unprivilegierte Benutzer sind die Bootmeldungen nicht unerreichbar: Der Befehl dmesg verrät Details auf der Konsole. Am besten kombinieren Sie das Tool mit anderen Shell-Kommandos. Um alle Meldungen seitenweise zu betrachten, übergeben Sie die Programmausgabe z. B. an less:

dmesg | less

Das Pipe-Zeichen (|) geben Sie über die Tastenkombination [AltGr]+[<] ein. Nun blättern Sie mit den Pfeil- oder Bildlauftasten hoch und runter in der Ausgabe und lesen in aller Ruhe die Bootmeldungen. Mit [Q] beenden Sie less.

Tipp: Anfang und Ende der Bootmeldungen

Interessieren Sie sich nur für die ersten oder letzten Bootmeldungen, zeigen Sie mit einer Kombination aus head oder tail den Anfang oder das Ende der dmesg-Ausgabe an. Der Befehl

dmesg | head

zeigt die ersten zehn Zeilen; wenn Sie nach dem Pipe-Zeichen tail statt head schreiben, sehen Sie die letzten zehn Zeilen. Die Zeilenanzahl ändern Sie für beide Programme über den Parameter -n, der als Option eine Zahl erwartet. So zeigt das folgende Kommando die letzten 20 Zeilen an:

dmesg | tail -n 20

Tipp: “dmesg”-Ausgabe durchsuchen

Langes Blättern in der dmesg-Ausgabe können Sie sich sparen, wenn Sie nach ganz bestimmten Informationen suchen. Dazu nehmen Sie das Tool grep zu Hilfe. So fahndet der Befehl dmesg | grep eth0 z. B. nach dem Namen der ersten Ethernet-Karte. “Greppen” Sie nach Zeichenketten wie sda oder hda, um Informationen zu Festplatten (S-ATA/SCSI oder IDE) zu finden. Auch ein Suchlauf mit dem Begriff video kann weiterhelfen, wenn es um die Grafikkarte geht. Wenn Sie grep mit dem Aufrufparameter -i kombinieren, unterscheidet das Tool nicht mehr zwischen Groß- und Kleinschreibung: dmesg | grep -i video findet alle Zeilen mit video, Video oder auch VIdeO.

Tipp: Plattenbelegung mit “df” herausfinden

Wie viel Platz ist eigentlich noch frei? Das Tool df verrät mehr – und das für alle eingehängten Datenträger. Die Ausgabe zeigt den Namen des Geräts, die Gesamtkapzität und den benutzten Platz an; auf Wunsch blendet df auch noch weitere Infos, wie Dateisystemtyp u. Ä. ein. Der praktischste Parameter ist aber mit Sicherheit -h – so wird die Ausgabe “human readable”, also für Menschen besser lesbar, und df redet nicht länger von Blöcken, sondern verwendet Maßangaben wie G (GByte), M (MByte) und K (KByte) (Listing 2). Die meisten Zeilen im Listing informieren über virtuelle Dateisysteme – echte Plattenpartitionen erkennen Sie daran, dass die Gerätenamen in der Zeile Dateisystem mit /dev/ anfangen.

Listing 2

Ausgabe von “df -h”

$ df -h
Dateisystem            Größe Benut  Verf Ben% Eingehängt auf
/dev/sda1             7,5G  3,7G  3,5G  51% /
tmpfs                 367M     0  367M   0% /lib/init/rw
varrun                367M  104K  367M   1% /var/run
varlock               367M     0  367M   0% /var/lock
udev                  367M  2,7M  365M   1% /dev
tmpfs                 367M   24K  367M   1% /dev/shm
lrm                   367M  2,0M  365M   1% /lib/modules/2.6.27-11-generic/volatile

Tipp: Größe von Verzeichnissen und Dateien bestimmen

Der Befehl ls zeigt zusammen mit der Option -l ausführliche Informationen an. Hängen Sie zusätzlich den Parameter -h an, präsentiert das Tool zum Auflisten von Dateien und Ordnern auch eine “human-readable”-Form, genau wie df (Listing 3).

Listing 3

Ausgabe von “df -h”

$ ls -lh /var/cache/apt
insgesamt 25M
drwxr-xr-x 3 root root 68K 2009-02-03 16:50 archives
-rw-r--r-- 1 root root 13M 2009-02-03 16:51 pkgcache.bin
…

Um jetzt die Größe eines gesamten Verzeichnisses herauszufinden, müssen Sie nicht mit ls den gesamten Inhalt anzeigen und dann die Werte zusammenrechnen. Das praktische Kommando du erledigt das für Sie:

$ du -sh /var/cache/apt/archives
573M    /var/cache/apt/archives/

Tipp: Zu welchen Gruppen gehöre ich?

Gerade in Zusammenhang mit fehlenden Zugriffsrechten auf bestimmte Hardware empfehlen erfahrene Nutzer auf den Mailinglisten häufig, zu überprüfen, ob der eigene Account denn Mitglied der Gruppe scanner, dialout, fax oder Ähnliches ist. Das Kommando groups verrät Ihnen schnell, wo der eigene Account Mitglied ist:

$ groups
huhn adm dialout fax cdrom tape dip video plugdev scanner fuse netdev lpadmin admin sambashare

Tipp: Informationen zum System mit “uname” anzeigen

Welchen Kernel hat das System gebootet? Wie heißt der Rechner? Welche Architektur hat der Computer? Alle diese Dinge verrät der Befehl uname. Je nachdem, welchen Aufrufparameter Sie übergeben, gibt sich das Kommando mehr oder weniger informativ. So verrät -n beispielsweise den Rechnernamen oder -o den Namen des Betriebssystems. Der Befehl

$ uname -a
Linux ubuntu 2.6.27-11-generic #1 SMP Thu Jan 29 19:24:39 UTC 2009 i686 GNU/Linux

zeigt alle verfügbaren Informationen an.

Infos

[1] Artikel zum Bootvorgang: Andrea Müller, “Hochfahren”, EasyLinux 01/2004, S. 74 ff., http://www.easylinux.de/2004/01/074-boot/

EasyLinux 02/2009 KAUFEN
EINZELNE AUSGABE
ABONNEMENTS
TABLET & SMARTPHONE APPS
E-Mail Benachrichtigung
Benachrichtige mich zu:

Hinweis: Dieser Artikel ist älter als ein Jahr, enthaltene Informationen sind möglicherweise veraltet.

0 Kommentare
Älteste
Neuste Beste Bewertung
Inline Feedbacks
Alle Kommentare anzeigen
Nach oben