Dieses Handbuch wird mit freundlicher Genehmigung von Sebastian Hetze auf den Servern der Linux Information Systems AG gehosted.

next up previous contents index
Next: Home, Sweet Home Up: Reise durch's Dateisystem Previous: Die Gerätedateien im Verzeichnis

Subsections


Die Konfigurationsdateien im Verzeichnis /etc

 

Im Verzeichnis /etc befinden sich Konfigurationsdateien für das Basissystem. Fast alle Dateien dieses Verzeichnisses enthalten normalen Text und können/müssen von der Systemverwalterin mit einem normalen Editor bearbeitet werden, um die von diesen Konfigurationsdateien gesteuerten Programme an das lokale System anzupassen.

Ein Listing des /etc-Verzeichnisses sieht beispielsweise so aus:

$ ls -F /etc
X11/         gettydefs    inittab      passwd       services
adjtime      group        issue        printcap     shells
csh.login    host.conf    ld.so.conf   profile      skel/
disktab      hosts        lilo.conf    protocols    syslog.conf
exports      hosts.allow  magic        psdatabase   termcap
fdprm        hosts.deny   motd         rc.d/        ttytype
fstab        hosts.equiv  mtab         resolv.conf
ftpusers     hosts.lpd    mtools       rpc
gateways     inetd.conf   networks     securetty
$ _

Aus Gründen der Systemsicherheit sollten ,,normale`` Benutzer die Dateien im Verzeichnis /etc nur lesen, aber nicht verändern können.

/etc/adjtime

Die Datei adjtime enthält die Daten zur Korrektur der batteriegepufferten CMOS-Uhr. Die Daten werden vom Systemprogramm clock ausgewertet. Weitere Informationen finden Sie auf Seite [*].

/etc/fdprm

   In der Datei /etc/fdprm können die Parameter von Diskettenformaten zur Programmierung des Floppycontrollers mit setfdprm festgehalten werden.

Jede Zeile, die nicht mit einem # als Kommentar gekennzeichnet ist, beschreibt ein Diskettenformat. Der erste Eintrag ist eine beliebige Zeichenkette zur namentlichen Bezeichnung des Formates. Die darauffolgenden 9 Einträge sind die eigentlichen Formatparameter.

Die Werte für die Formatparameter lassen sich unmittelbar nach dem Formatieren mit dem Kommando getfdprm ermitteln.

#Name      size  sec/t  hds  trk  stre   gap  rate  spec1  fmt_gap
23.80.2    3680     23    2   80     0  0x1c  0x14   0xcf     0x04
23.82.1    3772     23    2   82     0  0x1c  0x10   0xcf     0x04
23.82.2    3680     23    2   82     0  0x1c  0x14   0xcf     0x04

Weil der Kernel bereits 31 vordefinierte Formate automatisch erkennen und benutzen kann, ist die manuelle Einstellung des Diskettenformates in der Regel überflüssig.

Im Kernel sind keine 2m-Formate definiert. Wenn eine in diesem Format erstellte Diskette mit dem mount-Kommando in das Dateisystem eingebunden werden soll, müssen nach dem Einlegen der entsprechenden Diskette vor dem ersten Zugriff die entsprechenden Parameter geladen werden. In dem Beispiel oben sind unter 23.80.2 die Parameter für eine 2m-formatierte 3,5 Zoll Diskette mit 23 Sektoren pro Spur und 80 Spuren angegeben.

/etc/fstab

 

In der Datei /etc/fstab sind die dauerhaften Parameter für die Zusammensetzung des Dateisystems gespeichert. Hier legt die Systemverwalterin fest, welche Partitionen an welcher Stelle in das Dateisystem eingehängt werden. Die Datei wird von dem Kommando mount -a ausgewertet, wenn es bei der Systeminitialisierung von einem der Initialisierungsscripts ausgeführt wird.

Die Einträge in dieser Datei haben die Form:

Device    Mountpunkt    Typ    Optionen     Dump    Check

Eine genaue Beschreibung dieser Datei finden Sie ab Seite [*].

 

/etc/gettydefs

Diese Datei wird von dem im System V Stil arbeitenden getty_ps ausgewertet. Hier werden die Einstellungen des Terminaltreibers für die verschiedenen Geräte festgelegt. Eine genaue Beschreibung finden Sie im Abschnitt über getty_ps.

/etc/group

    In dieser Datei sind die Benutzergruppen und ihre Mitglieder festgehalten.

Die Datensätze der group Datei haben folgendes Format:

Gruppenname:Paßwort:Gruppennummer :Mitgliederliste

Weitere Informationen zur Verwaltung von Benutzergruppen finden Sie auf Seite [*].

