Rheinwerk Computing < openbook > Rheinwerk Computing - Professionelle Bücher. Auch für Einsteiger.
Professionelle Bücher. Auch für Einsteiger.

Inhaltsverzeichnis
Vorwort
1 Die Wurzeln von Ubuntu
2 Was ist Ubuntu?
3 Die Versionen im Detail
4 Daten sichern, migrieren und synchronisieren
5 Die Installation
6 Erste Schritte
7 Programme und Pakete installieren
8 Internet und E-Mail
9 Office
10 Grafik und Bildbearbeitung
11 Multimedia
12 Programmierung und Design
13 Software- und Paketverwaltung
14 Architektur
15 Backup und Sicherheit
16 Desktop-Virtualisierung
17 Serverinstallation
18 Administration und Monitoring
19 Netzwerke
20 Datei-Server – Ubuntu im Netzwerk
21 Der Server im Internet
22 Multimediaserver und Ihre persönliche Cloud
23 Hilfe
24 Befehlsreferenz
A Mark Shuttleworth
Stichwort

Jetzt Buch bestellen
Ihre Meinung?

Spacer
Ubuntu GNU/Linux von Marcus Fischer
Das umfassende Handbuch, aktuell zu Ubuntu 12.04 LTS »Precise Pangolin«
Buch: Ubuntu GNU/Linux

