Der Linux-Kernel hat zwei Hauptfunktionen: die Zugriffskontrolle auf physikalische Ger�te eines Computers und die Planung wann und wie Prozesse diese Ger�te beeinflussen. Das Verzeichnis /proc/ enth�lt eine Hierarchie spezieller Dateien, die den aktuellen Kernel-Status darstellen und Anwendungen und Benutzern einen Einblick in die Sicht des Kernels auf das System gestatten.
5.1. Ein virtuelles Dateisystem
Unter Linux werden alle Daten in Dateien gespeichert. Die meisten Benutzer kennen die beiden Grundarten von Dateien - Text und Bin�r. Das /proc Verzeichnis enth�lt allerdings eine andere Dateiart, die Virtuelle Datei genannt wird. Aus diesem Grund spricht man bei /proc/ oft von einem Virtuellen Dateisystem.
Diese virtuellen Dateien haben einige interessante Besonderheiten. Die meisten werden mit einer Dateigr��e von 0 Bytes aufgelistet, wenn man die Datei allerdings �ffnet, zeigt sie oft einiges an Informationen. Au�erdem spiegeln die meisten Zeit-und Datumseinstellungen der virtuellen Dateien die aktuelle Zeit und das aktuelle Datum wieder, was bedeutet, dass sie sich st�ndig �ndern.
Virtuelle Dateien wie /proc/interrupts, /proc/meminfo, /proc/mounts und /proc/partitions bieten einen aktuellen Einblick in die Systemumgebung. Andere, wie /proc/filesystems und das Verzeichnis /proc/sys/ bieten Informationen zur System-Konfiguration und zu Schnittstellen.
Um eine bessere Strukturierung zu erreichen, sind Dateien mit �hnlichen Informationen in virtuelle Verzeichnisse und Unter-Verzeichnisse einsortiert. Zum Beispiel /proc/ide enth�lt Informationen zu allen physikalischen IDE Ger�ten. Prozessverzeichnisse enthalten Informationen zu jedem im System laufenden Prozess.
5.1.1. Anzeigen virtueller Dateien
Mit cat, more oder less k�nnen Sie die Dateien in /proc/ mit ihrem enormen Informationsgehalt �ber das System direkt auslesen. Wenn Sie z.B. wissen m�chten, welche Art von CPU ein Computer hat, geben Sie den Befehl cat /proc/cpuinfo ein, und es erscheint in etwa Folgendes:
processor : 0
vendor_id : AuthenticAMD
cpu family : 5
model : 9
model name : AMD-K6(tm) 3D+ Processor
stepping : 1
cpu MHz : 400.919
cache size : 256 KB
fdiv_bug : no
hlt_bug : no
f00f_bug : no
coma_bug : no
fpu : yes
fpu_exception : yes
cpuid level : 1
wp : yes
flags : fpu vme de pse tsc msr mce cx8 pge mmx syscall 3dnow k6_mtrr
bogomips : 799.53 |
Bei der Anzeige unterschiedlicher virtueller Dateien im Dateisystem /proc/ werden Sie feststellen, dass einige Informationen leicht verst�ndlich sind, andere wiederum nicht lesbar sind. Aus diesem Grund gibt es Dienstprogramme, mit deren Hilfe Daten aus virtuellen Dateien lesbar angezeigt werden. Beispiele f�r diese Applikationen sind lspci, apm, free und top.
| Anmerkung |
---|
| Einige virtuelle Dateien im /proc k�nnen nur vom root gelesen werden. |
5.1.2. �ndern virtueller Dateien
Im Allgemeinen sind die meisten virtuellen Dateien im Verzeichnis /proc/ schreibgsch�tzt. Einige k�nnen jedoch dazu verwendet werden, �nderungen der Kernel-Einstellungen vorzunehmen. Das gilt im Besonderen f�r Dateien im Unterverzeichnis /proc/sys/.
Sie k�nnen den Wert einer virtuellen Datei �ndern, indem Sie den neuen Wert mit dem Befehl echo, gefolgt von dem gr��er-als Symbol (>), an die gegebene Datei weiterleiten. Um zum Beispiel den Hostnamen "on the fly" zu �ndern, geben Sie Folgendes ein:
echo www.example.com > /proc/sys/kernel/hostname |
Andere Dateien funktionieren als bin�re oder Boolesche Switches. Wenn Sie z.B. cat /proc/sys/net/ipv4/ip_forward eingeben, erscheint entweder 0 oder 1. 0 gibt an, dass der Kernel keine Netzwerk-Pakete weiterleitet. Mit dem Befehl echo zum �ndern des Wertes der Datei ip_forward in 1 k�nnen Sie das Weiterleiten von Paketen sofort einschalten.
| Tipp |
---|
| Eine weiterer Befehl zur �nderung von Einstellungen im Unterverzeichnis /proc/sys/ ist /sbin/sysctl. Weitere Informationen zu diesem Befehl erhalten Sie unter Abschnitt 5.4 |
Eine Liste einiger Kernel-Konfigurationsdateien, die im /proc/sys/-Unterverzeichnis enthalten sind, finden Sie unter Abschnitt 5.3.9.