Mit dem newgrp-Kommando kann jeder hier eingetragene Anwender die aktuelle Benutzergruppe wechseln. Wenn im Paßwort Feld ein verschlüsseltes Paßwort wie im entsprechenden Feld der /etc/passwd Datei eingetragen ist, können alle Systembenutzer, die das unverschlüsselte Paßwort kennen, in diese Gruppe wechseln.[*]

/etc/hosts

 

Die Datei /etc/hosts gehört zu den Konfigurationsdateien des TCP/IP Netzwerkes. Hier werden die typischen vier Byte langen IP-Adressen  den verbalen Namen der Netzwerkrechner fest zugeordnet. In Jugend des Internet mußten in dieser Datei alle Rechner des internationalen Netzes eingetragen sein, zu denen eventuell irgendwann einmal eine direkt benannte Verbindung aufgebaut werden könnte (das heißt eigentlich jeder Rechner des Internet).

Unter Linux wird die Auflösung eines Rechnernamens in seine IP-Adresse (und umgekehrt) durch den Domain Name Service mit dem bind-Paket erledigt. Um bei Einzelrechnern und kleinen lokalen Netzwerken den administrativen Aufwand eines Nameservers zu sparen, kann trotzdem weiterhin die /etc/hosts Datei benutzt werden. Dazu wird der als resolver  bezeichnete Teil des Nameservers durch entsprechende Einträge in der Datei /etc/host.conf veranlaßt, zuerst in der hosts Datei nach einer passenden Auflösung für eine Adresse zu suchen. Die Funktionen des resolver sind in der C-Standardbibliothek enthalten, deshalb wird er automatisch von allen Programmen mit Netzwerkfähigkeit (z.B. ftp, telnet, smail, aber auch vom X-Server) benutzt.

Die Einträge in /etc/hosts sind einfacher Text und bestehen aus den IP-Adressen der Hostrechner am Anfang einer Zeile und den offiziellen oder inoffiziellen Namen dieser Rechner, jeweils durch Leerzeichen oder Tabulatoren getrennt.

127.0.0.1       localhost
193.98.158.33   atlantis.lunetix.de atlantis
193.98.158.1    soho.lunetix.de soho
193.98.158.2    cicero.lunetix.de cicero
193.98.158.5    ovid.lunetix.de ovid

/etc/inittab

 

Die Datei /etc/inittab wird vom init Programm benutzt, das die darin festgelegten Prozesse startet und so das Benutzersystem initialisiert. Eine genaue Beschreibung dieser Datei finden Sie im Abschnitt über die Systeminitialisierung.

/etc/issue

 

Die Datei /etc/issue wird von getty vor dem Login-Prompt ausgegeben. Der Text, oder besser das Bild, das mit dieser Datei angezeigt wird, ist so etwas wie die Fassade des Systems.

Nach der Installation eines neuen Systems wird in diesem Text-Bild meistens der Name der Linux-Distribution präsentiert. Die Distributoren wenden gerne einen Trick an, um den Austausch dieser Titelseite zu verhindern: In einem der Initialisierungsscripts (beispielsweise /etc/rc.d/rc.local) wird bei jedem Systemstart die issue-Datei mit der Datei des Distributors überschrieben. Wenn Sie Ihrem System eine eigene Fassade geben wollen, müssen Sie diesen Mechanismus abstellen oder an Ihre eigenen Bedürfnisse anpassen.

/etc/ld.so.conf

   In der Konfigurationsdatei /etc/ld.so.conf werden die Verzeichnisse angegeben, in denen das Systemprogramm ldconfig nach neuen Shared Libraries sucht.

ldconfig erzeugt die Datei /etc/ld.so.cache und die symbolischen Links auf die dynamischen Laufzeitbibliotheken, mit denen der Laufzeitlinker ld.so die Shared Libraries identifiziert.

Die beiden Standardverzeichnisse für die Laufzeitbibliotheken, /lib und /usr/lib müssen in /etc/ld.so.conf nicht extra angegeben werden. Zusätzliche Verzeichnisse, in denen Shared Libraries für den Laufzeitlinker typischerweise installiert werden, sind /usr/X11R6/lib und /usr/i486-linuxaout/lib.

Das Programm ldconfig sollte bei jedem Systemstart automatisch von einem der Initialisierungscripts aufgerufen werden, damit stets die aktuellsten Versionen aller Laufzeitbibliotheken verwendet werden.  

/etc/login.defs