Ubuntu GNU/Linux
Rheinwerk Computing
1023 S., 7., aktualisierte Auflage, geb., mit DVD
39,90 Euro, ISBN 978-3-8362-1945-7
Pfeil 24 Befehlsreferenz
Pfeil 24.1 Dateiorientierte Kommandos
Pfeil 24.1.1 bzcat – Ausgabe von bzip2-komprimierten Dateien
Pfeil 24.1.2 cat – Dateien nacheinander ausgeben
Pfeil 24.1.3 chgrp – Gruppe ändern
Pfeil 24.1.4 cksum/md5sum/sum – Prüfsummen ermitteln
Pfeil 24.1.5 chmod – Zugriffsrechte ändern
Pfeil 24.1.6 chown – Eigentümer ändern
Pfeil 24.1.7 cmp – Dateien miteinander vergleichen
Pfeil 24.1.8 comm – zwei sortierte Textdateien vergleichen
Pfeil 24.1.9 cp – Dateien kopieren
Pfeil 24.1.10 csplit – Zerteilen von Dateien
Pfeil 24.1.11 cut – Zeichen oder Felder aus Dateien schneiden
Pfeil 24.1.12 diff – Vergleichen zweier Dateien
Pfeil 24.1.13 diff3 – Vergleich von drei Dateien
Pfeil 24.1.14 dos2unix – Dateien umwandeln
Pfeil 24.1.15 expand – Tabulatoren in Leerzeichen umwandeln
Pfeil 24.1.16 file – den Inhalt von Dateien analysieren
Pfeil 24.1.17 find – Suche nach Dateien
Pfeil 24.1.18 fold – einfaches Formatieren von Dateien
Pfeil 24.1.19 head – Anfang einer Datei ausgeben
Pfeil 24.1.20 less – Datei(en) seitenweise ausgeben
Pfeil 24.1.21 ln – Links auf eine Datei erzeugen
Pfeil 24.1.22 ls – Verzeichnisinhalt auflisten
Pfeil 24.1.23 more – Datei(en) seitenweise ausgeben
Pfeil 24.1.24 mv – Datei(en) verschieben oder umbenennen
Pfeil 24.1.25 nl – Datei mit Zeilennummer ausgeben
Pfeil 24.1.26 od – Datei(en) hexadezimal oder oktal ausgeben
Pfeil 24.1.27 rm – Dateien und Verzeichnisse löschen
Pfeil 24.1.28 sort – Dateien sortieren
Pfeil 24.1.29 split – Dateien in mehrere Teile zerlegen
Pfeil 24.1.30 tac – Dateien rückwärts ausgeben
Pfeil 24.1.31 tail – Ende einer Datei ausgeben
Pfeil 24.1.32 tee – Ausgabe duplizieren
Pfeil 24.1.33 touch – Zeitstempel verändern
Pfeil 24.1.34 tr – Zeichen ersetzen
Pfeil 24.1.35 type – Kommandos klassifizieren
Pfeil 24.1.36 umask – Datei-Erstellungsmaske ändern
Pfeil 24.1.37 uniq – doppelte Zeilen nur einmal ausgeben
Pfeil 24.1.38 wc – Zeilen, Wörter und Zeichen zählen
Pfeil 24.1.39 whereis – Suche nach Dateien
Pfeil 24.1.40 zcat, zless, zmore – Ausgabe von zip-Dateien
Pfeil 24.2 Verzeichnisorientierte Kommandos
Pfeil 24.2.1 basename – Dateianteil eines Pfadnamens
Pfeil 24.2.2 cd – Verzeichnis wechseln
Pfeil 24.2.3 dirname – Verzeichnisanteil eines Pfadnamens
Pfeil 24.2.4 mkdir – ein Verzeichnis anlegen
Pfeil 24.2.5 pwd – aktuelles Arbeitsverzeichnis ausgeben
Pfeil 24.2.6 rmdir – ein leeres Verzeichnis löschen
Pfeil 24.3 Verwaltung von Benutzern und Gruppen
Pfeil 24.3.1 exit, logout – eine Session oder Sitzung beenden
Pfeil 24.3.2 finger – Informationen zu Benutzern abfragen
Pfeil 24.3.3 groupadd etc. – Gruppenverwaltung
Pfeil 24.3.4 groups – Gruppenzugehörigkeit ausgeben
Pfeil 24.3.5 id – eigene Benutzer- und Gruppen-ID ermitteln
Pfeil 24.3.6 last – An- und Abmeldezeit eines Benutzers
Pfeil 24.3.7 logname – Name des aktuellen Benutzers
Pfeil 24.3.8 newgrp – Gruppenzugehörigkeit wechseln
Pfeil 24.3.9 passwd – Passwort ändern oder vergeben
Pfeil 24.3.10 useradd/adduser etc. – Benutzerverwaltung
Pfeil 24.3.11 who – eingeloggte Benutzer anzeigen
Pfeil 24.3.12 whoami – Namen des aktuellen Benutzers anzeigen
Pfeil 24.4 Programm- und Prozessverwaltung
Pfeil 24.4.1 at – Zeitpunkt für ein Kommando festlegen
Pfeil 24.4.2 batch – ein Kommando später ausführen lassen
Pfeil 24.4.3 bg – einen Prozess im Hintergrund fortsetzen
Pfeil 24.4.4 cron/crontab – Programme zeitgesteuert ausführen
Pfeil 24.4.5 fg – Prozesse im Vordergrund fortsetzen
Pfeil 24.4.6 jobs – Anzeigen von im Hintergrund laufenden Prozessen
Pfeil 24.4.7 kill – Signale an Prozesse mit Nummer senden
Pfeil 24.4.8 killall – Signale an Prozesse mit Namen senden
Pfeil 24.4.9 nice – Prozesse mit anderer Priorität ausführen
Pfeil 24.4.10 nohup – Prozesse nach dem Abmelden fortsetzen
Pfeil 24.4.11 ps – Prozessinformationen anzeigen
Pfeil 24.4.12 pgrep – Prozesse über ihren Namen finden
Pfeil 24.4.13 pstree – Prozesshierarchie in Baumform ausgeben
Pfeil 24.4.14 renice – Priorität laufender Prozesse verändern
Pfeil 24.4.15 sleep – Prozesse schlafen legen
Pfeil 24.4.16 su – Ändern der Benutzerkennung
Pfeil 24.4.17 sudo – Programme als anderer Benutzer ausführen
Pfeil 24.4.18 time – Zeitmessung für Prozesse
Pfeil 24.4.19 top – Prozesse nach CPU-Auslastung anzeigen
Pfeil 24.5 Speicherplatzinformationen
Pfeil 24.5.1 df – Abfrage des Speicherplatzes für Dateisysteme
Pfeil 24.5.2 du – Größe eines Verzeichnisbaums ermitteln
Pfeil 24.5.3 free – verfügbaren Speicherplatz anzeigen
Pfeil 24.6 Dateisystem-Kommandos
Pfeil 24.6.1 badblocks – überprüft defekte Sektoren
Pfeil 24.6.2 cfdisk – Partitionieren von Festplatten
Pfeil 24.6.3 dd – Datenblöcke zwischen Devices kopieren
Pfeil 24.6.4 dd_rescue – fehlertolerantes Kopieren
Pfeil 24.6.5 dumpe2fs – Analyse von ext2/ext3-Systemen
Pfeil 24.6.6 e2fsck – ein ext2/ext3-Dateisystem reparieren
Pfeil 24.6.7 fdformat – eine Diskette formatieren
Pfeil 24.6.8 fdisk – Partitionieren von Speichermedien
Pfeil 24.6.9 fsck – Reparieren und Überprüfen
Pfeil 24.6.10 mkfs – Dateisystem einrichten
Pfeil 24.6.11 mkswap – eine Swap-Partition einrichten
Pfeil 24.6.12 mount, umount – Dateisysteme an- oder abhängen
Pfeil 24.6.13 parted – Partitionen anlegen etc.
Pfeil 24.6.14 swapon, swapoff – Swap-Speicher (de-)aktivieren
Pfeil 24.6.15 sync – gepufferte Schreiboperationen ausführen
Pfeil 24.7 Archivierung und Backup
Pfeil 24.7.1 bzip2/bunzip2 – (De-)Komprimieren von Dateien
Pfeil 24.7.2 cpio, afio – Dateien archivieren
Pfeil 24.7.3 ccrypt – Dateien verschlüsseln
Pfeil 24.7.4 gzip/gunzip – (De-)Komprimieren von Dateien
Pfeil 24.7.5 mt – Streamer steuern
Pfeil 24.7.6 tar – Dateien und Verzeichnisse archivieren
Pfeil 24.7.7 Übersicht zu den Packprogrammen
Pfeil 24.8 Systeminformationen
Pfeil 24.8.1 cal – zeigt einen Kalender an
Pfeil 24.8.2 date – Datum und Uhrzeit
Pfeil 24.8.3 uname – Rechnername, Architektur und OS
Pfeil 24.8.4 uptime – Laufzeit des Rechners
Pfeil 24.9 Systemkommandos
Pfeil 24.9.1 dmesg – letzte Kernel-Boot-Meldungen
Pfeil 24.9.2 halt – alle laufenden Prozesse beenden
Pfeil 24.9.3 reboot – System neu starten
Pfeil 24.9.4 shutdown – System herunterfahren
Pfeil 24.10 Druckeradministration und Netzwerkbefehle
Pfeil 24.10.1 arp – Ausgeben von MAC-Adressen
Pfeil 24.10.2 ftp – Dateien übertragen
Pfeil 24.10.3 hostname – Rechnername ermitteln
Pfeil 24.10.4 ifconfig – Netzwerkzugang konfigurieren
Pfeil 24.10.5 mail/mailx – E-Mails schreiben und empfangen
Pfeil 24.10.6 netstat – Statusinformationen über das Netzwerk
Pfeil 24.10.7 nslookup (host/dig) – DNS-Server abfragen
Pfeil 24.10.8 ping – Verbindung zu einem anderen Rechner testen
Pfeil 24.10.9 Die r-Kommandos (rcp, rlogin, rsh)
Pfeil 24.10.10 ssh – sichere Shell auf einem anderen Rechner starten
Pfeil 24.10.11 scp – Dateien per ssh kopieren
Pfeil 24.10.12 rsync – Replizieren von Dateien und Verzeichnissen
Pfeil 24.10.13 traceroute – Route zu einem Rechner verfolgen
Pfeil 24.11 Benutzerkommunikation
Pfeil 24.11.1 wall – Nachrichten an alle Benutzer verschicken
Pfeil 24.11.2 write – Nachrichten an Benutzer verschicken
Pfeil 24.11.3 mesg – Nachrichten zulassen oder unterbinden
Pfeil 24.12 Bildschirm- und Terminalkommandos
Pfeil 24.12.1 clear – Löschen des Bildschirms
Pfeil 24.12.2 reset – Zeichensatz wiederherstellen
Pfeil 24.12.3 setterm – Terminaleinstellung verändern
Pfeil 24.12.4 stty – Terminaleinstellung abfragen oder setzen
Pfeil 24.12.5 tty – Terminalnamen erfragen
Pfeil 24.13 Onlinehilfen
Pfeil 24.13.1 apropos – nach Schlüsselwörtern suchen
Pfeil 24.13.2 info – GNU-Online-Manual
Pfeil 24.13.3 man – die traditionelle Onlinehilfe
Pfeil 24.13.4 whatis – Kurzbeschreibung zu einem Kommando
Pfeil 24.14 Sonstige Kommandos
Pfeil 24.14.1 alias/unalias – Kurznamen für Kommandos
Pfeil 24.14.2 bc – Taschenrechner
Pfeil 24.14.3 printenv/env – Umgebungsvariablen anzeigen

