home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Chip 2000 May
/
Chip_2000-05_cd2.bin
/
docu
/
ascii
/
suselxde
/
slxde-19.txt
< prev
next >
Wrap
Text File
|
2000-02-29
|
71KB
|
1,512 lines
Kapitel 19
Einstieg in Linux
Unix ist ein derart komplexes System, dass im Folgenden nur die wichtigs-
ten Aspekte abgedeckt werden k÷nnen. Das vorliegende Handbuch ist nicht
darauf ausgelegt, etablierte Linux- bzw. Unix-Literatur zu ersetzen ¡ das soll
und kann es auch nicht.
In jedem Fall empfehlen wir fⁿr DOS-Aus- oder -Umsteiger die Beschaf-
fung eines entsprechenden Buches. Beispiele dafⁿr finden Sie in den Litera-
turempfehlungen im Anhang. Falls Sie bereits ⁿber nicht Linux-spezifische
Unix-Literatur verfⁿgen, so kann diese u. U. ausreichen, da der Gro▀teil der
Informationen ⁿber Systemgrenzen hinweg gⁿltig ist.
Einige Bⁿcher bzw. Auszⁿge davon, die der GPL unterliegen, befinden sich
als .dvi- bzw. PostScript-Dateien in Paket doc, Serie books. Diese k÷nnen
unter X11 mit XDvi (xdvi) bzw. Ghostview (gv) eingesehen und mit lpr
komplett oder auch seitenweise ausgedruckt werden.
Bis Sie Ihr Unix-Buch jedoch in HΣnden halten, sollen die folgenden Einstei-
gerinformationen Ihren Forscherdrang unterstⁿtzen helfen.
Als Unix-Neuling sollten Sie sich nach der erfolgreichen Installation unter
Ihrem bei der Installation eingegebenen Benutzernamen einloggen; nicht nur,
weil fⁿr diesen Benutzer schon diverse einstiegsfreundliche" Voreinstellun-
gen vorgenommen sind, sondern auch, weil Sie so, wie bei Unix-Systemen
ⁿblich, nur" die Verantwortung fⁿr Ihr Benutzerverzeichnis (engl. home
directory) tragen. Dieses Vorgehen, das Arbeiten unter einem Benutzerna-
men, dient bei Multiuser-Betriebssystemen ausschlie▀lich der Systemsicher-
heit. Ein versehentliches L÷schen bzw. VerΣndern von systemrelevanten Da-
teien etc. ist damit weitgehend ausgeschlossen.
Ein undelete wie unter DOS steht (noch) nicht zur Verfⁿgung, weshalb
auch bei unbeabsichtigter Einwirkung auf Systemdateien u. U. eine kom-
plette Neuinstallation erforderlich sein kann.
Der Einstieg in Linux gestaltet sich fⁿr einen AnfΣnger vor allem deshalb
so komplex, weil gleichzeitig damit die Σu▀erst anspruchsvolle Aufgabe des
Systemadministrators verbunden ist.
19.1 Einloggen, `root'-Benutzer, Benutzer anlegen
Die Mehrbenutzer-FΣhigkeiten (engl. multiuser) von Linux bedingen, dass
immer, wenn Sie das System benutzen wollen, Sie sich auf der Konsole
475
19. Einstieg in Linux
(auf der Sie zu arbeiten gedenken, vgl. Abschnitt 19.4 auf Seite 479) beim
System anmelden mⁿssen1. Diesen Vorgang, ein wesentlicher Teil des Sicher-
heitskonzepts eines modernen Mehrbenutzersystems, nennt man Einloggen;
dadurch wird u. a. sichergestellt, dass jeder Benutzer seine eigene Arbeitsum-
gebung erhΣlt und nur auf die eigenen Daten zugreifen kann. Sie geben also
Ihren Benutzernamen (z. B. `tux') und Ihr Passwort ein (z. B. xxxxxx);
die Zeichen xxxxxx mⁿssen Sie durch Ihr eigenes selbst vergebenes Pass-
wort ersetzen! Die Zeichen xxxxxx werden am Bildschirm nicht angezeigt;
geben Sie die Zeichen einfach der Reihe nach ein und tippen Sie dann 2:
login: tux
Password: xxxxxx
Wenn Sie erfolgreich eingeloggt" sind, befinden Sie sich im Benutzer-Ver-
zeichnis des jeweiligen Benutzers (z. B. /home/tux fⁿr den Benutzer
`tux').
Wenn Sie die Konsole verlassen wollen (ausloggen), geben Sie logout bzw.
exit ein.
Der Benutzer `root' agiert als Systemverwalter (Systemadministrator)
und darf wirklich ALLES. Wichtige Systemdateien k÷nnen nur von `root'
manipuliert werden. Loggen Sie sich daher nur dann als `root' ein, wenn
Sie diese M÷glichkeiten wirklich nutzen m÷chten. Sie schⁿtzen Ihr System
damit vor versehentlichen ─nderungen, die u. U. eine Neuinstallation erzwin-
gen k÷nnen.
Einige Dinge, die nur `root' gestattet sind:
* mounten von Dateisystemen wie CDs und Disketten und damit auch
die Installation von Software. Dieses Recht kann aber auch den normalen
Benutzern durch Angabe der Option user fⁿr das entsprechende GerΣt
in der /etc/fstab gewΣhrt werden (vgl. Abschnitt 19.11.2 auf Sei-
te 493).
* Anlegen und Entfernen von Benutzern (vgl. Abschnitt 3.6.7 auf Sei-
te 110).
* Installation eines neuen Kernels (vgl. Kapitel 13 auf Seite 353).
* Konfigurieren des Systems.
* Herunterfahren des Systems (vgl. Abschnitt 19.2).
* YaST aufrufen (vgl. Kapitel 3 auf Seite 81).
19.2 Anhalten des Systems und Booten
WICHTIG: Unter keinen UmstΣnden dⁿrfen Sie wΣhrend des Betriebs
einfach den Strom abschalten oder den Resetknopf (Zurⁿcksetzen) betΣ-
tigen; Sie wⁿrden sonst eine BeschΣdigung des Dateisystems riskieren.
Dies kann zum Datenverlust fⁿhren.
1 Wenn Sie ein grafisches Login konfiguriert haben (vgl. Abschnitt 3.6.5 auf Seite 109), dann
gilt das im folgenden beschriebene Vorgehen selbstverstΣndlich auch!
2 Falls Sie kein Passwort vergeben haben sollten, ist anfangs nur zu tippen!
476
19.3. Befehle ¡ Eingaben an der Kommando-Zeile
Zum regulΣren Anhalten des Rechners (engl. shutdown) dienen die in Tabel-
le 19.1 gezeigten Befehle.
shutdown -h now hΣlt das System an (Sie k÷nnen nach der Aus-
gabe: "the system is halted" gefahr-
los abschalten)
shutdown -r now startet das System nach dem Herunterfahren so-
fort neu
Tabelle 19.1: Befehle zum Anhalten des Linux-Systems
Der Befehl shutdown kann in all seinen Varianten im Allgemeinen nur vom
Benutzer `root' ausgefⁿhrt werden.
Um Ihr System herunterzufahren", loggen Sie sich also als `root' ein und
geben die Befehle shutdown -h now oder shutdown -r now ein.
Alternativ k÷nnen Sie zum Neustarten die Tastenkombination Strg + Alt
+ Entf ( Ctrl + Alt + Del )drⁿcken. Da diese Tastenkombination unter
X abgefangen wird, mⁿssen Sie zunΣchst X beenden. In der Textkonsole kann
sie aber von jedem Benutzer ausgefⁿhrt werden.
19.3 Befehle ¡ Eingaben an der Kommando-Zeile
Wenn auch die Linux-Welt immer bunter und leichter bedienbar wird, z. B.
ⁿber menⁿgesteuerte Programme, bleibt doch am Ende ¡ im Katastrophen-
fall oder wenn es eben kein menⁿgefⁿhrtes Programm fⁿr einen bestimmten
Zweck gibt ¡ nur noch die Eingabe von Unix- Befehlen".
Was sind Unix-Befehle?
Unix-Befehle sind
* ausfⁿhrbare Programme
* Shell-Skripten
* Skripten von Skript-Sprachen wie Perl, Python, Tcl usw.
* Shell-Aliasse (so etwas wie Shell-Makros).
Allen gemeinsam ist, dass sie in Dateien liegen: Wenn man ein Programm
unter Linux aufruft, dann weist man damit die Shell an, die Datei mit dem
Namen des Programms zu suchen ¡ dazu braucht man den Suchpfad, reprΣ-
sentiert in der Variablen PATH und insofern sie das Programm gefunden hat,
dieses auszufⁿhren, wenn es die entsprechenden Benutzerrechte (ausfⁿhrbar)
besitzt.
Was aber, wenn man dem Programm (z. B. dem Kopierbefehl) noch mitteilen
muss, mit welchen Dateien etwas geschehen soll?
Das ist relativ einfach, dazu gibt es so genannte Parameter (engl. parame-
ter). Parameter sind zusΣtzliche Argumente zu einem Befehl, die dem Befehl
477
19. Einstieg in Linux
notwendige Daten mitteilen. Die Parameter folgen in der Eingabezeile dem
Namen des Befehls, und zwar durch mindestens ein Leerzeichen getrennt3.
Weiterhin kann es oft notwendig sein, das Verhalten eines Befehls zu beein-
flussen (z. B. soll ein Verzeichnis in Langform anstelle nur der Dateinamen
aufgelistet werden). Dies geschieht unter Linux mit so genannten Optionen
(engl. options). Optionen stehen immer direkt nach dem Befehlsnamen und
vor den Parametern; Ausnahmen von unsauber programmierten Befehlen sind
selten, aber m÷glich. Meist werden Optionen durch ein Minus gekennzeich-
net (z. B. -la) und k÷nnen im Wesentlichen zwei Schemata folgen (vgl. Ta-
belle 19.2).
-a Kurzform, Unix-ⁿblich
--all Langform, sog. GNU-Notation
Tabelle 19.2: Optionen zu Befehlen
Wenn mehrere Optionen gesetzt werden sollen, k÷nnen viele Linuxprogram-
me diese auch kumulieren". Das bedeutet, dass nicht alle Optionen mit Mi-
nus am Anfang nacheinander aufgefⁿhrt werden, sondern nur die erste ein
Minus erhΣlt, die folgenden direkt an die erste geschrieben werden. Beispiel:
-a -f -r -u oder
-afru oder
-frua
Das Beispiel zeigt auch, dass i. a. die Reihenfolge der Optionen unwichtig ist.
Auch bestΣtigen manche Ausnahmen wieder die Regel.
Um dem ganzen die Krone aufzusetzen k÷nnen Optionen selbst wieder Para-
meter nehmen. Beispiel:
-f <meinedatei> oder
-f<meinedatei>
Dabei sollte es zumeist unwichtig sein, ob zwischen der Option und dem
Parameter ein Leerzeichen steht; i. a. sollte man ein Leerzeichen setzen.
Beispiele
So, die Zusammenfassung. Ein Befehl unter Linux sieht so aus (Beispiele)4:
erde: # fdisk
erde: # lsmod
erde: # ls
Mit Optionen sieht das dann so aus:
erde: # fdisk -v
erde: # ls -l -a
erde: # ls -la
Mit Parametern:
3 Fu▀note: Das impliziert auch gleich, dass ein Leerzeichen nicht Teil des Parameters sein kann,
da es ja der Argumente- Trenner" ist. Leerzeichen dⁿrfen dann in einem Parameter auftreten,
wenn der Parameter von Anfⁿhrungszeichen "" oder " umgeben ist.
4 Zur Erinnerung: mit erde: # " wird die Eingabe-Aufforderung angezeigt; dieser W÷rter
und Zeichen haben Sie nicht einzugeben
478
19.4. Virtuelle Konsolen
erde: # fdisk /dev/hda
erde: # ls /tmp
Und mit Optionen und Parametern:
erde: # ls -la /tmp
erde: # rpm -qpl <meinpaket>.rpm
erde: # gcc -o <optionenparameter> <paramater>
Wesentlich ist, dass das Leerzeichen alle Befehlsteile voneinander trennt und
deswegen ein besonderes Zeichen in Linux-Befehlsfolgen ist.
19.4 Virtuelle Konsolen
Linux ist multitasking- und multiuserfΣhig. Auch bei einem Ein-Benutzer-
PC-System werden Sie die Vorteile, die diese FΣhigkeiten mitbringen, schΣt-
zen lernen:
Im Textmodus stehen 6 virtuelle Konsolen zur Verfⁿgung, zwischen denen
Sie durch die Tastenkombinationen Alt + F1 bis Alt + F6 wechseln
k÷nnen. Die siebte Konsole ist fⁿr X11 reserviert.5
Wenn Sie von X11 aus auf eine Textkonsole zurⁿckschalten m÷chten, ohne
X11 zu beenden, verwenden Sie Ctrl + Alt + F1 bis Ctrl + Alt +
F6
. Mit Alt + F7 kommen Sie zu X11 zurⁿck.
19.5 Verzeichnisse und Dateinamen
Alle Informationen ¡ seien es Texte, Bilder, Datenbankdaten oder auch Anga-
ben zur Konfiguration des Systems ¡ werden in Dateien" abgelegt, die ihrer-
seits in festgelegten Verzeichnissen" untergebracht werden (vgl. Anhang D
auf Seite 521). Mit all den Tools und Programmen kann man auf diese Datei-
en in unterschiedlichen Verzeichnissen zugreifen, um ggf. den Inhalt dieser
Dateien anzusehen oder zu verΣndern.
Der Pfadtrenner" ist unter Unix der `/' (engl. slash) (unter DOS: `\'). Ein
Pfad ist demnach eine Zeichenkette, in der die Verzeichnisnamen durch `/'
getrennt sind. Ein einzelner `/' bezeichnet dabei das oberste Verzeichnis,
das Wurzelverzeichnis.
Unix unterscheidet Gro▀- und Kleinschreibung, d. h. der Dateiname Emil be-
zeichnet eine andere Datei als emil; eine Trennung der Dateinamen in Name
und Extension ist im allgemeinen nicht erforderlich, es sei denn, bestimmte
Programme erwarten dies (z. B. LATEX).
Eine angenehme Erleichterung bei der Eingabe von Datei- bzw. Verzeich-
nisnamen ist die Funktion der Taste Tab (Tabulatortaste). Geben Sie die
ersten Buchstaben der gewⁿnschten Datei ein und drⁿcken Sie Tab .Die
Shell ergΣnzt nun den kompletten Dateinamen (solange er durch den oder
die ersten Buchstaben eindeutig bestimmt ist). Zweimaliges Drⁿcken der
Tabulatortaste zeigt bei Mehrdeutigkeiten alle M÷glichkeiten.
5 Durch Modifikation der Datei /etc/inittab k÷nnen auch weitere oder weniger Konsolen
zur Verfⁿgung gestellt werden.
479
19. Einstieg in Linux
19.6 Arbeiten mit Verzeichnissen
Nach dem Einloggen (vgl. Abschnitt 19.1 auf Seite 475) befindet man sich
in seinem Benutzerverzeichnis. Der Name des aktuellen Verzeichnisses kann
mit dem Befehl pwd (engl. print working directory) ausgegeben werden:
tux@erde:/home/tux > pwd
/home/tux
Um in ein anderes Verzeichnis zu wechseln, dient wie unter DOS der Befehl
cd (engl. change directory). Die Eingabe von
tux@erde:/home/tux > cd /usr/bin
tux@erde:/usr/bin >
wechselt demnach in das Verzeichnis /usr/bin,
tux@erde:/home/tux > cd latex
tux@erde:/home/tux/latex >
wechselt in das Unterverzeichnis latex, sofern im Benutzerverzeichnis von
`tux' das Verzeichnis /home/tux/latex existiert.
Wird cd ohne ein Argument aufgerufen, so wird in das Benutzerverzeichnis
des aufrufenden Benutzers gewechselt. Das Benutzerverzeichnis kann auch
mit Hilfe der Tilde ` ' bezeichnet werden. Die Eingabe von
tux@erde:/home/tux > cd ~/latex
wechselt in das Verzeichnis latex im Benutzerverzeichnis des aufrufen-
den Benutzers. Wie auch unter DOS bezeichnet `..' das ⁿbergeordnete Ver-
zeichnis und `.' das aktuelle Verzeichnis.
Neue Verzeichnisse werden mit dem Befehl mkdir (engl. make directory)
angelegt. Durch Eingabe von
tux@erde:/home/tux > mkdir texte
wird also das Unterverzeichnis texte im jeweiligen Verzeichnis erstellt.
Leere Verzeichnisse k÷nnen mit dem Befehl rmdir (engl. remove directory)
gel÷scht werden.
19.7 Arbeiten mit Dateien
Bis sie (vielleicht) eines Tages von Objekten bzw. Symbolen abgel÷st werden,
sind Dateien von zentraler Bedeutung fⁿr die Arbeit am Computer. Entspre-
chend zahlreich sind die dateibezogenen Befehle unter Linux.
19.7.1 Informationen ⁿber Dateien
Der Befehl ls zeigt den Inhalt des aktuellen Verzeichnisses an. Ausgegeben
wird eine Liste aller Dateien und Verzeichnisnamen im aktuellen Verzeichnis.
Die Verzeichnisnamen werden in der Ausgabe mit einem `/' gekennzeich-
net. Es kann auch durch Angabe eines Parameters der Inhalt eines anderen
Verzeichnisses angezeigt werden:
tux@erde: > ls /usr/bin
Ausfⁿhrbare Programme sind nicht durch Extensionen gekennzeichnet, wie
.exe oder .com unter DOS. Beim Auflisten mit ls wird entweder ein As-
terisk `*' angehangen und/oder es rot hervorgehoben (vgl. die Dokumen-
tation zu ls; z. B. die Ausgabe von
480
19.7. Arbeiten mit Dateien
tux@erde: > ls --help
Man darf den Asterisk nie explizit angeben; er wird ¡ bedingt durch das
Attribut executable" ¡ jeweils hinter dem Dateinamen nur angezeigt; Infos
ⁿber Dateien sind auf Seite 486 zu finden.
Eine nⁿtzliche Option von ls ist -l. Dadurch werden zusΣtzliche Informa-
tionen zum Datei- bzw. Verzeichniseintrag wie Zugriffsrechte, Eigentⁿmer,
Gruppenzugeh÷rigkeit und Gr÷▀e ausgegeben:
tux@erde: > ls -l
Dies erzeugt die Ausgaben in Ausgabe 19.7.1.
drwxr-xr-x 6 tux users 1024 Mar 21 12:39 ./
drwxr-xr-x 4 tux users 1024 Mar 21 17:13 ../
drwxr-xr-x 2 tux users 1024 Nov 6 16:19 bin/
-rwxr-xr-x 1 tux users 4160 Mar 21 12:38 check*
drwxr-xr-x 2 tux users 1024 Nov 6 16:23 etc/
drwxr-xr-x 2 tux users 1024 Nov 6 16:19 sbin/
drwxr-xr-x 12 tux users 1024 Nov 6 18:20 usr/
-rw-r--r-- 1 tux users 185050 Mar 15 12:33 xvi.tgz
-rw-r--r-- 1 tux users 98444 Mar 14 12:30 xvnews.tgz
Ausgabe 19.7.1: Ausgabe von ls -l
Die Bedeutung der einzelnen Felder in Ausgabe 19.7.1 wird in Tabelle 19.3
erklΣrt.
Rechte Das erste Zeichen dieses Feldes bezeichnet den Da-
teityp. Hierbei steht `d' fⁿr Verzeichnis, `l' fⁿr
Link und `-' fⁿr eine normale Datei. Die folgen-
den 9 Zeichen geben die Zugriffsrechte fⁿr den Be-
sitzer, die Gruppe und alle anderen Benutzer an (je-
weils drei Zeichen). Hierbei steht `r' fⁿr lesen, `w'
fⁿr schreiben, und `x' fⁿr ausfⁿhren. Die Rechtemas-
ke `-rw-r-r-' bezeichnet demnach eine Datei, die
vom Eigentⁿmer, den Mitgliedern der Gruppe, und al-
len anderen gelesen werden kann, aber nur vom Ei-
gentⁿmer verΣndert werden kann. Siehe Manual-Page
von chmod (man chmod).
Besitzer Der Eigentⁿmer der Datei. Siehe Manual-Page von
chown (man chown).
Gruppe Die Gruppenzugeh÷rigkeit der Datei. Siehe Manual-
Page von chgrp (man chgrp).
Gr÷▀e Die Gr÷▀e der Datei in Bytes.
letzte ─nderung Das Datum der letzten ─nderung der Datei. Bei Da-
teien, deren letzte ─nderung ⁿber ein Jahr zurⁿckliegt,
wird anstelle der Uhrzeit das Jahr angegeben.
Name Der Name der Datei oder des Verzeichnisses.
Tabelle 19.3: ErklΣrung der Unix-Dateiattribute
481
19. Einstieg in Linux
19.7.2 Wildcards ¡ ein kleiner Ausblick
Verglichen mit DOS sind die durch die Befehlsinterpreter (z. B. bash) gege-
benen Einsatzm÷glichkeiten von Wildcards faszinierend".
Wildcards beschrΣnken sich unter Linux nicht nur auf den `*' und `?'.
Beispielsweise k÷nnen mit
tux@erde: > ls *a???.?
alle Dateien im aktuellen Verzeichnis ausgegeben werden, deren sechstletzter
Buchstabe ein `a' und deren vorletztes Zeichen im Dateinamen ein `.' ist.
Anstelle des einzelnen Zeichens `a' k÷nnte auch eine ganzer Satz verschie-
dener Zeichen stehen. Beispielsweise die Buchstaben `a', `b', `c', `d',
`e', `f'. Auf unser Beispiel angewandt lautet der Befehl dann:
tux@erde: > ls *[a-f]???.?
Auch nach alphabetisch nicht aufeinanderfolgenden Zeichen kann wahlfrei
gesucht werden:
tux@erde: > ls *[1,3-5,M-P,a,k]???.?
19.7.3 Inhalt von Dateien: more und less
Der Inhalt einer Datei kann mit den Befehlen more und less seitenweise
angezeigt werden. Beim klassischen more kann nur nach unten" geblΣttert
werden6; less ist wesentlich komfortabler und sollte deshalb durchweg be-
vorzugt werden. Mit
tux@erde: > less /etc/login.defs
lΣdt man die Datei /etc/login.defs in den Viewer" less; das ist ziem-
lich unspektakulΣr ¡ gerade einmal wird zur 1. Seite des Dateiinhalts zusΣtz-
lich eine inverse Statuszeile am unteren Rand mitgeteilt. Mit (der
Leertaste) kann nun jeweils eine Seite nach vorne, mit b eine Seite zurⁿck
geblΣttert werden; vgl. auch die AufzΣhlung in Tabelle 19.4 auf der nΣchsten
Seite.
h Hilfe
q Beenden
e Eine Zeile vorwΣrts
y Eine Zeile rⁿckwΣrts
f Eine Seite vorwΣrts
b Eine Seite rⁿckwΣrts
d Eine halbe Seite vorwΣrts
u Eine halbe Seite rⁿckwΣrts
g Zum Anfang der Datei gehen
G Zum Ende der Datei gehen
/ Suche einleiten
n NΣchste Fundstelle anspringen
Tabelle 19.4: Fortsetzung auf der nΣchsten Seite...
6 more unter Linux kann mehr ¡ vgl. Manual-Page von more (man more) ;-)
482
19.7. Arbeiten mit Dateien
v Datei in den Editor laden
F Eine wachsende" (Log-)Datei beobachten
^c Vom F-Modus wieder auf normal" schalten
Tabelle 19.4: Tasten des Viewers" less (Auswahl)
Mit / leiten Sie einen Such-Auftrag nach einer Zeichenkette (z. B. yes)
ein und schicken Sie diese dann ab mit .Tippen Sie n
, dann wird das
nΣchste Vorkommen von yes angezeigt.
Interessant ist die Taste F
; damit k÷nnen Sie verfolgen, wie z. B. bei einer
Logdatei weitere EintrΣge hinzukommen. Mit Strg + c verlassen Sie die-
sen Modus wieder.
Mit h erhalten Sie eine Auflistung aller Features, die less zur Verfⁿgung
stellt; mit q verlassen Sie die Hilfe" wieder und mit einem weiteren Tas-
tendruck q beenden Sie das Programm komplett und landen wieder auf der
Kommandozeile am Prompt.
Zum VerΣndern von Textdateien nehmen Sie einen Editor; der Standard-
Editor eines Unix-Systems ist der vi, mit dem Sie sich in einer ruhigen Minute
unbedingt vertraut machen sollten (vgl. Abschnitt 19.15 auf Seite 499).
19.7.4 Versteckte Dateien
Eine spezielle Klasse von Dateien sind die versteckten Dateien. Die Datei-
namen beginnen mit einem Punkt und werden von der Shell nur angezeigt,
wenn ls mit der Option -a aufgerufen wird. Geben Sie einfach in Ihrem
Benutzerverzeichnis den Befehl ls -a ein. Nun sollten auch die mit ei-
nem Punkt beginnenden versteckten" Dateien wie ~/.profile und ~/
.xinitrc aufgelistet werden. Versteckte Dateien sind vor versehentlichem
L÷schen durch rm * (siehe Abschnitt 19.7.5) geschⁿtzt und mⁿssen ggf.
durch ein explizites L÷schen mit rm <.dateiname> entfernt werden.
Die Eingabe von rm .* l÷scht alle versteckten Dateien des aktuellen Ver-
zeichnisses. Wird zusΣtzlich noch die Option -r (engl. recursive) verwen-
det (rm -r .*) werden auch alle Dateien des ⁿbergeordneten Verzeich-
nisses gel÷scht, die ja die Form `../bla' haben, was auch durch den
Ausdruck `.*' abgedeckt wird.
Im ▄brigen sollte man mit der Option -r immer sehr bewusst und vorsich-
tig umgehen!
19.7.5 Kopieren, Umbenennen und L÷schen von Dateien
Der Befehl, um Dateien zu kopieren, lautet unter Linux cp:
tux@erde: > cp quelldatei zieldatei
Anstelle von <zieldatei> kann auch ein vorhandenes Verzeichnis angegeben
werden; dann wird in dem Zielverzeichnis die Quelldatei mit dem gleichen
483
19. Einstieg in Linux
Namen abgelegt. Um also die Datei /etc/XF86Config aus dem Verzeich-
nis /etc in das eigene Benutzerverzeichnis zu kopieren, kann folgender Be-
fehl eingegeben werden:
tux@erde: > cp /etc/XF86Config ~
Dateien k÷nnen mit dem Befehl rm (engl. remove) gel÷scht werden. Eine
nⁿtzliche Option ist -r (engl. recursive), wodurch auch alle Unterverzeich-
nisse und die darin enthaltenen Dateien gel÷scht werden (vergleichbar mit
dem seit DOS 6.0 verfⁿgbaren Befehl deltree). Die Eingabe von
tux@erde: > rm -r bin
l÷scht z. B. das Verzeichnis bin im aktuellen Verzeichnis und alle sich darin
befindlichen Dateien und Verzeichnisse. Diese Option ist mit Σu▀erster Vor-
sicht anzuwenden, da keine M÷glichkeit besteht, versehentlich gel÷schte Da-
teien wiederherzustellen!
Der Befehl mv (engl. move) verschiebt Dateien oder Verzeichnisse. Die Syn-
tax ist identisch mit der von cp. So wird durch Eingabe des Befehls
tux@erde: > mv xvnews.tgz XVNEWS.tgz
die Datei xvnews.tgz aus dem aktuellen Verzeichnis auf die Datei mit dem
Namen XVNEWS.tgz im aktuellen Verzeichnis verschoben", was einem
einfachen Umbenennen gleichkommt. Interessanter wird es erst, wenn ganze
Verzeichnisse verschoben werden:
tux@erde: > mv bin ~/latex
verschiebt das Verzeichnis bin (sofern ein solches im aktuellen Verzeichnis
existiert) nach ~/latex. Alle Verzeichnisse und Dateien die vorher unter
bin zu finden waren, befinden sich jetzt unter ~/latex/bin. Auch mit
diesem Befehl sollte vorsichtig umgegangen werden, da schnell ganze Ver-
zeichnisbΣume an spΣter nur schwer wiederauffindbare Stellen verschoben
werden k÷nnen.
Das Verschieben eines kompletten Verzeichnisbaumes ist nur innerhalb eines
Dateisystems (also einer Partition) m÷glich.
19.7.6 Suchen und Durchsuchen von Dateien
Ein weiterer nⁿtzlicher Befehl: find. Um in allen Unterverzeichnissen des
aktuellen Verzeichnisses nach der Datei emil zu suchen, sollte folgendes
eingegeben werden:
tux@erde: > find . -name "emil"
Das erste Argument bezeichnet dabei das Verzeichnis, ab dem die Suche
gestartet werden soll. Die Option -name verlangt einen zu suchenden String,
in dem auch Wildcards erlaubt sind. Um also nach allen Dateien zu suchen,
die die Zeichenkette `emil' im Namen enthalten, mⁿsste die Eingabe von
gerade folgenderma▀en geΣndert werden:
tux@erde: > find . -name "*emil*"
Wie bei allen Befehlen verweisen wir fⁿr eine genauere Beschreibung auf die
jeweilige Manual-Page.
Es gibt noch die viel schnellere M÷glichkeit, Dateien mittels locate auf-
zufinden. Beachten Sie hierzu die Manual-Pages von locate und die dort
referenzierten Manual-Pages.
484
19.7. Arbeiten mit Dateien
Wenn nicht nach einem bestimmten Dateinamen, sondern nach einer Zei-
chenkette in einer Datei gesucht werden soll, kann dazu der Befehl grep
(engl. get regular expression pattern) verwendet werden. Die folgende Ein-
gabe sucht in der Datei emil nach der Zeichenkette `detektive':
tux@erde: > grep "detektive" emil
Auf diese Weise lassen sich gro▀e Textmengen schnell nach bestimmten Zei-
chenketten durchsuchen. Es k÷nnen beliebig viele Dateinamen angegeben
werden. Auch eine Suche mit Wildcards und regulΣren Ausdrⁿcken wird un-
terstⁿtzt. Als Ergebnis der Suche wird jede Zeile ausgegeben, in der die zu
suchende Zeichenkette enthalten ist.
grep lΣsst sich ⁿber viele Optionen sehr stark in seinem Suchverhalten be-
einflussen. Lesen Sie deshalb bitte die Manual-Page von grep (man grep).
19.7.7 Symbolische Links
Durch die Verwendung von symbolischen Links kann einer Datei quasi ein
zusΣtzlicher Name gegeben werden. Dieser Name zeigt" dann auf diese Da-
tei. Es kann z. B. vorkommen, dass verschiedene Versionen eines Program-
mes aufgehoben werden sollen, dass aber die jeweils neueste Version immer
unter dem gleichen Namen verfⁿgbar sein soll. Die L÷sung liegt in der Er-
stellung eines symbolischen Links, der jeweils auf die benutzte Version zeigt.
Symbolische Links verhalten sich wie die Dateien, auf die sie zeigen, sind
also auch ausfⁿhrbar. Die folgende Eingabe
tux@erde: > ln -s check.2.4 check
Erzeugt den symbolischen link check, der auf die Datei check.2.4 zeigt.
Im Verzeichnis sieht dies etwa so aus:
lrwxrwxrwx 1 tux users 1024 Mar 21 17:13 check -
> check.2.4*
Links k÷nnen genau wie Dateien mit rm entfernt werden.
Hierbei wird nur der Link und nicht die referenzierte Datei entfernt!
19.7.8 Daten archivieren und sichern
Zum Erzeugen und Auspacken von Archiven dient der tar-Befehl (engl.
tape archive). Ein Archiv kann einzelne Dateien und / oder ganze Verzeich-
nisbΣume einschlie▀lich der darin liegenden Dateien enthalten.
Derma▀en zusammengepackte Archive kann man auch komprimieren, was
meist deren Gr÷▀e erheblich reduziert. ▄blicherweise gibt man komprimier-
ten Archiven die Endung .tgz oder .tar.gz, unkomprimierten .tar. Die
wichtigsten AnwendungsfΣlle des tar-Befehls sind:
1. Auspacken von Archiven (z. B. von den CDs)
tux@erde: > tar xvfz archivdatei.tgz
tar entpackt (x) nun das komprimierte (z) Archiv archivdatei.
tgz (f) und legt dabei selbstΣndig evtl. Unterverzeichnisse an. Bei jeder
Datei, die gerade ausgepackt wird, wird deren Namen auf dem Bildschirm
ausgegeben (v).
485
19. Einstieg in Linux
2. Erzeugen von Archiven
tux@erde: > tar cvfz archivdatei.tgz datei1 verz1
tar erzeugt (c) das komprimierte (z) Archiv archivdatei.tgz (f),
in dem die Datei datei1 und alle Dateien im Verzeichnis verz1 ein-
schlie▀lich seiner Unterverzeichnisse enthalten sind. Bei jeder Datei, die
gerade eingepackt wird, wird deren Namen auf dem Bildschirm ausgege-
ben (v).
3. Ansehen des Archivinhalts
tux@erde: > tar tfz archivdatei.tgz
tar gibt ein Inhaltsverzeichnis (t) des komprimierten (z) Archivs ar-
chivdatei.tgz (f) aus.
Die Option z gibt an, dass das Programm GNU Zip (gzip) verwendet wer-
den soll, um komprimierte Archivdateien zu erzeugen bzw. auszupacken.
tux@erde: > tar xvf archivdatei.tar
entpackt also die unkomprimierte Archivdatei archivdatei.tar. NΣhere
Informationen liefert:
tux@erde: > tar --help
19.8 Zugriffsrechte auf Dateien
Nur der Benutzer `root' hat als Systemverwalter uneingeschrΣnkte Zu-
griffsrechte auf alle Dateien, d. h. er darf als einziger auch alle Zugriffsrechte
setzen oder l÷schen.
Das Konzept der Rechte
Die Verteilung der Zugriffsrechte auf eine Datei werden als Rechtemaske
beschrieben, die aus drei Teilen besteht:
* Rechte des Besitzers
* Rechte fⁿr Gruppenmitglieder
* Rechte fⁿr alle anderen
Jede dieser drei Kategorien wird bei der (langen) Darstellung eines Verzeich-
niseintrags durch jeweils drei Zeichen angezeigt. Zusammen mit dem ersten
Zeichen fⁿr den Dateityp (d, l, oder -) ergeben sich die 10 Flags fⁿr jede
Datei. Jedes Flag wird durch ein Zeichen reprΣsentiert. Die m÷glichen Flags
sind fⁿr alle drei Kategorien gleich: `r' fⁿr Lesen (engl. readable), `w'
fⁿr Schreiben (engl. writable) und `x' fⁿr Ausfⁿhren (engl. executable). Ist
ein Flag nicht gesetzt, so wird dies durch das Zeichen `-' gekennzeichnet.
Betrachten wir als Beispiel den Verzeichniseintrag fⁿr die imaginΣre Datei
linux.info.
-rw-r-xr-- 1 tux users 29524 Jun 29 13:11 linux.info
Fⁿr die Datei linux.info bedeutet dies folgendes: Der Eigentⁿmer der
Datei (tux) darf sie Σndern und lesen, die Mitglieder der Gruppe users
dⁿrfen sie nur lesen und ausfⁿhren, wΣhrend alle anderen Systembenutzer
486
19.8. Zugriffsrechte auf Dateien
- r w - r - x r - -
Typ Eigentⁿmer Gruppe Andere
Abbildung 19.1: Darstellung der Rechte an Dateien
linux.info nur lesen dⁿrfen. Der fⁿhrende `-' zeigt an, dass es sich um
eine normale" Datei (engl. regular file) handelt.
Ganz Σhnlich verhΣlt es sich mit Verzeichnissen. Dann steht vor den 9 Zei-
chen, die die Rechte zuordnen, noch ein `d' (engl. directory) und k÷nnte so
aussehen:
drwxr-xr-- 3 tux users 1024 Jun 29 13:11 info/
Wenn fⁿr ein Verzeichnis das `x'-Flag gesetzt ist, dann bedeutet dies, dass
man in dieses Verzeichnis hineinwechseln kann.
Also dⁿrfen Benutzer, die nicht zur Gruppe users geh÷ren, nicht in das
Verzeichnis info wechseln.
─ndern von Zugriffsrechten
Die ─nderung von Zugriffsrechten geschieht mit dem Befehl chmod (engl.
change mode). Im wesentlichen ben÷tigt chmod zwei Argumente:
* die zu Σndernden Zugriffsrechte, und
* einen Dateinamen.
Die Kategorien der drei m÷glichen Gruppen werden dabei durch `u' fⁿr den
Eigentⁿmer bzw. Benutzer (engl. user), `g' fⁿr die Gruppe (engl. group) und
`o' fⁿr alle anderen (engl. others) angegeben, gefolgt von den zu Σndernden
Zugriffsrechten. Ein `-' oder `+' wird hierbei fⁿr das Entfernen oder Hin-
zufⁿgen von Rechten verwendet. Folgende Eingabe setzt z. B. die Rechte der
Datei linux.info fⁿr Gruppenmitglieder auf lesbar, verΣnderbar und aus-
fⁿhrbar:
tux@erde: > chmod g+rwx linux.info
Wenn Rechte fⁿr alle drei Kategorien von Benutzern gesetzt werden sollen,
genⁿgt die Angabe der zu Σndernden Rechte. Folgende Eingabe setzt die
Rechte fⁿr die Datei linux.info so, dass niemand Schreiberlaubnis be-
sitzt:
tux@erde: > chmod -w linux.info
Die Rechte fⁿr Lesen und Ausfⁿhren werden davon nicht betroffen.
Zugriffsrechte k÷nnen auch in einem Befehl entzogen und gesetzt werden.
Folgende Eingabe setzt die Rechte der Datei linux.info des Eigentⁿmers
auf ausfⁿhrbar, nicht lesbar, nicht verΣnderbar:
tux@erde: > chmod u+x-rw linux.info
Wenn man sich das Ergebnis ansieht:
tux@erde: > ls -l linux.info
---xr-xr-- 1 tux users 29524 Jun 29 13:11 linux.info
487
19. Einstieg in Linux
In diesem Zusammenhang interessante Befehle sind chown fⁿr Besitzer
Σndern" (engl. change owner) und chgrp, um die Gruppe zu Σndern (engl.
change group).
Das ─ndern von Rechten geht freilich nur dann, wenn das zugrundeliegen-
de Dateisystem ein Rechtesystem unterstⁿtzt. So muss man bei msdos-
oder vfat-Systemen bereits beim Mounten" die Rechte festlegen (vgl.
Abschnitt 19.11.2 auf Seite 494).
19.9 Manual-Pages
▄ber Befehle, Konfigurationsdateien und C-Bibliothekfunktionen geben Ih-
nen die Manual-Pages Auskunft. Die verschiedenen Aufrufvarianten zeigt Ta-
belle 19.5.
man <Stichwort> ruft die Manual-Page zu
<Stichwort> auf.
man -f <Stichwort> sucht nach <Stichwort> und
listet die gefundenen Manual-
Pages.
man -k <Stichwort> sucht in allen Sektionen der
Manpages nach einer Manual-
Page zum Stichwort <Stich-
wort> und listet die gefunde-
nen Manual-Pages.
man <Sektion> <Stichwort> ruft die Manual-Page zu
<Stichwort> aus <Sek-
tion> auf. So ruft der
Befehl man 1 man die
Manual-Page zum Befehl man
aus der Sektion 1 auf.
Tabelle 19.5: Aufrufe des Befehls man
Zum Anzeigen der Manual-Pages verwendet der Befehl man das Tool less;
vgl. zur Bedienung von less den Abschnitt 19.7.3 auf Seite 482. Sollten Sie
das SuSE-Hilfesystem installiert haben, so k÷nnen Sie darⁿber die Manual-
Pages bequem mit einem Webbrowser einsehen. ¡ Unter dem X Window
System k÷nnen Sie auch das Programm xman verwenden. Der gew÷hnli-
che man-Befehl hat dessen ungeachtet seine Daseinsberechtigung: man ist
einfach schneller.
488
19.10. Informationen ⁿber den Systemzustand
Die Manual-Pages sind auf verschiedene Sektionen aufgeteilt; vgl. Tabel-
le 19.6 auf der nΣchsten Seite.
1 Beschreibt die Benutzerbefehle, allerdings sind viele bash- und
tcsh-Befehle eingebaute Befehle, d. h. hier geben die Manual-
Pages der benutzten bash oder tcsh Auskunft.
2 Die Systemaufrufe der verschiedenen Bibliotheken.
3 Die C-Bibliotheksfunktionen.
4 Die Beschreibung von Konfigurationsdateien.
5 Die Syntax wichtiger Dateien.
6 Beschreibung von Spielen.
7 Alles was mit Text, Textformatierung und anderen Formaten zu tun
hat.
8 Die Befehle des Systemverwalters.
9 Die Beschreibung der Linux-Kernelroutinen.
n n kommt angeblich von neu, hier sind sonstige Manual-Pages aufge-
fⁿhrt, die in eine der oberen Sektionen geh÷rt, aber traditionell hier
stehen oder zu keiner Sektion genau passen.
Tabelle 19.6: Sektionen der Manual-Pages
Beachten Sie, dass nicht zu jedem Stichwort oder Befehl eine Manual-Page
vorhanden ist. Eventuell finden Sie dann unter /usr/doc/ mehr Informa-
tion, z. B. unter /usr/doc/howto/en, /usr/doc/howto/en/mini
oder im Verzeichnis /usr/doc/packages (paketbezogene Information).
19.10 Informationen ⁿber den Systemzustand
HΣufig ist es wichtig, Auskunft ⁿber den Zustand des Systems zu erhalten.
Hierbei helfen z. B. die Befehle df, free, ps, top.
19.10.1 Der Befehl df
df gibt Auskunft ⁿber den verfⁿgbaren und benutzten Plattenplatz. Die Aus-
gabe erfolgt wie in Ausgabe 19.10.1 abgebildet.
Filesystem 1024-blocks Used Available Capacity Moun-
ted on
/dev/sda4 699392 659258 5165 99% /home
/dev/sda1 102384 23955 73310 25% /
/dev/sdb1 2097136 2070485 26651 99% /usr
/dev/sda3 126976 106908 20068 84% /opt
Ausgabe 19.10.1: Ausgabe des Befehls df
489
19. Einstieg in Linux
19.10.2 Der Befehl free
free informiert ⁿber die Auslastung des Arbeitsspeichers und des swap-
Speichers; vgl. Ausgabe 19.10.2 auf der nΣchsten Seite.
total used free shared buffers cached
Mem: 30900 29272 1628 25608 1012 6412
-/+ buffers: 28260 2640
Swap: 66524 176 66348
Ausgabe 19.10.2: Ausgabe des Befehls free
Vgl. auch Anhang F auf Seite 537.
19.10.3 Der Befehl ulimit
Mit dem Befehl ulimit (engl. user limits) ist es m÷glich, Limits fⁿr die
Nutzung von Systemressourcen zu setzen, bzw. sich diese anzeigen zu las-
sen. Insbesondere ist ulimit dazu geeignet, den zur Verfⁿgung stehenden
Speicher fⁿr Anwendungen zu begrenzen. Dadurch kann verhindert werden,
dass eine Anwendung ⁿbermΣ▀ig viel (allen) Speicherplatz fⁿr sich beschlag-
nahmt; dadurch k÷nnte das System zum Stillstand kommen.
Der Aufruf von ulimit kann mit verschiedenen Optionen geschehen. Um
den Speicherverbrauch zu begrenzen, sind z. B. die Optionen in Tabelle 19.7
tauglich.
-m max. Gr÷▀e des physikalischen Speichers
-v max. Gr÷▀e des virtuellen Speichers (Swap)
-s max. Gr÷▀e des Stacks
-c max. Gr÷▀e der Core-Dateien
-a Anzeige der gesetzten Limits
Tabelle 19.7: ulimit: Ressourcen fⁿr den Anwender einstellen
Systemweit k÷nnen die Einstellungen in /etc/profile vorgenommen
werden; Dort muss beispielsweise das Erzeugen von Core-Dateien freige-
schaltet werden, die Programmierer zum Debuggen" ben÷tigen. Als Anwen-
der kann man die vom Systemadministrator in /etc/profile vorgege-
benen Werte nicht erh÷hen, aber man kann spezielle Einstellung in die eigene
~/.bashrc eintragen; vgl. Datei 19.10.1.
Die Speicherangaben mⁿssen in KB gemacht werden.
Fⁿr detailliertere Informationen werfen Sie bitte einen Blick in die Manual-
Page von bash (man bash).
490
19.10. Informationen ⁿber den Systemzustand
# Begrenzung des realen Speichers:
ulimit -m 98304
# Begrenzung des virtuellen Speichers:
ulimit -v 98304
Datei 19.10.1: ulimit-Einstellungen in ~/.bashrc
19.10.4 Der Befehl w
Der Befehl w zeigt alle momentan angemeldeten Benutzer im System an.
Dieser Befehl liefert eine ganze Reihe nⁿtzlicher Informationen. Neben der
Anzahl der angemeldeten Benutzer erfahren Sie, wie lange das System bereits
lΣuft, wie sehr es momentan belastet ist und was die einzelnen Benutzer so
tun (vgl. Ausgabe 19.10.3).
11:05am up 21 days, 21:10, 8 users, load avera-
ge: 0.23, 0.10, 0.10
USER TTY FROM LOGIN@ IDLE JCPU PCPU WHAT
root tty1 - 11:02am 3:34 0.10s 0.05s -
bash
tux tty3 - 11:04am 1:24 1.29s 1.22s emacs
tux pts/1 :0.0 11Feb 0 19:42m 1:18 0.02s sed
tux pts/2 :0.0 30Jan 0 18:35m 56.29s ? -
tux pts/6 :0.0 31Jan 0 4.00s 1.47s ? -
tux pts/3 :0.0 31Jan 0 2days 1.86s 1.44s bash
tux pts/9 :0.0 1Feb 0 2days 3.52s ? -
tux pts/10 :0.0 2Feb 0 59:19 9.10s 8.56s lynx
tux pts/11 :0.0 2Feb 0 0.00s 26:49 0.01s
rlogin venus
tux pts/12 venus.kosmos.all 11:09am 0.00s 0.11s 0.04s w
Ausgabe 19.10.3: Ausgabe von w
19.10.5 Der Befehl du
Der Befehl du (engl. disk usage) gibt Auskunft ⁿber den von Unterverzeich-
nissen und einzelnen Dateien belegten Speicherplatz. Mehr darⁿber kann man
in der Manual-Page von du (man du) nachlesen.
19.10.6 Der Befehl kill
Senden von Signalen an laufende Prozesse (Prozess). Erfordert die Anga-
be der Prozessnummer (engl. process id), kurz: PID, die mit ps (siehe Ab-
schnitt 19.10.7) ermittelt werden kann. Der Befehl kill wird aufgerufen mit
erde: # kill <pid>
Sollte der entsprechende Prozess das Abbruchsignal abfangen, so kann er mit
dem optionalen Parameter -9 dennoch beendet werden. Der Aufruf
erde: # kill -9 <pid>
beendet den Prozess mit der <pid> definitiv.
491
19. Einstieg in Linux
19.10.7 Der Befehl ps
Der Befehl ps (engl. process status) zeigt die vom Benutzer gestarteten Pro-
zesse an. Weitere Information zu dem Befehl liefert die Manual-Page von ps
(man ps). Mit dem Aufruf ps -a werden auch die laufenden Prozesse der
anderen Benutzer auf dem aktuellen Rechner angezeigt. Durch Angabe der
Prozessnummer (1. Spalte der Ausgaben von ps) ist es m÷glich, laufende
Prozesse gezielt abzubrechen (siehe Abschnitt 19.10.6).
19.10.8 Der Befehl pstree
pstree zeigt den kompletten Prozessbaum" anschaulich an. Dies zeigt
Ausgabe 19.10.4 auf der nΣchsten Seite.
init-+-bash---startx---xinit-+-X
| `-sh---fvwm-+-FvwmPager
| |-FvwmWinList
| |-GoodStuff
| |-xclock
| `-xeyes
|-color_xterm---bash---xdvi.bin---gs
|-2*[color_xterm---bash---vi]
|-color_xterm---bash---pstree
|-coolmail---coolmail---xterm---pine
|-cron
|-gpm
|-inetd
|-kflushd
|-klogd
|-kswapd
|-5*[mingetty]
|-4*[nfsiod]
|-sh---master---slipto
|-syslogd
|-update
|-xload
`-xosview
Ausgabe 19.10.4: Ausgabe von pstree
19.10.9 Der Befehl top
Anzeige aller momentan laufenden Prozesse, der Systemauslastung u. v. m.;
die Anzeige wird in zeitlichen AbstΣnden aktualisiert. Beenden der Anzeige
erfolgt mit q .
19.11 Dateisysteme unter Linux ¡ mount und umount
Der Umgang mit Dateisystemen ist bisweilen eine Kunst fⁿr sich.
492
19.11. Dateisysteme unter Linux ¡ mount und umount
19.11.1 ▄bersicht
Unter Linux stehen viele verschiedene Dateisysteme zur Verfⁿgung. Eine
Auswahl zeigt die Tabelle 19.8 auf der nΣchsten Seite.
493
19. Einstieg in Linux
affs Ein auf dem Amiga verwendetes Dateisystem (engl. Amiga
Fast Filesystem).
ext2 (engl. Second extended Filesystem) Das Standard-Dateisys-
tem unter Linux.
hpfs Standard-Dateisystem von IBM OS/2 (engl. High Perfor-
mance Filesystem). Dieses wird von Linux nur mit Lesezu-
griff (engl. read-only) unterstⁿtzt.
iso9660 Standard-Dateisystem auf CD-ROMs.
minix Dieses Dateisystem hat seinen Ursprung in akademischen
Lehrprojekten ⁿber Betriebssysteme und war das erste
Dateisystem, welches fⁿr Linux verwendet wurde. Heute
wird es unter Linux vornehmlich als Dateisystem fⁿr Dis-
ketten verwendet.
msdos Ursprⁿnglich von DOS verwendetes Dateisystem, welches
aber bis heute von diversen Betriebssystemen genutzt wird.
ncpfs Dateisystem fⁿr das Einbinden von Novell-Volumes.
nfs Hierbei befinden sich die Daten auf der Platte eines anderen
Rechners und werden via Netzwerk transparent zugΣnglich
gemacht (engl. Network Filesystem).
proc Prozess-Dateisystem (virtuell).
smbfs SMB (engl. Server Message Block) ist ein Protokoll, das
von WfW, Windows NT und LAN Manager verwendet
wird, um Dateien ⁿber ein Netzwerk verfⁿgbar zu machen.
sysv Von SCO-Unix, Xenix und Coherent (kommerzielle Unix-
Systeme fⁿr PC) verwendetes Dateisystem.
ufs Von BSD, SunOS und NeXTstep verwendetes Dateisys-
tem; dies Dateisystem wird von Linux nur mit Lesezugriff
(engl. read-only) unterstⁿtzt.
umsdos Setzt auf einem gew÷hnlichen fat-Dateisystem auf (engl.
Unix on MSDOS) und erreicht durch Anlegen spezieller Da-
teien die notwendige Unix-FunktionalitΣt (Rechte, Links,
lange Dateinamen); es ist jedoch sehr langsam.
vfat Erweiterung des fat-Dateisystems hinsichtlich der LΣnge
der Dateinamen (engl. Virtual FAT).
Tabelle 19.8: Dateisystemtypen unter Linux
19.11.2 Ein- und AushΣngen von Dateisystemen
Mit dem Befehl mount, der normalerweise nur von `root' ausgefⁿhrt
werden kann, wird ein DatentrΣger in das Linux-Dateisystem eingehangen.
mount ben÷tigt hierzu zwei Argumente:
* den Namen des DatentrΣgers (entspricht der Device-Bezeichnung, z. B.
/dev/hda3)
* und ein Verzeichnis, unter dem der DatentrΣger eingebunden werden soll;
das Verzeichnis muss bereits existieren.
494
19.11. Dateisysteme unter Linux ¡ mount und umount
Die Option -t <dateisystemtyp> gibt den Typ des einzuhΣngenden
Dateisystems (siehe Tabelle 19.8) an.
Ein Beispiel: der Aufruf von
erde:/ # mount -t msdos /dev/hda2 /dosa
stellt die DOS-Partition hda2 unter dem Verzeichnis /dosa zur Verfⁿgung;
das Verzeichnis /dosa muss zuvor angelegt werden (vgl. Abschnitt 19.6 auf
Seite 480).
Wenn bestimmte GerΣte (engl. devices) immer wieder an der gleichen Stelle
im Dateisystem eingehangen werden sollen (z. B. das Diskettenlaufwerk oder
weitere CD-ROM-Laufwerke), sollte man einen Eintrag der /etc/fstab
vornehmen; vgl. dazu die Manual-Page von mount (man 8 mount).
Durch die Option -r wird z. B. ein DatentrΣger nur zum Lesen gemoun-
tet" (engl. read-only). Schreiben von Daten ist dann auf diesem DatentrΣ-
ger nicht erlaubt. Weitere Optionen sind in der Manual-Page von mount
(man 8 mount) dokumentiert.
Wenn Sie auf DOS-Partitionen auch als normaler Benutzer (nicht-
`root') schreiben wollen, lesen Sie das Vorgehen bitte in http://
sdb.suse.de/sdb/de/html/kfr_18.html nach.
mount fⁿhrt Protokoll ⁿber die gemounteten Dateisysteme. Dieses Protokoll
ist in der Datei /etc/mtab zu finden. Wird mount ohne Argumente auf-
gerufen, so wird der Inhalt dieser Datei ausgegeben. So erhΣlt man eine Liste
aller gerade eingehangenen Dateisysteme.
Durch umount wird ein DatentrΣger aus dem Linux-Dateisystem entfernt7.
Als Argument zu umount kann entweder der Name der GerΣtedatei oder
der Name des Verzeichnisses, in welches der DatentrΣger eingebunden ist,
angegeben werden. Um also z. B. /dev/hda2, eingehangen unter /dosa,
auszuhΣngen, kann man alternativ eingeben:
erde: # umount /dosa
oder:
erde: # umount /dev/hda2
Bei von Disketten oder von anderen Wechselmedien gemounteten" Datei-
systemen ist es wichtig, vor dem Herausnehmen der Diskette den Befehl
umount auszufⁿhren.
Wenn auf einem gemounteten DatentrΣger noch ge÷ffnete Dateien exis-
tieren, werden beim Aufruf von umount diese Daten zurⁿckgeschrieben
bzw. es wird ¡ wenn dies nicht m÷glich ist ¡ eine entsprechende Fehler-
meldung ausgegeben.
Will man ein Dateisystem aushΣngen, darf kein Benutzer mehr in einem
Verzeichnis stehen (z. B. mit einer Shell), das unterhalb des auszuhΣngen-
den Mountpoints liegt.
7 Eigentlich lautete der Befehl unmount, doch das `n' ist irgendwann im Laufe der Unix-
Geschichte verlorengegangen.
495
19. Einstieg in Linux
19.12 DOS-Befehle unter Unix mit mtools
Speziell fⁿr die Bearbeitung von DOS-Dateien, sowohl auf Festplatte als auch
Diskette, stehen die mtools aus dem Paket mtools, Serie ap zur Verfⁿgung.
Dabei versucht jedes der Programme, das jeweilige Pendant unter DOS so gut
und funktionell wie m÷glich zu emulieren. Alle mtools-Befehle hei▀en wie
ihr DOS-Pendant, mit einem vorangestellten `m', wie z. B. mcopy.
Die mtools-Befehle sollten nur verwendet werden, wenn die entsprechende
Diskette nicht gemountet ist!
DOS-Dateinamen setzen sich optional aus einem Laufwerksbuchstaben ge-
folgt von einem Doppelpunkt, einem Unterverzeichnis (optional), sowie dem
eigentlichen Dateinamen zusammen. Fⁿr die Trennung von Unterverzeich-
nissen wird unter DOS ausschlie▀lich der `\' verwendet.
Mit den mtools unter Linux kann sowohl der `/' als auch der `\' verwendet
werden. Bei Gebrauch des `\' oder von Wildcards wie z. B. `*' oder
`?' mⁿssen diese innerhalb von Anfⁿhrungszeichen stehen, da sie sonst von
der Shell zuerst interpretiert werden und gar nicht erst bis zum mtools-Befehl
vordringen.
Der einzelne `*' entspricht bei den mtools der Zeichenfolge `*.*' unter
DOS. Anstelle des unter DOS gewohnten `/' zur ▄bergabe etwaiger Optio-
nen ist ¡ wie unter Linux ⁿblich ¡ das Minuszeichen `-' zu verwenden.
Das Standardlaufwerk fⁿr die mtools ist das erste Diskettenlaufwerk (unter
DOS `a:'). mtools nimmt das Wurzelverzeichnis der Diskette a:\ als
voreingestelltes Verzeichnis. Soll ein anderes als das voreingestellte verwen-
det werden, so wechseln Sie dorthin mittels mcd. Vergessen Sie bitte nicht,
bevor Sie eine andere Diskette einlegen, wieder zurⁿck ins Stammverzeichnis
des DatentrΣgers zu wechseln, da sonst kein neuer Verzeichnisbaum eingele-
sen werden kann.
Bislang werden u. a. die folgenden (DOS-)Befehle von den mtools unter-
stⁿtzt:
mattrib ─ndern der DOS-Dateiattribute (hidden, system etc.).
mcd Wechsel in ein anderes Verzeichnis.
mcopy Kopieren von/nach DOS nach/von Unix, auch rekursiv.
Beachten Sie, dass hier auch immer das Ziel angegeben
werden muss.
mdel L÷schen einer DOS-Datei.
mdeltree Rekursives L÷schen eines DOS-Verzeichnisses.
mdir Anzeige eines DOS-Verzeichnisses.
mformat Anlegen eines DOS-Dateisystems auf einer low-level-for-
matierten Diskette. Das low-level-Formatieren geschieht
mit dem Befehl fdformat.
mlabel Umbenennen eines DOS-DatentrΣgers.
Tabelle 19.9: Fortsetzung auf der nΣchsten Seite...
496
19.13. Unix-Befehle im ▄berblick
mmd Anlegen eines DOS-Unterverzeichnisses.
mrd L÷schen eines DOS-Unterverzeichnisses.
mread Einlesen einer DOS-Datei in ein Unix-System.
mren Umbenennen einer existierenden DOS-Datei.
mtype Zeigt den Inhalt einer DOS-Datei an.
mwrite Low-level-Kopie einer Unix-Datei auf ein DOS-Dateisys-
tem.
Tabelle 19.9: Befehle aus dem Paket mtools
Als Voreinstellung wird angenommen, bei Laufwerk a: handele es sich um
ein 3.5-Zoll, bei Laufwerk B: um ein 5.25-Zoll-Diskettenlaufwerk. Dabei
werden die Diskettenformate 720 KB und 1.44 MB, bzw. 360 KB und 1.2 MB
unterstⁿtzt.
In /etc/mtools.conf k÷nnen diese Standardeinstellungen geΣndert wer-
den. In jeweils einer Zeile sind die EintrΣge wie folgt gegliedert:
* Laufwerksname (unter DOS), z. B. a:
* GerΣtedatei (Linux), z. B. /dev/fd0
* Kennziffer (12 Diskettenlaufwerk, 16 Festplatte)
* Anzahl der Spuren, Lesek÷pfe und Sektoren
Durch ─nderung der ▄bergabeparameter k÷nnen also auch zwei 3.5-Zoll-
Diskettenlaufwerke verwendet werden. Man sollte jedoch nicht zweimal den
gleichen DOS-Laufwerksbuchstaben oder dieselbe GerΣtedatei angeben.
19.13 Unix-Befehle im ▄berblick
Die wichtigsten Befehle sind ⁿberblicksartig in Tabelle 19.10 auf der nΣchs-
ten Seite aufgelistet; optionale Parameter stehen in `[]':
cd verz Wechsel ins Unterverzeichnis
verz.
cd .. Wechsel in das ⁿbergeordnete Ver-
zeichnis.
cd /verz Wechsel ins Verzeichnis /verz.
cd [ ] Wechsel ins Benutzerverzeichnis.
cp quelldatei zieldatei Kopiert quelldatei nach
zieldatei.
Tabelle 19.10: Fortsetzung auf der nΣchsten Seite...
497
19. Einstieg in Linux
ln [-s] bezug name Erzeugt im aktuellen Verzeichnis
den [symbolischen] Link name,
der auf die Datei bezug zeigt.
name gibt den Pfad an, in dem die
(eigentlich im aktuellen Verzeich-
nis) gesuchte Datei gefunden wer-
den kann. Nur symbolische Links
k÷nnen ⁿber Dateisysteme hinweg
gesetzt werden. Mit Hilfe symboli-
scher Links k÷nnen auch Verzeich-
nisse gelinkt" werden.
ls [verz] Listet alle Dateien und Verzeich-
nisse im Verzeichnis verz auf (nur
Dateinamen).
ls -l [verz] Listet alle Dateien und Verzeich-
nisse im Verzeichnis verz auf
(ausfⁿhrliche Anzeige im Langfor-
mat); ohne Parameter: der Inhalt
des aktuellen Verzeichnisses.
ls -a [verz] Zeigt auch die versteckten Dateien
an; (z. B. ~/.xinitrc).
mkdir neuesverz Erzeugt das Verzeichnis
neuesverz.
less datei Zeigt eine Datei seitenweise an
(VorblΣttern mit der Leertaste,
RⁿckwΣrtsblΣttern mit b
).
mv vondatei nachdatei Verschiebt eine Datei oder benennt
sie um.
rm datei L÷scht datei (auch Links!).
rm -r verz L÷scht das Verzeichnis verz re-
kursiv (mit Unterverzeichnissen).
rmdir verz L÷scht das Verzeichnis verz
(wenn leer).
Tabelle 19.10: ▄bersicht der wichtigsten Unix-Befehle
In Tabelle 19.11 finden Sie einige Befehle, die Suchaufgaben erledigen hel-
fen.
find . -name "datei" Sucht in allen Unterverzeichnissen des
aktuellen Verzeichnisses nach datei.
Tabelle 19.11: Fortsetzung auf der nΣchsten Seite...
498
19.14. Ausblick
find . -name "*emil*" Sucht alle Dateien, in deren Namen
die Buchstabenfolge `emil' enthal-
ten ist.
man befehl Liefert eine Beschreibung von
befehl.
grep muster dateien Durchsucht alle dateien nach dem
angegebenen `muster', das natⁿr-
lich auch regulΣre Ausdrⁿcke" (sie-
he Abschnitt 19.7.2 auf Seite 482 oder
man regexp) enthalten kann.
Tabelle 19.11: ▄bersicht von Suchbefehlen
19.14 Ausblick
Die allgemeinen Verzeichnisse mit Befehlen unter Linux sind:
* /bin
* /sbin
* /usr/bin
* /usr/sbin
* /usr/X11R6/bin
Dort finden Sie viele weitere Befehle.
Mit man <befehl> erhalten Sie detaillierte Informationen zu den verfⁿg-
baren Befehlen und Programmen. Voraussetzung ist die Existenz einer ent-
sprechenden Manual-Page (siehe Abschnitt 19.9 auf Seite 488). Die Ausga-
be erfolgt dann auf das momentane StandardausgabegerΣt (i. Allg. der Bild-
schirm).
Mit Hilfe so genannter Pipes, in der Eingabezeile der Shell symbolisiert durch
das Zeichen `|', k÷nnen Sie diese Ausgaben auch direkt auf den Drucker
ausgeben oder gegebenenfalls direkt in Dateien schreiben lassen.
Ein Beispiel:
Sie m÷chten die Manual-Page zum Befehl ls ausdrucken lassen. Dies errei-
chen Sie mit:
tux@erde: > man -t ls | lpr
Thematisch geordnete Einstiege zu den Manual-Pages bietet Ihnen das Hy-
pertext-Hilfesystem Ihres SuSE Linux-Systems. Geben Sie einfach hilfe
oder susehelp ein. Hier haben Sie auch die M÷glichkeit, Querverweisen
auf weitere Manual-Pages zu folgen (engl. hypertext).
499
19. Einstieg in Linux
19.15 Der Editor vi
Die Bedienung des vi ist etwas gew÷hnungsbedⁿrftig. Er wird an dieser
Stelle anderen Editoren vorgezogen, weil er zum einen auf jedem UNIX-
Σhnlichen Betriebssystem zur Verfⁿgung steht und bei Linux zum standard-
mΣ▀igen Installationsumfang geh÷rt; zum anderen, weil seine Bedienung ein-
deutig ist und dadurch i. Allg. keine Mi▀verstΣndnisse auftreten. Au▀erdem:
wenn nichts geht, aber vi geht.
Die nun folgende Kurzanleitung sollte Sie in die Lage versetzen, mit Hilfe
des vi z. B. diverse Konfigurationsdateien zu editieren.
Konzept:
Der vi kennt 3 Betriebsarten (Modi):
* Befehlsmodus (engl. command mode)
Jeder Tastendruck wird als Teil eines Befehls interpretiert.
* Einfⁿgemodus (engl. insert mode)
Tastendrⁿcke werden als Texteingaben interpretiert.
* Komplexbefehlsmodus (engl. last line mode)
Fⁿr komplexere Befehle, die in der letzten Zeile editiert werden.
Die wichtigsten Befehle des Befehlsmodus sind:
i wechselt in den Eingabemodus (Zeichen werden an der aktuellen
Cursorposition eingegeben).
a wechselt in den Eingabemodus (Zeichen werden nach der aktuellen
Cursorposition eingegeben).
A wechselt in den Eingabemodus (Zeichen werden am Ende der Zeile
angehΣngt).
R wechselt in den Eingabemodus (ⁿberschreibt den alten Text).
r wechselt zum ▄berschreiben eines einzelnen Zeichens in den Ein-
gabemodus.
s wechselt in den Eingabemodus (das Zeichen, auf dem der Cursor
steht, wird durch die Eingabe ⁿberschrieben).
C wechselt in den Eingabemodus (der Rest der Zeile wird durch den
neuen Text ersetzt).
o wechselt in den Eingabemodus (nach der aktuellen Zeile wird eine
neue Zeile eingefⁿgt).
O wechselt in den Eingabemodus (vor der aktuellen Zeile wird eine
neue Zeile eingefⁿgt).
x l÷scht das aktuelle Zeichen.
dd l÷scht die aktuelle Zeile.
dw l÷scht bis zum Ende des aktuellen Worts.
cw wechselt in den Eingabemodus (der Rest des aktuellen Worts wird
durch die Eingabe ⁿberschrieben).
u nimmt den letzten Befehl zurⁿck.
Tabelle 19.12: Fortsetzung auf der nΣchsten Seite...
500
19.15. Der Editor vi
J hΣngt die folgende Zeile an die aktuelle an.
. wiederholt den letzten Befehl.
: wechselt in den Komplexbefehlsmodus.
Tabelle 19.12: Einfache Befehle des Editors vi
Allen Befehlen kann eine Zahl vorangestellt werden, die angibt, auf wie viele
Objekte sich der folgende Befehl beziehen soll. So k÷nnen durch Eingabe von
`3dw' drei W÷rter auf einmal gel÷scht werden. Durch Eingabe von `10x'
erreicht man das L÷schen von zehn Zeichen ab der Cursorposition, `20dd'
l÷scht 20 Zeilen.
Die wichtigsten Befehle des Komplexbefehlsmodus:
:q! verlΣsst vi, ohne ─nderungen zu speichern
:w <dateiname> speichert unter <dateiname>
:x speichert die geΣnderte Datei und verlΣsst den
Editor
:e <dateiname> editiert (lΣdt) <dateiname>
:u nimmt den letzten Editierbefehl zurⁿck
Tabelle 19.13: Komplexe Befehle des Editors vi
Das Drⁿcken der Taste ESC im Eingabemodus wechselt in den Befehlsmo-
dus.
501
19. Einstieg in Linux
502