Die Datei /etc/login.defs gehört zum login Programm aus dem Shadow Paßwortsystem. Es liest daraus die Parameter, mit denen beispielsweise eingestellt wird, wie oft ein fehlgeschlagenes Login wiederholt werden darf und ob und wo die Meldungen über solche Fehlschläge festgehalten werden. Hier können auch einige Umgebungsvariablen   für alle Prozesse festgelegt werden, die in der vom login erzeugten Prozeßfamilie gestartet werden. Diese Datei ist sehr ausführlich kommentiert.

/etc/magic

 

Die Datenbank /etc/magic wird vom Kommando file benutzt, um den Typ einer Datei festzustellen. Es vergleicht die hier gespeicherten Merkmale mit der zu untersuchenden Datei und gibt bei Übereinstimmung den hier verzeichneten Dateityp aus.

Diese Datei befindet sich häufig nicht im Verzeichnis /etc sondern in /usr/lib.

/etc/man.config

In der Datei /etc/man.config wird die Laufzeitkonfiguration des Online-Hilfesystems man festgelegt. Hier kann der MANPATH bestimmt werden, das sind die Verzeichnisse, in denen nach den Manualpages gesucht wird. Hier kann auch die Reihenfolge verändert werden, in der die verschiedenen Sektionen nach einer Manualpage durchsucht werden.

/etc/motd

 

Die Message Of The Day wird jedem User automatisch am Ende der Login-Prozedur angezeigt, noch bevor die Shell den ersten Prompt ausgibt. Der Zweck dieser Datei ist, wie der Name schon sagt, in möglichst plakativer Form über eine aktuelle Neuigkeit von allgemeiner Wichtigkeit zu informieren.

/etc/nologin

 

Die Datei /etc/nologin wird nur vom login Programm benutzt. Wenn diese Datei existiert, ist jedes ,,normale`` Einloggen im System unmöglich. Nur die Superuserin (root) kann sich trotzdem beim System anmelden. Wenn ein anderer Benutzer versucht, sich einzuloggen, wird der Inhalt der Datei /etc/nologin ausgegeben.

Es ist ratsam, in der Datei /etc/rc bei der Initialisierung des Systems mit dem Kommando `rm -f /etc/nologin' eine eventuell noch vorhandene Sperrung zu lösen.

/etc/passwd

  Die Datei /etc/passwd ist die Benutzerdatenbank des Systems. Hier werden die Namen, die Benutzernummern und das Heimatverzeichnis der Anwender gespeichert. Außerdem werden in der ,,normalen`` passwd Datei auch die verschlüsselten Paßwörter gespeichert.

Die Datensätze der Paßwortdatei bestehen aus:

Benutzername:Paßwort: Benutzernummer:Gruppennummer: GCOS:Heimat:Shell

Jeder Benutzer kann mit dem Systemkommando passwd sein Paßwort selbständig ändern. Er sollte das in regelmäßigen Abständen und zu besonderen Anlässen auch tun.

Ausführlichere Informationen zur Benutzerverwaltung finden Sie ab Seite [*].

/etc/printcap

Die Datei /etc/printcap enthält eine stark formalisierte Beschreibung des oder der Drucker des Systems. Sie wird vom lpd Druckerdämon ausgewertet, der die Druckjobs im System verwaltet. Eine Beschreibung ist im Kapitel über Dämonen zu finden.

/etc/profile

   

Die Datei /etc/profile wird von den Loginshells aller Benutzer gelesen und als Shellscript ausgeführt. Hier werden Grundeinstellungen der Shellumgebung für alle User vorgenommen. Wenn sie nicht vor dem Überschreiben geschützt werden (siehe beim Shellkommando typeset), können alle Einstellungen von einer benutzereigenen Initialisierungsdatei wieder geändert werden.

# Beispiel für /etc/profile

PATH="/bin:/usr/bin:/usr/X11R6/bin:/usr/local/bin"
PS1="[\u@\h \W]\\$ "
PS2="> "
umask 022
ulimit -c 0

/etc/psdatabase

 

Die Datei /etc/psdatabase enthält kernelabhängige Daten für das Systemprogramm ps (genauer procps). Anhand der in dieser Datei abgespeicherten Informationen kann ps in einem ausführlichen Listing der Prozeßtabelle (mit der Option -l) den Namen der Kernelfunktion anzeigen, in der ein Prozeß gerade schläft.

Die psdatabase kann nicht mit einem normalen Editor bearbeitet werden. Sie wird durch das spezielle Programm psupdate aus der Kerneldatei /usr/src/linux/vmlinux erzeugt.

Das kernelabhängige ps benötigt ebenfalls eine derartige Datei. Das Format ist jedoch nicht kompatibel. kmem-ps legt seine psdatabase normalerweise im Verzeichnis /var/run ab.

/etc/rc*

Die Dateien /etc/rc* sind die Systeminitialisierungsdateien. Sie werden vom Systemprogramm init beim Booten der Shell übergeben, die die darin enthaltenen Kommandozeilen ausführt.

Eine ausführliche Beschreibung der Systeminitialisierung durch init finden Sie ab Seite [*] in diesem Buch.

/etc/securetty

  In der Datei /etc/securetty werden die Ports (Terminals) angegeben, an denen sich die Superuserin (root) einloggen darf. Diese Datei wird vom login Programm gelesen und ausgewertet.

Wenn Sie das Shadow-Paßwortsystem installiert haben, kann diese Datei durch den Eintrag ``CONSOLE /etc/securetty'' in login.defs aktiviert werden.

/etc/shells

 

In der Datei /etc/shells sind alle verfügbaren (zugelassenen und uneingeschränkten) Loginshells eingetragen.

Sie wird vom chsh-Kommando ausgewertet. Dem Anwender wird damit die Möglichkeit gegeben, die in dieser Datei zeilenweise aufgelisteten Programme als Loginshell in der Datei /etc/passwd einzutragen.

Außerdem wird sie vom ftp Dämon benutzt, um festzustellen, ob ein Benutzer einen uneingeschränkten Shellaccount hat, um ihm in diesem Fall auch den uneingeschränkten FTP-Zugang zu gestatten.

/etc/syslogd.conf

Der syslogd Systemschreiber erfährt aus dieser Datei, welche Meldungen er wohin schreiben soll. Eine genaue Beschreibung der Datei finden Sie hier.

/etc/termcap

 

Die Datei /etc/termcap ist eine Datenbank, in der die Steuersequenzen für verschiedene Terminals abgespeichert sind. Diese Datenbank ist stark formalisiert, kann aber mit jedem Editor gelesen und bearbeitet werden.

Viele Programme benutzen diese Datenbank, indem sie die Steuerzeichen für die Bildschirmausgabe und die ankommenden Tastaturcodes mit den entsprechenden Einträgen in der Datenbank übersetzen. Die zu einem Terminal passende Übersetzungstabelle wird in der TERM Umgebungsvariablen bestimmt, die vom getty Programm oder bei der Shellinitialisierung gesetzt wird.

Eine genaue Erklärung aller möglichen Einträge dieser Datei würde den Rahmen dieses Buches sprengen. Es gibt eine TEX info-Datei zu termcap und Tim O`Reilly hat Bücher über termcap und über die curses-Library herausgebracht, die Ihnen alle Fragen zu diesem Thema beantworten können.