Rheinwerk Computing - Zum Seitenanfang

24.10 Druckeradministration und NetzwerkbefehleZur nächsten Überschrift

Die Druckerbefehle werden aus Platzgründen nur mit Kommando und der

jeweiligen Bedeutung beschrieben. Näheres entnehmen Sie hierbei den

entsprechenden man-Seiten.

Kommando Bedeutung
accept Druckerwarteschlange auf empfangsbereit setzen
cancel Druckaufträge stornieren
disable Drucker deaktivieren
enable Drucker aktivieren
lp Ausgabe auf dem Drucker mit dem Print-Spooler
lpadmin Verwaltungsprogramm für das CUPS-Print-Spooler-System
lpc Steuerung von Druckern
lphelp Optionen eines Druckers ausgeben
lpmove Druckerauftrag zu einem anderen Drucker verschieben
lpq Druckerwarteschlange anzeigen
lpr Dateien auf den Drucker ausgeben
lprm Druckaufträge in der Warteschlange stornieren
lpstat Status der Aufträge anzeigen
reject Warteschlange für weitere Aufträge sperren

Netzwerkbefehle

Netzwerkbefehle erfordern ein tieferes Verständnis. Wenn Sie als Serveradministrator mit Begriffen wie IP-Adresse, MAC-Adresse, DNS, FTP, SSH noch nichts anfangen können, wäre eine fortführende Lektüre wichtig.


Rheinwerk Computing - Zum Seitenanfang

24.10.1 arp – Ausgeben von MAC-AdressenZur nächsten ÜberschriftZur vorigen Überschrift

Wenn Sie die Tabelle mit den MAC-Adressen der kontaktierten Rechner benötigen, können Sie das Kommando arp verwenden. Ein Beispiel:

arp -a
fritz.box (192.168.0.254) auf 00:04:0E:A5:F5:4E
[ether] auf eth0

Im obigen Fall ist der Rechner über eine DSL-Modem/Router-Kombination an das Internet angeschlossen, eine sogenannte FritzBox. Die MAC-Adresse ist hierbei die sechsstellige Hexadezimalzahl

00:04:0E:A5: F5:4E.

Benötigen Sie hingegen die MAC-Nummer Ihrer eigenen Netzwerkkarte, so können Sie diese mit ifconfig ermitteln:

ifconfig -a
eth0 Protokoll:Ethernet
Hardware Adresse 00:0E:A6:86:03:CF

In der Zeile eth0 finden Sie hierbei die entsprechende MAC-Adresse unter Hardware Adresse.


Rheinwerk Computing - Zum Seitenanfang

24.10.2 ftp – Dateien übertragenZur nächsten ÜberschriftZur vorigen Überschrift

Mit Hilfe von ftp (File Transfer Protocol) können Sie Dateien innerhalb eines Netzwerks (zum Beispiel Internet) zwischen verschiedenen Rechnern transportieren. Da ftp über eine Menge Features und Funktionen verfügt, soll hier nur auf den »Hausgebrauch« eingegangen werden, und zwar darauf, wie Sie Daten von einem entfernten Rechner abholen und auf diesen transferieren. Zunächst müssen Sie sich auf dem Server einloggen. Dies geschieht üblicherweise mit ftp Server_Name.

Nachdem ftp eine Verbindung mit dem Server aufgenommen hat, werden Sie aufgefordert, Ihren Benutzernamen und anschließend das Passwort einzugeben. Wenn alles korrekt war, befindet sich vor dem Prompt ftp> und wartet auf weitere Anweisungen. Jetzt können Sie im Eingabe-Prompt Folgendes machen:

  • gewünschtes Verzeichnis durchsuchen: cd, dir, lcd (lokales Verzeichnis)
  • FTP-Parameter einstellen: type binary, hash, prompt
  • Datei(en) abholen: get, mget
  • Datei(en) hochladen: put, mput
  • abmelden: bye oder exit

Natürlich bietet ftp weitaus mehr Befehle als diese an, aber alle aufzulisten würde den Rahmen des Buchs sprengen. Im Folgenden soll der Umgang mit ftp anhand eines Beispiels erläutert werden. Zunächst loggen Sie sich per FTP auf einen Server ein:

ftp upload.meinserver.de
Connected to upload.meinserver.de.
220 Welcome to FTP service.
Name (upload.meinserver.de:hatt): <Mein Login>
331 Please specify the password.
Password:
230 Login successful. Have fun.
Remote system type is UNIX.
Using binary mode to transfer files.

Als Nächstes werden Sie sich wohl das Inhaltsverzeichnis ansehen wollen. Verwenden Sie den Befehl dir (der auf Linux-Systemen meistens dem Aufruf von ls -l entspricht) zum Auflisten:

ftp> dir
200 PORT command successful. Consider using PASV.
150 Here comes the directory listing.
drwxr-xr-x 9 1092 1091 4096 Dec 17 15:31 .
drwxr-xr-x 8 0 0 4096 Mar 07 2005 ..
drwxr-xr-x 5 1092 1091 4096 Sep 04 2001 OLD
drwxr-xr-x 3 1092 1091 4096 Sep 03 2001 counter
drwxr-xr-x 8 1092 1091 4096 Sep 02 2001 daten

Wollen Sie nun in ein Verzeichnis wechseln, so können Sie auch hier das schon bekannte Kommando cd verwenden. Ebenso sieht es aus, wenn Sie das aktuelle Arbeitsverzeichnis erfahren wollen, in dem Sie sich gerade befinden.

Hier leistet das bekannte pwd seine Dienste. Das aktuelle Verzeichnis auf dem lokalen Rechner können Sie mit dem Kommando lcd wechseln. Sie können übrigens auch die Befehle auf Ihrem lokalen Rechner verwenden, wenn Sie ein !-Zeichen davor setzen. Hierzu ein Beispiel, das die Befehle nochmals demonstriert.

ftp> pwd
257 "/htdocs"
ftp> cd daten
250 Directory successfully changed.
ftp> pwd
257 "/htdocs/daten"
ftp> !pwd
/home/hatt
ftp> lcd text
Local directory now /home/hatt/text
ftp>

Hier befinden wir uns auf dem Remote-Rechner im Verzeichnis daten, lokal sind wir mittels lcd in das Verzeichnis text gewechselt.

Im entfernten Verzeichnis soll sich die Datei server.txt befinden, die wir auf den Server befördern wollen. Das geschieht mit dem Kommando get:

ftp> get server.txt
local: server.txt remote: server.txt
200 PORT command successful
150 Opening BINARY mode data connection
server.txt (3231 bytes)
226 Transfer complete.

Und schon haben wir die Datei server.txt auf den lokalen Rechner ins Verzeichnis text kopiert. Wollen Sie mehrere Dateien oder gar ganze Verzeichnisse holen, so verwenden Sie mget. Hierbei stehen Ihnen auch die Wildcard-Zeichen * und ? zur Verfügung. Damit mget Sie bei mehreren Dateien nicht jedes Mal fragt, ob Sie diese wirklich holen wollen, können Sie den interaktiven Modus mit prompt abstellen.

Haben Sie jetzt die Datei server.txt bearbeitet und wollen Sie diese wieder hochladen, so verwenden Sie put (oder bei mehreren Dateien mput).

ftp> put server.txt
local: server.txt remote: server.txt
200 PORT command successful
150 Opening BINARY mode data connection
for server.txt
226 Transfer complete.
3231 bytes sent in 0.000106 secs

Damit sollten Sie erfolgreich Dateien ein- und auschecken können. Sie verlassen das System wieder mittels quit, bye oder exit.

Icon

Bedenken Sie, dass ftp nicht ganz sicher ist, da Sie bei der Authentifizierung das Passwort unverschlüsselt übertragen.


Rheinwerk Computing - Zum Seitenanfang

24.10.3 hostname – Rechnername ermittelnZur nächsten ÜberschriftZur vorigen Überschrift

Das Kommando hostname können Sie verwenden, um den Namen des lokalen Rechners anzuzeigen, zu setzen oder zu verändern. So ein Name erhält eigentlich erst im Netzwerkbetrieb seine echte Bedeutung. Im Netz besteht ein vollständiger Rechnername (Fully Qualified Domain Name) aus einem Eigennamen und einem Domainnamen. Der (DNS-)Domainname bezeichnet das lokale Netz, an dem der Rechner hängt.

Ohne Angabe einer Option wird der vollständige Rechnername ausgegeben. Mit der Option -s geben Sie nur den Eigennamen des Rechners aus und mit -d nur den (DNS-)Domainnamen des lokalen Netzes.

hostname
ripley.nostromo.com
hostname -s
ripley
hostname -d
nostromo.com

Rheinwerk Computing - Zum Seitenanfang

24.10.4 ifconfig – Netzwerkzugang konfigurierenZur nächsten ÜberschriftZur vorigen Überschrift

Mit dem Kommando ifconfig können Sie die Einstellungen einer Netzwerkschnittstelle abfragen oder setzen. Alle Einstellungen können Sie sich mit der Option -a anzeigen lassen. Dabei werden auch die inaktiven Schnittstellen aufgelistet. Die Syntax zu ifconfig lautet:

ifconfig Schnittstelle [Addresse [Parameter]]

Dabei geben Sie den Namen der zu konfigurierenden Schnittstelle an. Befindet sich etwa auf Ihrem Rechner eine Netzwerkkarte, so lautet unter Linux die Schnittstelle hierzu eth0, die zweite Netzwerkkarte im Rechner (sofern eine vorhanden ist) wird mit eth1 angesprochen. Die Adresse ist die IP-Adresse, die der Schnittstelle zugewiesen werden soll. Hierbei können Sie die Dezimalnotation (xxx.xxx.xxx.xxx) verwenden oder einen Namen, den ifconfig in /etc/host nachschlägt.

Verwenden Sie ifconfig ohne die Option -a, um sich einen Überblick zu verschaffen, dann werden die inaktiven Schnittstellen nicht mit angezeigt. Der Aufruf für die Schnittstelle zu Ethernet-Karte eth0 sieht beispielsweise wie folgt aus:

ifconfig
eth0
Link encap:Ethernet HWaddr 00:02:2A:D4:2C:EB
inet addr:192.168.1.1
Bcast:192.168.1.255 Mask:255.255.255.0
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:80 errors:0 dropped:0 overruns:0 frame:0
TX packets:59 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:100
RX bytes:8656 (8.4 KiB) TX bytes:8409 (8.2 KiB)
Interrupt:11 Base address:0xa000
lo
Link encap:Local Loopback
inet addr:127.0.0.1 Mask:255.0.0.0
UP LOOPBACK RUNNING MTU:16436 Metric:1
RX packets:8 errors:0 dropped:0 overruns:0 frame:0
TX packets:8 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:0
RX bytes:560 (560.0 b) TX bytes:560 (560.0 b)
...

Wenn IPv6 konfiguriert ist, kommt noch die IPv6-Adresse dazu. Der Ausgabe entnehmen Sie, dass auf dieser Netzwerkkarte 59 Pakete gesendet (TX) und 80 empfangen (RX) wurden. Die maximale Größe einzelner Pakete beträgt 1.500 Byte (MTU). Die MAC-Adresse (Hardwareadresse), die unsere Netzwerkkarte eindeutig identifiziert (außer sie wird manipuliert), lautet 00:02:2A:D4:2C:EB.

Wollen Sie eine Schnittstelle ein- oder ausschalten, so können Sie dies mit den zusätzlichen Parametern up (für Einschalten) und down (für Abschalten) vornehmen. In unserem Beispiel dient wieder die Netzwerkkarte mit dem Namen eth0 als Schnittstelle:

sudo ifconfig eth0 down

Hier haben Sie die Netzwerkkarte eth0 abgeschaltet. Einschalten können Sie sie folgendermaßen:

sudo ifconfig eth0 up

Eine IP-Adresse stellen Sie ein oder verändern sie ebenfalls mit ifconfig:

sudo ifconfig eth0 192.18.19.91

Wollen Sie bei der Schnittstelle Netzmaske und Broadcast-Adresse verändern, so ist dies mit ifconfig wenig Arbeit (unterlassen Sie es, wenn Sie nicht genau wissen, was Netzmaske und Broadcast-Adresse sind):

sudo ifconfig eth0 10.25.38.41 netmask 255.255.255.0 broadcast 10.25.38.255

Damit weisen Sie der Netzwerkkarte die IP-Adresse 10.25.38.41 aus dem Netz 10.25.38.xxx zu. Mit netmask geben Sie an, wie groß das Netz ist (hier ein Netzwerk der Klasse C).


Rheinwerk Computing - Zum Seitenanfang

24.10.5 mail/mailx – E-Mails schreiben und empfangenZur nächsten ÜberschriftZur vorigen Überschrift

Mit dem Kommando mail können Sie aus einem Shell-Skript heraus E-Mails versenden. Zuvor muss für Ubuntu allerdings noch die Postfix-Konfiguration angepasst werden. Näheres hierzu entnehmen Sie der Dokumentation zu Postfix. Mit Hilfe der Option -s können Sie dann eine einfache Text-E-Mail mit dem Betreff (-s = Subject) an eine Adresse schicken, beispielsweise:

echo "Hallo" | mail -s "Betreff" rhatt@gmx.de

Da nicht alle mail-Kommandos die Option -s für einen Betreff haben, können Sie gegebenenfalls auch auf mailx oder Mail (mit großem »M«) zurückgreifen, die auf einigen Systemen vorhanden sind. Mit cat können Sie natürlich auch den Inhalt einer ganzen Datei an die E-Mail-Adresse senden:

cat datei.txt | mail -s "Ein Textdatei" rhatt@gmx.de

Dabei können Sie auch die Ausgaben eines Kommandos per mail an eine Adresse versenden:

ps -ef | mail -s "Prozesse 12Uhr" rhatt@gmx.de

Sinnvoll kann dies zum Beispiel sein, wenn auf einem System ein bestimmtes Limit überschritten wurde. Dann können Sie sich (oder einem anderen Benutzer) eine Nachricht zukommen lassen. Ebenso kann überprüft werden, ob ein Server dauerhaft verfügbar ist. Testen Sie etwa stündlich (zum Beispiel mit cron) mittels nmap (hier können Sie nicht nur nachsehen, ob die Netzwerkkarte das UDP-Paket zurückschickt, sondern auch direkt schauen, ob der Port des betreffenden Dienstes noch offen ist), ob der Server erreichbar ist. Ist er es einmal nicht, können Sie sich hierüber eine Nachricht zukommen lassen. Zusätzliche Optionen, die Sie mit mail und mailx verwenden können, sind:

Option Bedeutung
-s Betreff Hier können Sie den Betreff (Subject) der E-Mail angeben.
-c Adresse Diese Adresse bekommt eine Kopie der E-Mail.
-b Adresse Diese Adresse bekommt eine Blind Carbon Copy der E-Mail.

Rheinwerk Computing - Zum Seitenanfang

24.10.6 netstat – Statusinformationen über das NetzwerkZur nächsten ÜberschriftZur vorigen Überschrift

Für die Anwendung von netstat gibt es viele Möglichkeiten. Mit einem einfachen Aufruf von netstat zeigen Sie den Zustand einer bestehenden Netzwerkverbindung an. Neben der Überprüfung von Netzwerkverbindungen können Sie mit netstat Routentabellen, Statistiken zu Schnittstellen, maskierte Verbindungen und noch vieles mehr anzeigen lassen. In der Praxis lässt sich somit problemlos die IP-Adresse oder der Port eines ICQ-Users ermitteln oder ob ein Rechner mit einen Trojaner infiziert ist. Hier einige Beispiele:

netstat -nr

Mit diesem Befehl lassen Sie sich die Routing-Tabelle (-r) des Kernels ausgeben. Mit der Option -i erhalten Sie die Schnittstellenstatistik:

netstat -i

Mit netstat -ta erhalten Sie die Anzeige aller Verbindungen. Die Option -t steht dabei für TCP. Mit -u, -w oder -x zeigen Sie die UDP-, RAW- oder UNIX-Sockets an. Mit -a werden dabei auch die Sockets angezeigt, die noch auf eine Verbindung warten.