Nichts über TCP/IP

Das komplette Thema des TCP/IP Networking ist auch in dieser Auflage des Linux-Anwenderhandbuches ausgeklammert. Damit Sie einen groben Überblick erhalten, welche Dateien und Programme in diesen Bereich fallen, sind sie hier aufgeführt.

HOSTNAME
Fully Qualified Domain Name
diphosts
eine Art /etc/passwd für SLIP Login

exports
Verzeichnisse und Rechnernamen, die diese Verzeichnisse per NFS mounten dürfen.

ftpaccess
Woher? Wann? Was? ...

ftpusers
... und Wer NICHT?

gateways
Hier werden die Rechner des lokalen Netzes aufgeführt, die Kontakt mit andern Netzen haben.

host.conf
eine der Konfigurationsdateien für den Domain Name Service

hosts.allow
Hier werden die Rechner und Netze eingetragen, mit denen Verbindungen aufgebaut werden dürfen.

hosts.deny
Die in dieser Datei aufgeführten Rechner und Netze können sich nicht mit diesem Rechner verbinden.

hosts.equiv
Diese Rechner werden ,,gleichrangig`` behandelt.

inetd.conf
In dieser Konfigurationsdatei wird bestimmt, welche Services vom inetd Netzwerkdämon gestartet werden.

named.boot
eine Initialisierungsdatei für den named Dämon des Domain Name Services.

networks
die Namen und IP-Adressen der lokalen Netze.

nntpserver
der Name und die IP-Adresse des Newsrechners.

protocols
die Liste aller Internetprotokolle, die vom Kernel unterstützt werden.

resolv.conf
Diese Konfigurationsdatei bestimmt, ob und wo ein Nameserver erreicht werden kann.

rpc
enthält die Zuordnung der durch den rpc-Service bereitgestellten Netzdienste zu Socketnummern.

services
Diese Datei enthält eine Liste aller ,,well known services`` sowie einer Reihe weiterer Standardservices im Internet.

 


next up previous contents index
Next: Home, Sweet Home Up: Reise durch's Dateisystem Previous: Die Gerätedateien im Verzeichnis

Das Linux Anwenderhandbuch
(C) 1997 LunetIX