Rheinwerk Computing - Zum Seitenanfang

24.10.7 nslookup (host/dig) – DNS-Server abfragenZur nächsten ÜberschriftZur vorigen Überschrift

Mit nslookup können Sie aus dem Domainnamen eine IP-Adresse oder die IP-Adresse zu einem Domainnamen ermitteln. Zur Auflösung des Namens wird gewöhnlich der DNS-Server verwendet. Bei der Verwendung von nslookup werden Sie lesen, dass nslookup künftig von den Kommandos host oder dig abgelöst wird. Hier sehen Sie nslookup und host bei der Ausführung über einen vorgeschalteten Router

(IP-Adresse: 192.168.0.254):
nslookup www.google.de
Server: 192.168.0.254
Address: 192.168.0.254#53
Non-authoritative answer:
...
Name: www.l.google.com
Address: 66.249.93.104
Name: www.l.google.com
Address: 66.249.93.99
host www.google.de
www.google.de is an alias for www.google.com.
www.google.com is an alias for www.l.google.com.
www.l.google.com has address 64.233.183.104

Rheinwerk Computing - Zum Seitenanfang

24.10.8 ping – Verbindung zu einem anderen Rechner testenZur nächsten ÜberschriftZur vorigen Überschrift

Wollen Sie die Netzwerkverbindung zu einem anderen Rechner testen oder einfach nur den lokalen TCP/IP-Stack überprüfen, so können Sie das Kommando ping (Packet Internet Groper) verwenden. Die Syntax lautet ping Host. ping überprüft dabei, ob der Host (IP-Adresse oder Domainname) antwortet.

ping bietet eine Menge zusätzlicher Optionen an, die noch mehr Infos liefern, die allerdings hier aus Platzgründen nicht genauer erläutert werden können. Zur Überprüfung sendet ping ein ICMP-Paket vom Typ ICMP Echo Request an die Netzwerkstation. Hat die Netzwerkstation das Paket empfangen, sendet sie ebenfalls ein ICMP-Paket, allerdings vom Typ ICMP Echo Reply, zurück.

ping -c3 www.google.de
PING www.l.google.com (66.249.93.104) 56(84) bytes
64 bytes from 66.249.93.104: icmp_seq=1 time=74.8 ms
64 bytes from 66.249.93.104: icmp_seq=2 time=75.3 ms
64 bytes from 66.249.93.104: icmp_seq=3 time=75.5 ms
--- www.l.google.com ping statistics ---
3 packets transmitted, 3 received, 0% packet loss,
time 2002ms
rtt min/avg/max/mdev = 74.831/75.249/75.575/0.443 ms

Hier wurden drei Pakete (mit der Option -c kann die Anzahl der Pakete angegeben werden) an www.google.de gesendet und wieder erfolgreich empfangen, wie aus der Zusammenfassung am Ende zu entnehmen ist. Rufen Sie ping hingegen ohne eine Option auf wie hier

ping www.google.de

so müssen Sie selbst für eine Beendigung des Datenaustauschs zwischen den Rechnern sorgen. Ein einfaches Strg + C tut in diesem Fall seinen Dienst, und Sie erhalten ebenfalls wieder eine Zusammenfassung. Neben der Möglichkeit, die Verfügbarkeit eines Rechners und des lokalen TCP/IP-Stacks zu prüfen (ping localhost), können Sie außerdem auch die Laufzeit von Paketen vom Sender zum Empfänger ermitteln. Hierzu wird die Zeit halbiert, bis das »Reply« eintrifft.


Rheinwerk Computing - Zum Seitenanfang

24.10.9 Die r-Kommandos (rcp, rlogin, rsh)Zur nächsten ÜberschriftZur vorigen Überschrift

Aus Sicherheitsgründen empfiehlt es sich, die Tools rcp, rlogin und rsh nicht mehr einzusetzen und stattdessen auf die mittlerweile sichereren Alternativen ssh und scp zu setzen. Bei den unsicheren r-Kommandos wird das Passwort beim Einloggen im Klartext, also ohne jede Verschlüsselung, übertragen.

Bedenken Sie, dass ein unverschlüsseltes Passwort, das zwischen zwei Rechnern im Internet übertragen wird, jederzeit (mit einem »Sniffer«) abgefangen und mitgelesen werden kann. Für Passwörter gilt im Allgemeinen, dass man diese niemals im Netz unverschlüsselt übertragen sollte. Da es mittlerweile Möglichkeiten zur Passwortübertragung mit der Secure Shell (ssh) gibt, haben die r-Kommandos eigentlich keine Berechtigung mehr.

Schlimmer noch, für die Befehle rsh und rcp war auf den Zielrechnern nicht einmal ein Passwort nötig. Eine Authentifizierung erfolgte hierbei über die Dateien /etc/hosts.equiv und /.rhosts. Darin wurden einzelne Rechner eingetragen, die als vertrauenswürdig empfunden wurden und so die Passwort-Authentifizierung umgehen konnten.


Rheinwerk Computing - Zum Seitenanfang

24.10.10 ssh – sichere Shell auf einem anderen Rechner startenZur nächsten ÜberschriftZur vorigen Überschrift

Der Dienst ssh (Secure Shell) zählt mittlerweile zu einem der wichtigsten Dienste überhaupt. Er ermöglicht es, eine verschlüsselte Verbindung zwischen zwei Rechnern aufzubauen. ssh wurde aus der Motivation heraus entwickelt, sichere Alternativen zu telnet und den r-Kommandos zu schaffen.

Wenn Sie zum ersten Mal eine Verbindung zu einem anderen Rechner herstellen, bekommen Sie gewöhnlich eine Warnung, in der ssh nachfragt, ob Sie dem anderen Rechner vertrauen wollen. Wenn Sie mit »yes« antworten, speichert ssh den Namen und den RSA-Fingerprint (dies ist ein Code zur eindeutigen Identifizierung des anderen Rechners) in der Datei /.ssh/known_hosts. Beim nächsten Starten von ssh erfolgt diese Abfrage dann nicht mehr.

Im nächsten Schritt erfolgt die Passwortabfrage, die verschlüsselt übertragen wird. Bei korrekter Eingabe des Passworts beginnt die Sitzung auf dem anderen Rechner (als hätten Sie diesen Rechner vor sich). Die Syntax lautet:

ssh -l Loginname Rechnername

Zur Beruhigung der ganz Ängstlichen: Für jede Verbindung über ssh wird zwischen den Rechnern immer ein neuer Sitzungsschlüssel ausgehandelt. Will ein Angreifer einen solchen Schlüssel knacken, benötigt er unglaublich viel Zeit. Sobald Sie sich ausloggen, müsste der Angreifer erneut versuchen, den Schlüssel zu knacken. Dieses Szenario ist natürlich nur rein theoretisch, denn es handelt sich immerhin um Schlüssel wie RSA, Blowfish, IDEA und TRIPLE-DES, zwischen denen Sie hier wählen können. Alle diese Schlüssel gelten als sehr sicher.


Rheinwerk Computing - Zum Seitenanfang

24.10.11 scp – Dateien per ssh kopierenZur nächsten ÜberschriftZur vorigen Überschrift

Das Kommando scp ist Teil einer ssh-Installation, mit der Sie Dateien sicher zwischen unterschiedlichen Rechnern kopieren. scp funktioniert genauso wie das lokale cp. Der einzige Unterschied ist natürlich die Angabe der Pfade auf den entfernten Rechnern.

Dabei sieht die Verwendung des Rechnernamens wie folgt aus: benutzer@rechner:/verzeichnis/zum/ziel.

Um auf einen Account meinserver.de zu gelangen, dessen Benutzername meinlogin lautet, verfahren Sie wie folgt:

scp datei.txt meinlogin@meinserver.de:~
meinlogin@meinserver.de's password:********
datei.txt 100% 3231
3.2KB/s 00:00
scp meinlogin@meinserver.de:~/bilder/bild.gif $HOME
meinlogin@meinserver.de's password:********
baum.gif 100%
8583
8.4KB/s 00:00

Zuerst wurde die Datei datei.txt aus dem aktuellen lokalen Verzeichnis in das Heimverzeichnis von meinserver.de kopiert (/home/meinlogin). Anschließend wurde aus dem Verzeichnis\linebreak /home/meinlogin/bilder die GIF-Datei bild.gif auf meinen lokalen Rechner kopiert. scp ist in der Tat eine interessante Lösung, um Dateien auf mehreren Rechnern mit einem Skript zu kopieren.

Passwortabfrage umgehen

Was allerdings bei der Skriptausführung stören dürfte (besonders wenn diese automatisch geschehen sollte), ist die Passwortabfrage, denn durch die würde der Prozess angehalten. Hierzu bietet es sich an, sich mit Hilfe eines asymmetrischen Verschlüsselungsverfahrens ein Login ohne Passwort zu verschaffen. Dazu stellen Sie am besten auf dem Clientrechner mit dem Programm ssh-keygen ein entsprechendes Schlüsselpaar (hier mit einem RSA-Schlüssel) bereit:

ssh-keygen -t rsa
Generating public/private rsa key pair.
Enter file in which to save the key
(/home/hatt/.ssh/id_rsa): Enter
Enter passphrase (empty for no passphrase): Enter
Enter same passphrase again: Enter
Your identification has been saved
in /home/hatt/.ssh/id_rsa.
Your public key has been saved
in /home/hatt/.ssh/id_rsa.pub.
The key fingerprint is:
46:85:12:80:9d:a7:62:01:18:0f:1c:a0:27:61:a2:94
marcus@august

In diesem Beispiel wurden zwei RSA-Schlüssel ohne Passphrase erstellt. Jetzt haben Sie zwei Schlüssel, einen privaten (id_rsa) und einen öffentlichen (id_rsa.pub). Damit Sie alle ssh-Aktionen ohne Passwort durchführen können, müssen Sie den öffentlichen Schlüssel nur noch auf den Benutzeraccount des Servers hochladen.

scp .ssh/id_rsa.pub \
meinlogin@meinserver.de:~/.ssh/
meinlogin@meinserver.de.de's password:********
id_rsa.pub 100% 219
0.2KB/s 00:00

Loggen Sie sich nun noch einmal ein, und hängen Sie die Datei id_rsa.pub an die Datei

~/.ssh/authorized_keys:

ssh meinlogin@meinserver.de
meinlogin@meinserver.de's password:********
...
cd ~/.ssh
ls
id_rsa.pub known_hosts
cat id_rsa.pub >> authorized_keys

Nach dem erneuten Einloggen über ssh oder nach dem Kopieren mit scp sollte die Passwortabfrage der Vergangenheit angehören.


Rheinwerk Computing - Zum Seitenanfang

24.10.12 rsync – Replizieren von Dateien und VerzeichnissenZur nächsten ÜberschriftZur vorigen Überschrift

Das Kommando rsync wird verwendet, um Dateien oder ganze Verzeichnisse oder Verzeichnisbäume zu synchronisieren. Hierbei kann sowohl eine lokale als auch eine entfernte Synchronisation erfolgen.

Syntaktisch nicht korrekt

Der Ausdruck »synchronisieren« ist rein syntaktisch nicht richtig. Man kann zwar einem Verzeichnisbaum »X« Daten hinzufügen, so dass dieser exakt denselben Inhalt erhält wie der Verzeichnisbaum »Y«. Dies funktioniert allerdings umgekehrt nicht. Man spricht hierbei korrekt vom »Replizieren«. Die Syntax zu rsync lautet:

rsync [Optionen] Quelle Ziel

Einige Beispiele:

rsync -avzb -e ssh meinserver.de:/ /home/marcus/backups/

Diese Eingabe synchronisiert die Website meinserver.de mit dem lokalen Verzeichnis /home/marcus/backups. Mit a verwenden Sie den Archive-Modus, mit b werden Backups erstellt, und mit v (für verbose) wird rsync etwas gesprächiger.

Komprimieren

Durch die Option z werden die Daten komprimiert übertragen. Außerdem wird mit der Option -e und ssh eine verschlüsselte Datenübertragung verwendet.

Geben Sie bei der Quelle als letztes Zeichen einen Slash (/) an, so wird dieses Verzeichnis nicht mitkopiert, sondern nur der darin enthaltene Inhalt, beispielsweise:

rsync -av /home/marcus/ubuntubuch/ /home/marcus/backups

Hier wird der Inhalt von /home/marcus/ubuntubuch nach /home/marcus/backups kopiert. Würden Sie hingegen

rsync -av /home/marcus/ubuntubuch /home/marcus/backups

schreiben, so würde in /home/marcus/backups das Verzeichnis ubuntubuch angelegt (/home/marcus/backups/ubuntubuch/) und alles dorthin kopiert. Dieser Fehler hat schon viele Anwender einige Nerven gekostet.

Es folgt nun ein Überblick zu einigen Optionen von rsync. Weiterführende Informationen zu rsync finden Sie auf der Website http://rsync.samba.org oder wie üblich auf der Manual-Seite.

Option Bedeutung
-a (archive mode): Kopiert alle Unterverzeichnisse mitsamt Attributen (Symlinks, Rechte, Dateidatum, Gruppe, Devices) sowie (wenn man Root ist) den Eigentümer der Datei(en).
-v (verbose): Gibt während der Übertragung eine Liste der übertragenen Dateien aus.
-n (dry-run): nichts schreiben, sondern den Vorgang nur simulieren – ideal zum Testen
-e Programm Wenn in der Quelle oder dem Ziel ein Doppelpunkt enthalten ist, interpretiert rsync den Teil vor dem Doppelpunkt als Hostnamen und kommuniziert über das mit -e spezifizierte Programm. Gewöhnlich wird hierbei als Programm ssh verwendet. Weitere Parameter können Sie diesem Programm in Anführungszeichen gesetzt übergeben.
-z Der Parameter -z bewirkt, dass rsync die Daten komprimiert überträgt.
--delete --force, --delete-excluded Löscht alle Einträge im Zielverzeichnis, die im Quellverzeichnis nicht (mehr) vorhanden sind.
--partial Wurde die Verbindung zwischen zwei Rechnern getrennt, so wird die nicht vollständig empfangene Datei nicht gelöscht. So kann bei einem erneuten rsync die Datenübertragung fortgesetzt werden.
--exclude=Pattern Hier kann man Dateien angeben, die man ignorieren möchte. Reguläre Ausdrücke sind möglich.
-x Schließt alle Dateien auf einem Filesystem aus, die in ein Quellverzeichnis hineingemountet sind.

Rheinwerk Computing - Zum Seitenanfang

24.10.13 traceroute – Route zu einem Rechner verfolgenZur vorigen Überschrift

traceroute ist ein TCP/IP-Tool, mit dem Informationen darüber ermittelt werden können, welche Computer ein Datenpaket über ein Netzwerk passiert, bis es bei einem bestimmten Host ankommt. Zum Beispiel:

traceroute www.heise.de
traceroute to www.heise.de (193.99.144.85),
30 hops max, 38 byte packets
1 fritz.box (192.168.0.254) 0.660 ms 6.143 ms
2 217.0.116.165 (217.0.116.165) 32.240 ms 32.623 ms
3 217.0.71.242 (217.0.71.242) 32.934 ms 33.571 ms
4 m-ec1.M.DE.net.DTAG.DE (62.154.28.26) 46.186 ms
...


Ihre Meinung

Wie hat Ihnen das Openbook gefallen? Wir freuen uns immer über Ihre Rückmeldung. Schreiben Sie uns gerne Ihr Feedback als E-Mail an kommunikation@rheinwerk-verlag.de.

<< zurück
  Zum Rheinwerk-Shop
Zum Rheinwerk-Shop: Ubuntu GNU/Linux 12.04 LTS

Ubuntu GNU/Linux 12.04 LTS
Jetzt Buch bestellen


 Ihre Meinung?
Wie hat Ihnen das Openbook gefallen?
Ihre Meinung

 Buchempfehlungen
Zum Rheinwerk-Shop: Ubuntu 14.04 LTS






 Ubuntu 14.04 LTS


Zum Rheinwerk-Shop: Linux Handbuch






 Linux Handbuch


Zum Rheinwerk-Shop: Raspberry Pi






 Raspberry Pi


Zum Rheinwerk-Shop: Ubuntu Server






 Ubuntu Server


Zum Rheinwerk-Shop: IT-Handbuch für Fachinformatiker






 IT-Handbuch für
 Fachinformatiker


 Lieferung
Versandkostenfrei bestellen in Deutschland, Österreich und der Schweiz
InfoInfo





Copyright © Rheinwerk Verlag GmbH 2012
Für Ihren privaten Gebrauch dürfen Sie die Online-Version natürlich ausdrucken. Ansonsten unterliegt das Openbook denselben Bestimmungen, wie die gebundene Ausgabe: Das Werk einschließlich aller seiner Teile ist urheberrechtlich geschützt.
Alle Rechte vorbehalten einschließlich der Vervielfältigung, Übersetzung, Mikroverfilmung sowie Einspeicherung und Verarbeitung in elektronischen Systemen.


Nutzungsbestimmungen | Datenschutz | Impressum

Rheinwerk Verlag GmbH, Rheinwerkallee 4, 53227 Bonn, Tel.: 0228.42150.0, Fax 0228.42150.77, service@rheinwerk-verlag.de

Cookie-Einstellungen ändern