Follow Techotopia on Twitter

On-line Guides
All Guides
eBook Store
iOS / Android
Linux for Beginners
Office Productivity
Linux Installation
Linux Security
Linux Utilities
Linux Virtualization
Linux Kernel
System/Network Admin
Programming
Scripting Languages
Development Tools
Web Development
GUI Toolkits/Desktop
Databases
Mail Systems
openSolaris
Eclipse Documentation
Techotopia.com
Virtuatopia.com
Answertopia.com

How To Guides
Virtualization
General System Admin
Linux Security
Linux Filesystems
Web Servers
Graphics & Desktop
PC Hardware
Windows
Problem Solutions
Privacy Policy

  




 

 

NOTE: CentOS Enterprise Linux is built from the Red Hat Enterprise Linux source code. Other than logo and name changes CentOS Enterprise Linux is compatible with the equivalent Red Hat version. This document applies equally to both Red Hat and CentOS Enterprise Linux.
Linuxtopia - CentOS Enterprise Linux Rerenzhandbuch- Verzeichnisse in /proc/

5.3. Verzeichnisse in /proc/

Allgemeine Informationsgruppen bez�glich des Kernels werden in Verzeichnisse und Unterverzeichnisse in /proc sortiert.

5.3.1. Prozess-Verzeichnisse

Jedes /proc/ Verzeichnis enth�lt einige Verzeichnisse mit numerischen Namen. Eine Liste mit solchen f�ngt �hnlich dieser Liste an:

dr-xr-xr-x    3 root     root            0 Feb 13 01:28 1
dr-xr-xr-x    3 root     root            0 Feb 13 01:28 1010
dr-xr-xr-x    3 xfs      xfs             0 Feb 13 01:28 1087
dr-xr-xr-x    3 daemon   daemon          0 Feb 13 01:28 1123
dr-xr-xr-x    3 root     root            0 Feb 13 01:28 11307
dr-xr-xr-x    3 apache   apache          0 Feb 13 01:28 13660
dr-xr-xr-x    3 rpc      rpc             0 Feb 13 01:28 637
dr-xr-xr-x    3 rpcuser  rpcuser         0 Feb 13 01:28 666

Diese Verzeichnisse hei�en Prozess-Verzeichnisse, weil sie sich auf eine Prozess-ID beziehen und Informationen zu diesem Prozess enthalten. Der Eigent�mer und die Gruppe jedes Prozess-Verzeichnisses wird auf die ID des Benutzers, der den Prozess ausf�hrt, gesetzt. Wenn der Prozess beendet wird, verschwindet das zugeh�rige /proc Prozess-Verzeichnis.

Jedes Prozess-Verzeichnis enth�lt die folgenden Dateien:

  • cmdline — Diese Datei enth�lt den Befehl, der bei Prozessstart ausgegeben wird.

  • cwd — Ein symbolischer Link zum aktuellen Arbeitsverzeichnis des Prozesses.

  • environ — Gibt eine Liste von Umgebungsvariablen des Prozesses aus. Die Variablennamen werde in Gro�buchstaben, die Werte in Kleinbuchstaben ausgegeben.

  • exe — Ein symbolischer Link zur ausgef�hrten Datei des Prozesses.

  • fd — Ein Verzeichnis mit allen Datei-Descriptors eines bestimmten Prozesses. Diese werden als nummerierte Links ausgegeben:

    total 0
    lrwx------    1 root     root           64 May  8 11:31 0 -> /dev/null
    lrwx------    1 root     root           64 May  8 11:31 1 -> /dev/null
    lrwx------    1 root     root           64 May  8 11:31 2 -> /dev/null
    lrwx------    1 root     root           64 May  8 11:31 3 -> /dev/ptmx
    lrwx------    1 root     root           64 May  8 11:31 4 -> socket:[7774817]
    lrwx------    1 root     root           64 May  8 11:31 5 -> /dev/ptmx
    lrwx------    1 root     root           64 May  8 11:31 6 -> socket:[7774829]
    lrwx------    1 root     root           64 May  8 11:31 7 -> /dev/ptmx
  • maps — Enth�lt Speicher-Maps zu den verschiedenen ausf�hrbaren Dateien und Library-Dateien, die mit diesem Prozess zusammenh�ngen. Diese Datei kann sehr lang werden, wenn ein sehr komplexer Prozess ausgef�hrt wird, eine Beispielausgabe eines sshd Prozesses f�ngt so an:

    08048000-08086000 r-xp 00000000 03:03 391479     /usr/sbin/sshd
    08086000-08088000 rw-p 0003e000 03:03 391479     /usr/sbin/sshd
    08088000-08095000 rwxp 00000000 00:00 0
    40000000-40013000 r-xp 00000000 03:03 293205     /lib/ld-2.2.5.so
    40013000-40014000 rw-p 00013000 03:03 293205     /lib/ld-2.2.5.so
    40031000-40038000 r-xp 00000000 03:03 293282     /lib/libpam.so.0.75
    40038000-40039000 rw-p 00006000 03:03 293282     /lib/libpam.so.0.75
    40039000-4003a000 rw-p 00000000 00:00 0
    4003a000-4003c000 r-xp 00000000 03:03 293218     /lib/libdl-2.2.5.so
    4003c000-4003d000 rw-p 00001000 03:03 293218     /lib/libdl-2.2.5.so
  • mem — Der Speicher, der von diesem Prozess benutzt wird. Diese Datei kann vom Benutzer nicht gelesen werden.

  • root — Ein Link zum root Verzeichnis des Prozesses.

  • stat — Der Status des Prozesses.

  • statm — Der Status des Speichers, der von diesem Prozess benutzt wird. Eine beispielhafte statm Datei sieht aus wie folgt:

    263 210 210 5 0 205 0

    Die sieben Spalten h�ngen mit verschiedenen Speicherstatistiken f�r den Prozess zusammen. Sie zeigen von links nach rechts verschiedene Aspekte des benutzten Speichers:

    1. Gesamte Programmgr��e, in Kilobytes.

    2. Gr��e der Speicherteile, in Kilobytes.

    3. Anzahl der gemeinsam verwendeten Seiten.

    4. Anzahl der Seiten mit Programmcode.

    5. Anzahl der Seiten mit Stack/Daten.

    6. Anzahl der Library-Seiten.

    7. Anzahl der unsauberen Seiten.

  • status — Bietet den Status des Prozesses in einer lesbareren Form als stat oder statm an. Eine Beispielausgabe bei sshd sieht �hnlich wie folgt aus:

    Name:	sshd
    State:	S (sleeping)
    Tgid:	797
    Pid:	797
    PPid:	1
    TracerPid:	0
    Uid:	0	0	0	0
    Gid:	0	0	0	0
    FDSize:	32
    Groups:	
    VmSize:	    3072 kB
    VmLck:	       0 kB
    VmRSS:	     840 kB
    VmData:	     104 kB
    VmStk:	      12 kB
    VmExe:	     300 kB
    VmLib:	    2528 kB
    SigPnd:	0000000000000000
    SigBlk:	0000000000000000
    SigIgn:	8000000000001000
    SigCgt:	0000000000014005
    CapInh:	0000000000000000
    CapPrm:	00000000fffffeff
    CapEff:	00000000fffffeff

    Die Informationen in dieser Ausgabe enthalten den Prozessnamen, die ID, den Status (wie z.B. S (sleeping) oder R (running), Benutzer/Gruppe die den Prozess ausf�hren, und detailierte Daten bez�glich der Speicherauslastung.

5.3.1.1. /proc/self/

Das Verzeichnis /proc/self ist ein Link zum zur Zeit laufenden Prozess. Das erlaubt einem Prozess, sich selbst zu beobachten, ohne die eigene Prozess-ID zu kennen.

In einer Shell-Umgebung hat eine Auflistung des Verzeichnises /proc/self den gleichen Inhalt wie die Auflistung des Prozess-Verzeichnisses dieses Prozesses.

5.3.2. /proc/bus/

Dieses Verzeichnis enth�lt spezifische Informationen zu den verschiedenen Bussystemen, die auf einem System verf�gbar sind. Zum Beispiel finden Sie auf einem Standard-PC mit PCI- und USB-Bussen, aktuelle Daten zu jedem dieser Bussysteme in einem Unterverzeichnis von /proc/bus, das den Namen des Busses hat, wie z.B. /proc/bus/pci/.

Die Unterverzeichnisse und Dateien im Verzeichnis /proc/bus/ h�ngen von den zum System verbundenen Ger�ten ab. Jeder Bustyp hat jedoch zumindest ein Verzeichnis. Innerhalb dieser Bus-Verzeichnisse befindet sich zumindest ein Unterverzeichnis mit einem numerischen Namen, wie 001, das Bin�rdateien enth�lt.

Das Verzeichnis /proc/bus/usb/ enth�lt Dateien, die zu Ger�ten an den USB-Bussen geh�ren, genauso wie die Treiber, die gebraucht werden, um die Ger�te zu benutzen. Folgend ist ein Beispiel eines /proc/bus/usb/-Verzeichnisses:

total 0
dr-xr-xr-x    1 root     root            0 May  3 16:25 001
-r--r--r--    1 root     root            0 May  3 16:25 devices
-r--r--r--    1 root     root            0 May  3 16:25 drivers

Das Verzeichnis /proc/bus/usb/001 enth�lt alle Ger�te am ersten USB-Bus. Wenn Sie sich den Inhalt der Datei devices ansehen, k�nnen Sie sehen, dass es sich um das USB root Hub auf dem Mainboard handelt:

Folgend ist ein Beispiel der Datei /proc/bus/usb/devices:

T:  Bus=01 Lev=00 Prnt=00 Port=00 Cnt=00 Dev#=  1 Spd=12  MxCh= 2
B:  Alloc=  0/900 us ( 0%), #Int=  0, #Iso=  0
D:  Ver= 1.00 Cls=09(hub  ) Sub=00 Prot=00 MxPS= 8 #Cfgs=  1
P:  Vendor=0000 ProdID=0000 Rev= 0.00
S:  Product=USB UHCI Root Hub
S:  SerialNumber=d400
C:* #Ifs= 1 Cfg#= 1 Atr=40 MxPwr=  0mA
I:  If#= 0 Alt= 0 #EPs= 1 Cls=09(hub  ) Sub=00 Prot=00 Driver=hub
E:  Ad=81(I) Atr=03(Int.) MxPS=   8 Ivl=255ms

5.3.3. /proc/driver/

Dieses Verzeichnis enth�lt Informationen zu bestimmten Treibern, die vom Kernel verwendet werden.

Eine h�ufig hier anzufindende Datei ist rtc, welche die Ausgabe des Treibers f�r die Echtzeituhr (RTC), ein Ger�t zum Erhalten der Zeitangabe w�hrend der Rechner ausgeschaltet ist, darstellt. Eine Beispielausgabe von /proc/driver/rtc:

rtc_time        : 16:21:00
rtc_date        : 2004-08-31
rtc_epoch       : 1900
alarm           : 21:16:27
DST_enable      : no
BCD             : yes
24hr            : yes
square_wave     : no
alarm_IRQ       : no
update_IRQ      : no
periodic_IRQ    : no
periodic_freq   : 1024
batt_status     : okay

Weitere Informationen �ber RTC finden Sie in der folgenden, installierten Dokumentation:

/usr/share/doc/kernel-doc-<version>/Documentation/rtc.txt.

5.3.4. /proc/fs

Dieses Verzeichnis zeigt an, welche Dateisysteme exportiert werden. Arbeiten Sie mit einem NFS Server, geben Sie cat /proc/fs/nfs/exports ein, um die gemeinsam verwendeten Dateisysteme und die daf�r gew�hrten Berechtigungen anzuzeigen. Weitere Informationen zur gemeinsamen Verwendung von Dateisystemen mit NFS finden Sie unter Kapitel 9.

5.3.5. /proc/ide/

Dieses Verzeichnis beinhaltet Informationen �ber IDE-Ger�te auf diesem System. Jeder IDE-Kanal wird von einem separaten Verzeichnis wie z.B. /proc/ide/ide0 und /proc/ide/ide1 repr�sentiert. Zus�tzlich gibt es eine drivers-Datei, welche die Versionsnummer der verschiedenen, in diesem IDE-Kanal verwendeten Treiber darstellt:

ide-floppy version 0.99.newide
ide-cdrom version 4.61
ide-disk version 1.18

Viele Chips�tze bieten eine Informationsdatei in diesem Verzeichnis an, welche zus�tzliche Daten betreffend der Festplatten, die �ber die Kan�le angebunden sind, ausgibt. Zum Beispiel gibt ein generischer Intel PIIX4 Ultra 33 Chipsatz eine Datei /proc/ide/piix aus, die Ihnen zeigt, ob DMA oder UDMA f�r Ger�te an den IDE-Kan�len aktiviert sind:



                              Intel PIIX4 Ultra 33 Chipset.
------------- Primary Channel ---------------- Secondary Channel -------------
                 enabled                          enabled
------------- drive0 --------- drive1 -------- drive0 ---------- drive1 ------
DMA enabled:    yes              no              yes               no 
UDMA enabled:   yes              no              no                no 
UDMA enabled:   2                X               X                 X
UDMA
DMA
PIO

Im Verzeichnis eines IDE-Kanals, wie z.B. ide0 f�r den ersten Kanal, finden Sie noch mehr Informationen. Die Datei channel zeigt die Kanalnummer an, wohingegen die Datei model den Bustyp am Kanal anzeigt (z.B. pci).

5.3.5.1. Ger�te-Verzeichnisse

In jedem IDE-Kanal-Verzeichnis befindet sich ein Ger�te-Verzeichnis. Der Name des Ger�te-Verzeichnisses entspricht dem Laufwerksbuchstaben im /dev-Verzeichnis. So ist z.B. das erste IDE-Laufwerk in ide0 hda.

AnmerkungAnmerkung
 

F�r jedes dieser Ger�te-Verzeichnisse gibt es einen symbolischen Link zum /proc/ide/ Verzeichnis.

Jedes Ger�te-Verzeichnis enth�lt eine Sammlung von Informationen und Statistiken. Der Inhalt dieser Verzeichnisse ver�ndert sich je nach angesprochenem Ger�t. Einige der wichtigen Dateien, die bei verschiedenen Ger�ten vorhanden sind, umfassen unter anderem:

  • cache — Der Ger�te-Cache.

  • capacity — Die Kapazit�t des Ger�tes in 512 Byte Bl�cken.

  • driver — Treiber und Treiberversion, die benutzt wird, um das Ger�t anzusprechen.

  • geometry — Physische und logische Geometrie des Ger�tes.

  • media — Der Ger�te-Typ, wie zum Beispiel disk

  • model — Modellname oder Nummer des Ger�tes

  • settings — Eine Liste von aktuellen Parametern eines Ger�tes. Diese Datei enth�lt normalerweise einige wissenswerte, technische Informationen. Ein Beispiel einer settings-Datei f�r eine Standard IDE-Festplatte sieht ungef�hr so aus:

    name                value          min          max          mode
    ----                -----          ---          ---          ----
    acoustic            0              0            254          rw
    address             0              0            2            rw
    bios_cyl            38752          0            65535        rw
    bios_head           16             0            255          rw
    bios_sect           63             0            63           rw
    bswap               0              0            1            r
    current_speed       68             0            70           rw
    failures            0              0            65535        rw
    init_speed          68             0            70           rw
    io_32bit            0              0            3            rw
    keepsettings        0              0            1            rw
    lun                 0              0            7            rw
    max_failures        1              0            65535        rw
    multcount           16             0            16           rw
    nice1               1              0            1            rw
    nowerr              0              0            1            rw
    number              0              0            3            rw
    pio_mode            write-only     0            255          w
    unmaskirq           0              0            1            rw
    using_dma           1              0            1            rw
    wcache              1              0            1            rw

5.3.6. /proc/irq/

Dieses Verzeichnis wird benutzt, um 'IRQ zu CPU'-Affinit�t einzustellen. Dies erlaubt Ihnen, einen bestimmten IRQ mit nur einer CPU zu verbinden. Alternativ dazu kann eine CPU z.B. auch vom IRQ-Handling entbunden werden.

Jeder IRQ hat sein eigenes Verzeichnis, was die individuelle Konfiguration jedes IRQ erm�glicht. Die Datei /proc/irq/prof_cpu_mask ist eine Bitmaske, die die Standardwerte f�r die Datei smp_affinity im IRQ-Verzeichnis enth�lt. Die Werte in smp_affinity legen fest, welche CPUs f�r diesen speziellen IRQ verantwortlich sind.

F�r weitere Informationen zum Verzeichnis /proc/irq/ sehen Sie folgende, installierte Dokumentation:

/usr/share/doc/kernel-doc-<version>/Documentation/filesystems/proc.txt

5.3.7. /proc/net/

Dieses Verzeichnis bietet einen weitgehenden Einblick in verschiedene Netzwerk-Parameter und -Statistiken. Jede Datei deckt einen bestimmten Informationsbereich zum Systemnetzwerkbereich ab. Es folgt eine Teilliste des Verzeichnisses /proc/net/:

  • arp — Enth�lt die ARP-Tabelle des Kernels. Diese Datei ist besonders sinnvoll, um eine Hardware-Adresse einer IP-Adresse zuzuordnen.

  • atm — Ein Verzeichnis, das Dateien mit verschiedenen Einstellungen und Statistiken zum Asynchronous Transfer Mode (ATM) enth�lt. Dieses Verzeichnis wird vor allem mit ATM-Netzkarten und ADSL-Karten benutzt.

  • dev — Listet die verschiedenen Netzwerk-Ger�te, die im System konfiguriert sind, komplett mit Sende- und Empfangsstatistiken, auf. Diese Datei zeigt Ihnen, welche Schnittstelle wieviel Bytes empfangen und gesendet hat, die eingehende und ausgehende Paketanzahl, die Anzahl von Fehlern, verlorene Pakete und vieles mehr an.

  • dev_mcast — Zeigt die verschiedenen Layer2 Multicast Gruppen an, auf denen ein Ger�t zuh�rt.

  • igmp — Listet die von diesem System zusammengefassten IP-Adressen auf.

  • ip_conntrack — Listet gefundene Netzwerkverbindungen f�r Rechner mit weiterleitenden IP-Verbindungen auf.

  • ip_tables_names — Listet die verwendeten Typen von iptables. Diese Datei besteht nur dann, wenniptables auf dem System aktiv ist und einen oder mehrere der folgenden Werte enth�lt: filter, mangle oder nat.

  • ip_mr_cache — Liste des Multicasting Routing Cache.

  • ip_mr_vif — Liste der virtuellen Schnittstellen zum Multicasting.

  • netstat — Enth�lt eine umfangreiche und detaillierte Sammlung von Netzwerk-Statistiken, mit TCP Timeouts, gesendeten und empfangenen SYN-Cookies und vielem mehr.

  • psched — Liste der globalen Paket Scheduler Parametern.

  • raw — Liste der Raw-Ger�t Statistiken.

  • route — Zeigt die Kernel-Routing-Tabelle an.

  • rt_cache — Zeigt den aktuellen Routing Cache.

  • snmp — Eine Liste von Simple Network Management Protocol (SNMP) Daten verschiedener Netzwerk-Protokolle.

  • sockstat — Liefert Statistiken zum Socket.

  • tcp — Enth�lt detaillierte Informationen zum TCP-Socket.

  • tr_rif — Die Token Ring RIF Routing Tabelle.

  • udp — Enth�lt detaillierte Informationen zum UDP-Socket.

  • unix — Listet die UNIX-Domain-Sockets auf, die zur Zeit benutzt werden.

  • wireless — Zeigt Informationen zu Wireless Interfaces.

5.3.8. /proc/scsi/

Dieses Verzeichnis ist analog zum Verzeichnis /proc/ide/, kann aber nur f�r verbundene SCSI-Ger�te verwendet werden.

Die wichtigste Datei hier ist /proc/scsi/scsi, welche eine Liste mit allen erkannten SCSI-Ger�ten enth�lt. Aus dieser Auflistung k�nnen Sie den Typ des Ger�tes, den Modell-Namen, den Hersteller und die SCSI Kanal/ID-Daten abrufen.

Wenn ein System zum Beispiel ein SCSI CD-ROM, ein Bandlaufwerk, Festplatten und einen RAID-Controller beinhaltet, k�nnte die Datei �hnlich wie in diesem Beispiel aussehen:

Attached devices: 
Host: scsi1 Channel: 00 Id: 05 Lun: 00
  Vendor: NEC      Model: CD-ROM DRIVE:466 Rev: 1.06
  Type:   CD-ROM                           ANSI SCSI revision: 02
Host: scsi1 Channel: 00 Id: 06 Lun: 00
  Vendor: ARCHIVE  Model: Python 04106-XXX Rev: 7350
  Type:   Sequential-Access                ANSI SCSI revision: 02
Host: scsi2 Channel: 00 Id: 06 Lun: 00
  Vendor: DELL     Model: 1x6 U2W SCSI BP  Rev: 5.35
  Type:   Processor                        ANSI SCSI revision: 02
Host: scsi2 Channel: 02 Id: 00 Lun: 00
  Vendor: MegaRAID Model: LD0 RAID5 34556R Rev: 1.01
  Type:   Direct-Access                    ANSI SCSI revision: 02

Jeder SCSI-Treiber, der vom System benutzt wird, hat ein eigenes Verzeichnis in /proc/scsi/, welches spezifische Dateien f�r jeden Controller enth�lt. F�r unser Beispiel oben gibt es die Verzeichnisse aic7xxx und megaraid, da diese beiden Treiber benutzt werden. Die Dateien in diesen beiden Unterverzeichnissen beinhalten typischerweise I/O-Adressbereiche, IRQ-Informationen und Statistiken f�r den SCSI-Controller, der den Treiber benutzt. Jeder Controller liefert Informationen in verschiedener Gr��e und Art. Die Datei des Adaptec AIC-7880 Ultra SCSI Hostadapter in unserem Beispiel erzeugt folgende Ausgabe:

Adaptec AIC7xxx driver version: 5.1.20/3.2.4
Compile Options:
  TCQ Enabled By Default : Disabled
  AIC7XXX_PROC_STATS     : Enabled
  AIC7XXX_RESET_DELAY    : 5

Adapter Configuration:
           SCSI Adapter: Adaptec AIC-7880 Ultra SCSI host adapter
                           Ultra Narrow Controller
    PCI MMAPed I/O Base: 0xfcffe000
 Adapter SEEPROM Config: SEEPROM found and used.
      Adaptec SCSI BIOS: Enabled
                    IRQ: 30
                   SCBs: Active 0, Max Active 1,
                         Allocated 15, HW 16, Page 255
             Interrupts: 33726
      BIOS Control Word: 0x18a6
   Adapter Control Word: 0x1c5f
   Extended Translation: Enabled
Disconnect Enable Flags: 0x00ff
     Ultra Enable Flags: 0x0020
 Tag Queue Enable Flags: 0x0000
Ordered Queue Tag Flags: 0x0000
Default Tag Queue Depth: 8
    Tagged Queue By Device array for aic7xxx host instance 1:
      {255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255}
    Actual queue depth per device for aic7xxx host instance 1:
      {1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1}

Statistics:


(scsi1:0:5:0)
  Device using Narrow/Sync transfers at 20.0 MByte/sec, offset 15
  Transinfo settings: current(12/15/0/0), goal(12/15/0/0), user(12/15/0/0)
  Total transfers 0 (0 reads and 0 writes)
             < 2K      2K+     4K+     8K+    16K+    32K+    64K+   128K+
   Reads:       0       0       0       0       0       0       0       0
  Writes:       0       0       0       0       0       0       0       0


(scsi1:0:6:0)
  Device using Narrow/Sync transfers at 10.0 MByte/sec, offset 15
  Transinfo settings: current(25/15/0/0), goal(12/15/0/0), user(12/15/0/0)
  Total transfers 132 (0 reads and 132 writes)
             < 2K      2K+     4K+     8K+    16K+    32K+    64K+   128K+
   Reads:       0       0       0       0       0       0       0       0
  Writes:       0       0       0       1     131       0       0       0

Dieser Bildschirm zeigt die Transfergeschwindigkeiten zu den verschiedenen SCSI-Ger�ten, die an den Controller angeschlossen sind, basierend auf der Channel-ID, sowie detaillierte Statistiken zu der Anzahl und Gr��e der Dateien, die von diesem Ger�t gelesen oder geschrieben wurden. Der oben angegebenen Ausgabe entnehmen Sie, dass der Controller mit dem CD-ROM-Laufwerk mit 20 Megabyte pro Sekunde kommuniziert, w�hrend das Bandlaufwerk nur mit 10 Megabytes kommuniziert.

5.3.9. /proc/sys/

Das Verzeichnis /proc/sys/ unterscheidet sich von /proc, weil es nicht nur eine Menge Informationen �ber das System zeigt, sondern auch Administratoren erlaubt, Kerneleigenschaften sofort zu aktivieren oder zu deaktivieren.

AchtungAchtung
 

Versuchen Sie niemals, Ihre Kernel-Einstellungen auf einem Produktionssystem mit den Dateien in /proc/sys zu optimieren. Es kann in manchen F�llen passieren, dass eine Einstellung den Kernel instabil macht und damit ein Neustart erforderlich wird.

�berpr�fen Sie daher unbedingt die Korrektheit der Syntax, bevor Sie eine �nderung in /proc/sys vornehmen.

Ob eine Datei konfiguriert werden kann oder nur Informationen liefern soll, findet man am besten heraus, indem man sie �ber -l an einem Shell-Prompt anzeigt. Wenn die Datei nicht schreibgesch�tzt ist, k�nnen Sie diese zum Konfigurieren des Kernels verwenden. Zum Beispiel sieht eine Auflistung von /proc/sys/fs so aus:

-r--r--r--    1 root     root            0 May 10 16:14 dentry-state
-rw-r--r--    1 root     root            0 May 10 16:14 dir-notify-enable
-r--r--r--    1 root     root            0 May 10 16:14 dquot-nr
-rw-r--r--    1 root     root            0 May 10 16:14 file-max
-r--r--r--    1 root     root            0 May 10 16:14 file-nr

Hier sind die Dateien dir-notify-enable und file-max nicht schreibgesch�tzt und k�nnen deshalb dazu benutzt werden, den Kernel zu konfigurieren. Die anderen Dateien geben nur Informationen zu den aktuellen Einstellungen des Kernels aus.

Ein Wert in einer Datei in /proc/sys wird ge�ndert, indem der neue Wert in diese Datei geschrieben wird. Zum Beispiel benutzt man, um den System Request Key in einem laufenden Kernel zu aktivieren, folgenden Befehl:

echo 1 > /proc/sys/kernel/sysrq

Dies �ndert den Wert der Datei sysrq von 0 (off) auf 1 (on).

Einige Konfigurationsdateien in /proc/sys/ enthalten mehr als einen Wert. Um neue Werte in solchen Dateien zu speichern, m�ssen Sie ein Leerzeichen zwischen jeden Wert setzen, den Sie �bergeben. Sehen Sie die Anwendung mit dem Befehl echo hier:

echo 4 2 45 > /proc/sys/kernel/acct

AnmerkungAnmerkung
 

Konfigurations�nderungen, die Sie mit echo vornehmen, gehen automatisch verloren, wenn das System neu gestartet wird. Um Ihre Konfigurations-�nderungen nach dem Booten wirksam werden zu lassen, lesen Sie bitte Abschnitt 5.4.

Das Verzeichnis /proc/sys enth�lt verschiedene Unterverzeichnisse, die verschiedene Bereiche des laufenden Kernel �berwachen.

5.3.9.1. /proc/sys/dev/

Dieses Verzeichnis bietet Parameter f�r bestimmte Ger�te im System an. Die meisten Systeme haben mindestens die zwei Verzeichnisse cdrom und raid. Benutzerdefinierte Kernel k�nnen andere Verzeichnisse besitzen, wie z.B. parport, was die gemeinsame Nutzung eines parallelen Ports durch Multiple-Device-Treiber erm�glicht.

Das cdrom-Verzeichnis enth�lt eine Datei namens info, die einige wichtige CD-ROM-Parameter ausgibt:

CD-ROM information, Id: cdrom.c 3.20 2003/12/17
 
drive name:             hdc
drive speed:            48
drive # of slots:       1
Can close tray:         1
Can open tray:          1
Can lock tray:          1
Can change speed:       1
Can select disk:        0
Can read multisession:  1
Can read MCN:           1
Reports media changed:  1
Can play audio:         1
Can write CD-R:         0
Can write CD-RW:        0
Can read DVD:           0
Can write DVD-R:        0
Can write DVD-RAM:      0
Can read MRW:           0
Can write MRW:          0
Can write RAM:          0

Diese Datei kann benutzt werden, um die F�higkeiten einer unbekannten CD-ROM herauszufinden. Wenn mehrere Laufwerke vorhanden sind, hat jedes Ger�t seine eigene Informationsspalte.

Verschiedene Dateien in /proc/sys/dev/cdrom, wie z.B. autoclose und checkmedia, k�nnen benutzt werden, um das CD-ROM Laufwerk einzustellen. Mit dem Befehl echo k�nnen Sie ein Feature aktivieren oder deaktivieren.

Wenn RAID-Unterst�tzung in den Kernel integriert wurde, ist ein Verzeichnis /proc/sys/dev/raid/ mit mindestens zwei Dateien vorhanden: speed_limit_min und speed_limit_max. Diese Einstellungen legen die Beschleunigung eines RAID Ger�t f�r besonders I/O intensive Aufgaben, wie z.B. beim Synchronisieren von Festplatten, fest.

5.3.9.2. /proc/sys/fs/

Dieses Verzeichnis enth�lt eine Liste von Optionen und Informationen zu verschiedenen Einstellungen des Dateisystems, inklusive Quoten, Datei-Handles, Inoden und dentry-Informationen.

Das Verzeichnis binfmt_misc wirt benutzt, um Kernel-Unterst�tzung f�r verschiedenste Bin�r-Formate anzubieten.

Die wichtigen Dateien in /proc/sys/fs sind:

  • dentry-state — Zeigt den Status des Verzeichnis-Caches an. Diese Datei sieht so �hnlich wie diese aus:

    57411	52939	45	0	0	0

    Die erste Zahl zeigt die Gesamtzahl der Verzeichnis-Cache Eintr�ge an, die zweite Zahl zeigt die Anzahl der nicht benutzten Eintr�gen an. Die dritte Zahl zeigt die Sekunden zwischem dem L�schen und dem erneuten Aufnehmen eines Verzeichnisses an. Die vierte misst die Seiten, die gerade vom System angefordert werden. Die letzten zwei Zahlen werden nicht benutzt und zeigen nur Nullen an.

  • dquot-nr — Zeigt die maximale Anzahl von zwischengespeicherten Quoten-Eintr�gen an.

  • file-max — Listet die maximale Anzahl von Datei-Handles, die der Kernel zuweist. Diesen Wert anzuheben kann Fehler l�sen, die durch einen Mangel an verf�gbaren Datei-Handles entstehen k�nnen.

  • file-nr — Zeigt die Anzahl zugewiesener, benutzter, und die maximale Anzahl der Datei-Handles an.

  • overflowgid und overflowuid — Definiert die feste Benutzer- und Gruppen-ID, falls das System nur 16-bit Gruppen- und Benutzer-IDs unterst�tzt.

  • super-max — �berwacht die maximal verf�gbare Anzahl von Superbl�cken.

  • super-nr — Zeigt die aktuelle Anzahl der benutzten Superbl�cke an.

5.3.9.3. /proc/sys/kernel/

Dieses Verzeichnis enth�lt eine Vielzahl von verschiedenen Konfigurationsdateien, die direkt die Kernelfunktion beeinflussen. Einige der wichtigsten Dateien sind unter anderem:

  • acct — �berwacht die Aufhebung von Prozess Accounting, basierend auf der Prozentzahl des verf�gbaren freien Speichers, der auf dem Dateisystem, das den Log enth�lt, verf�gbar ist. Dieser Log sieht gew�hnlich so aus:

    4	2	30

    Der erste Wert schreibt den Prozentsatz an freiem Speicher vor, der erforderlich ist, um das Logging wiederaufzunehmen, wogegen der zweite Wert den prozentualen Grenzwert an freiem Speicher setzt, an dem das Protokollieren unterbrochen wird. Der dritte Wert setzt das Intervall in Sekunden, in dem der Kernel das Dateisystem abfragt, um zu entscheiden, ob das Logging wieder aufgenommen oder unterbrochen werden soll.

  • cap-bound — �berwacht die Capability Bounding Einstellungen. Diese bieten eine Liste von M�glichkeiten, die jeder Prozess auf dem System benutzten kann. Wenn eine M�glichkeit hier nicht aufgelistet ist, dann kann kein Prozess, egal mit welchen Privilegien, diese benutzen. Dies macht das System dadurch sicherer, dass bestimmte Dinge nicht ausgef�hrt werden k�nnen, zumindest nicht nach einem bestimmten Punkt im Boot-Prozess.

    F�r eine g�ltige Liste von Werten f�r diese virtuelle Datei sehen Sie bitte nachfolgende, installierte Dokumentation:

    /lib/modules/<kernel-version>/build/include/linux/capability.h.

  • ctrl-alt-del — �berwacht ob die Tastenkombination [Strg]-[Alt]-[Entf] den Rechner mittels des init Befehls (Wert 0) neu startet oder einen sofortigen Neustart ohne Puffer-Synchronisation erzwingt; (Wert 1).

  • domainname — Erlaubt es, den Domainnamen des Systems zu konfigurieren, wie z.B. example.com.

  • exec-shield — Konfiguriert das Exec-Shield Feature des Kernels. Exec-Shield bietet Schutz vor verschiedensten Typen von Buffer-Overflow-Angriffen.

    F�r diese virtuelle Datei gibt es zwei m�gliche Werte:

    • 0 — Deaktiviert Exec-Shield.

    • 1 — Aktiviert Exec-Shield. Dies ist der Standardwert.

    WichtigWichtig
     

    Auf Sicherheit beruhende Applikationen, die gestartet wurden, w�hrend Exec-Shield deaktiviert war, m�ssen nach Aktivierung von Exec-Shield neu gestartet werden.

  • exec-shield-randomize — Aktiviert die zufallsm��ige �rtliche Verteilung verschiedener Gegenst�nde im Speicher. Dies kann helfen Eindringlinge davon abzuhalten, Programme und Deamons im Speicher zu lokalisieren. Jedes mal wenn ein Programm oder ein Daemon startet, wird ihm jedes mal duch die Herstellung einer Zufallsordnung unerschiedlicher Speicherplatz zugewiesen. Dies geschieht niemals in einer statischen oder absoluten Speicheradresse.

    F�r diese virtuelle Datei gibt es zwei m�gliche Werte:

    • 0 — Deaktiviert die Randomisierung von Exec Shield. Dies kann f�r Debugging-Zwecke hilfreich sein.

    • 1 — Aktiviert Randomisierung von Exec Shield. Dies ist der Standardwert. Hinweis: Die Datei exec-shield muss also auf 1 gesetzt sein, sodass exec-shield-randomize wirksam ist.

  • hostname — Erlaubt es, den Hostnamen des Systems zu konfigurieren, wie z.B. www.example.com.

  • hotplug — Konfiguriert das Programm, das benutzt wird, wenn eine Konfigurations�nderung vom System erkannt wird. Dies wird vor allem mit dem USB und dem Cardbus PCI benutzt. Der Standardwert /sbin/hotplug sollte nicht ge�ndert werden, au�er wenn Sie ein neues Programm testen, dass diese Rolle ausf�llt.

  • modprobe — Stellt den Speicherort des Programms ein, das Kernel-Module bei Bedarf l�dt. Der Standardwert von /sbin/modprobe zeigt an, dass kmod dieses Programm aufruft, wenn ein Kernel Thread kmod aufruft, um ein Modul zu laden.

  • msgmax — Setzt die maximale Gr��e von gesendeten Mitteilungen von einem Prozess zum anderen, wobei der Standardwert 8192 Bytes ist. Mit dem Erh�hen dieses Wertes sollten Sie vorsichtig sein, weil zwischengespeicherte Werte in nicht auslagerbarem Kernel-Speicher abgelegt werden, und jede Erh�hung in msgmax die RAM-Erfordernisse im System erh�hen.

  • msgmnb — Setzt die maximale Anzahl von Bytes in einer einzelnen Mitteilungs-Queue. Standard ist hier 16384.

  • msgmni — Setzt die maximale Anzahl von Mitteilungs-Queue-IDs. Standard ist 16.

  • osrelease — Listet die Linux-Kernel Releasenummer auf. Diese Datei kann nur durch Neu�bersetzung und Neukompilierung des Kernels ver�ndert werden.

  • ostype — Zeigt den Typ des Betriebssystems an. Diese Datei zeigt normalerweise Linux an; dieser Wert kann nur durch �ndern der Kernel-Quellen und Neukompilieren ge�ndert werden.

  • overflowgid und overflowuid — Definiert die feste Gruppen- und Benutzer-ID, die f�r Systemaufrufe bei Architekturen, die nur 16-bit Gruppen- und Benutzer-IDs unterst�tzen, benutzt werden.

  • panic — Definiert die Anzahl von Sekunden, um die der Kernel den Neustart verschiebt, wenn ein "Kernel-Panik" auftritt. Dieser Wert steht normal auf 0, was einen automatischen Neustart nach einer "Kernel-Panik" deaktiviert.

  • printk — Diese Datei �berwacht eine Vielzahl von Einstellungen zum Anzeigen und Loggen von Fehlermitteilungen. Jede Fehlermeldung vom Kernel hat einen loglevel, der die Wichtigkeit der Mitteilung wiedergibt. Die Loglevel-Werte teilen sich wie folgt auf:

    • 0 — Ein Kernel Notfall. Das System ist nicht benutzbar.

    • 1 — Kernel-Alarm, es m�ssen sofort Gegenma�nahmen eingeleitet werden.

    • 2 — Der Kernel ist in kritischem Zustand.

    • 3 — Allgemeiner Kernel-Fehler.

    • 4 — Allgemeine Kernel-Warnung.

    • 5 — Kernel-Mitteilung zu einem normalen, jedoch ernstzunehmendem Zustand.

    • 6 — Kernel Informations-Mitteilung.

    • 7 — Kernel Debugging-Mitteilung.

    Vier Werte finden sich in der Datei printk:

    6     4     1     7

    Jeder dieser Werte definiert eine andere Regel zum Verarbeiten von Fehlermeldungen. Der erste Wert, Konsolen-Loglevel genannt, definiert die niedrigste Priorit�t von Mitteilungen, die auf die Konsole ausgegeben werden (je niedriger die Priorit�t, desto h�her die Loglevel-Nummer). Der zweite Wert setzt den Standart-Loglevel f�r Mitteilungen, welche keinen Loglevel gesetzt haben. Der dritte Wert setzt den niedrigsten Loglevel Konfigurationswert f�r den Konsolen Loglevel. Der letzte Wert setzt den Standardwert f�r den Konsolen-Loglevel.

  • random/ Verzeichnis — Listet eine Anzahl von Werten, die zum Erzeugen von Zufallszahlen im Kernel verwendet werden.

  • rtsig-max — Konfiguriert die maximale Anzahl an POSIX-Echtzeitsignalen, die das System zu irgendeinem Zeitpunkt gepuffert haben kann. Der Standardwert ist: 1024.

  • rtsig-nr — Listet die aktuelle Anzahl von POSIX-Echzeitsignalen, die zur Zeit vom Kernel gepuffert werden.

  • sem — Diese Datei konfiguriert die Semaphore-Einstellungen im Kernel. Eine semaphore ist ein System V IPC-Objekt, das benutzt wird, um den Einsatz eines bestimmten Prozesses zu �berwachen.

  • shmall — Zeigt den Gesamtwert des gemeinsam verwendeten Speichers in Bytes an, der gleichzeitig im System benutzt werden kann. Dieser Wert ist normalerweise: 2097152.

  • shmmax — Stellt die gr��te Speichersegmentgr��e in Bytes ein, die vom Kernel erlaubt wird. Dieser Wert ist normalerweise 33554432. Der Kernel unterst�tzt allerdings viel gr��ere Werte.

  • shmmni — Stellt die maximale Anzahl von gemeisam genutzten Speichersegmenten f�r das ganze System ein. Dieser Wert hat den Standardwert 4096.

  • sysrq — Aktiviert den System-Request-Key, wenn dieser Wert nicht auf das standardm��ige 0 gesetzt ist.

    Der Sinn des System-Request-Key ist es, Ihnen zu erlauben, dem Kernel direkte Anweisungen mit einer simplen Tastenkombination zu geben, um den Rechner z.B. direkt herunter zu fahren, das System neu zu starten, alle Dateisystempuffer zu schreiben oder wichtige Informationen auf Ihre Konsole zu schreiben. Um den System-Request-Key zu aktivieren, dr�cken Sie [Alt]-[SysRq]-[<system request code>]. Ersetzen Sie <system request code> mit einem der folgenden System-Request-Codes:

    • r — Deaktiviert Raw-Mode f�r die Tastatur und setzt dieses auf XLATE (ein eingeschr�nkterer Tastaturmodus, der die Modifikatoren wie z.B. [Alt], [Ctrl] oder [Shift] f�r keine Tasten erkennt).

    • k — Vernichtet alle Prozesse, die in der virtuellen Konsole aktiv sind. Auch Secure Access Key (SAK) genannt, wird dieser oft verwendet, um zu pr�fen, dass der Login-Prompt von init gestartet wird, und nicht eine trojanische Kopie, die darauf aus ist, Benutzernamen und Passw�rter zu sammeln.

    • b — Startet den Kernel neu, ohne dabei zuerst einen Unmount auf Dateisysteme durchzuf�hren, oder einen Sync zu Platten, die an das System angebunden sind.

    • c — Verursacht einen Absturz des Systems, ohne dabei zuerst einen Unmount auf Dateisysteme durchzuf�hren, oder einen Sync zu Platten, die an das System angebunden sind.

    • o — F�hrt das System herunter.

    • s — Versucht einen Sync auf Platten, die an das System angebunden sind.

    • u — Versucht einen Unmount und Remount in Read-Only f�r alle Dateisysteme.

    • p — Gibt alle Flags und Register zur Konsole aus.

    • t — Gibt eine Liste der Prozesse zur Konsole aus.

    • m — Gibt Speicherstatistiken zur Konsole aus.

    • 0 bis 9 — Setzt den Log-Level f�r die Konsole.

    • e — Die Verwendung von SIGTERM vernichtet alle Prozesse, ausser init.

    • i — Die verwendung von SIGKILL vernichtet alle Prozesse, ausser init.

    • l — Die Verwendung von SIGKILL vernichtet alle Prozesse, einschlie�lich init. Das System ist nach Ausf�hren dieses System-Request-Key-Code unbrauchbar.

    • h — Gibt Hilfetext aus.

    Dieses Feature ist sehr n�tzlich bei der Verwendung eines Entwicklungskernel oder wenn ein System-Freeze auftritt.

    AchtungAchtung
     

    Das System-Request-Key Feature wird als Sicherheitsrisiko angesehen, da eine unbewachte Konsole einem Angreifer Zugriff zum System erm�glichen k�nnte. Aus diesem Grund ist es standardm��ig ausgeschaltet.

    Weitere Informationen zum System-Request-Key finden Sie unter /usr/share/doc/kernel-doc-<version>/Documentation/sysrq.txt.

  • sysrq-key — Bestimmt den Key-Code f�r den System-Request-Key (standardm��ige 84).

  • sysrq-sticky — Bestimmt, ob der System-Request-Key ein Akkord (Tastenkombination) ist. Die angenommenen Werte sind wie folgt:

    • 0[Alt]-[SysRq] und der System-Request-Code m�ssen gleichzeitig gedr�ckt werden. Dies ist die Vorgabe.

    • 1[Alt]-[SysRq] m�ssen gleichzeitig gedr�ckt werden, der System-Request-Code kann jedoch jederzeit, innerhalb der in /proc/sys/kernel/sysrq-timer angegebenen Sekunden gedr�ckt werden.

  • sysrq-timer — Gibt die Anzahl von Sekunden an, die Ablaufen k�nnen, bevor der System-Request-Code gedr�ckt werden muss. Der Standardwert ist 10.

  • tainted — Zeigt an, ob ein Nicht-GPL Modul geladen ist.

    • 0 — Keine non-GPL Module sind geladen.

    • 1 — Wenigstens ein Modul ohne GPL-Lizenz (einschlie�lich Module ohne Lizenz) ist geladen.

    • 2 — Zumindest ein Modul wurde mit dem Befehl insmod -f zwangsweise geladen.

  • threads-max — Stellt die maximale Anzahl von Threads, die vom Kernel genutzt werden k�nnen, ein. Standardwert: 4095.

  • version — Zeigt Datum und Zeit der letzten Kernel-Kompilierung an. Das erste Feld in dieser Datei, wie z.B. #3 zeigt an, wie oft ein Kernel aus den Quellen neukompiliert wurde.

5.3.9.4. /proc/sys/net/

Dieses Verzeichnis enth�lt Unterverzeichnisse �ber verschiedene Netzwerk-Themen. Verschiedene Konfigurationen zur Kernel-Kompilierung erzeugen hier verschiedene Verzeichnisse, wie z.B. appletalk, ethernet, ipv4, ipx und ipv6. In diesen Verzeichnissen k�nnen Sie verschiedene Netzwerk-Einstellungen f�r diese Konfiguration am laufenden System �ndern.

Aufgrund der vielf�ltigen Netzwerk-Optionen, die in Linux verwendet werden k�nnen, werden wir nur die wichtigsten Verzeichnisse in /proc/sys/net/ vorstellen.

Das Verzeichnis /proc/sys/net/core/ enth�lt eine Vielzahl von Einstellungen, die die Interaktion zwischen Kernel und Netzwerkschichten beeinflussen. Die wichtigsten Dateien sind hier:

  • message_burst — Legt eine bestimmte Zeitspanne in Zehntelsekunden fest, die dazu ben�tigt werden, um eine neue Warnungsmitteilung zu schreiben. Das wird benutzt, um Denial of Service (DoS) Angriffe zu vermeiden; die Standardeinstellung ist: 50.

  • message_cost — Wird auch verwendet, um DoS Angriffe zu vermeiden, indem ein Cost-Faktor auf jede Warnung gesetzt wird. Je h�her der Wert dieser Datei (Standard ist 5), desto eher wird die Warnung ignoriert. Diese Einstellung wird in Bezug auf DoS-Angriffe verwendet.

    Eine DoS-Attacke bedeutet, dass ein Angreifer Ihr System mit Anfragen �berh�uft, die Fehler erzeugen und ihre Diskpartitionen mit Logdateien f�llen oder Ihre Systemressourcen zum Fehlerloggen verbrauchen. Die Einstellungen in message_burst und message_cost sind dazu da, um auf der Basis von akzeptablem System-Risiko versus der Notwendigkeit nach umfassendem Logging modifiziert zu werden.

  • netdev_max_backlog — Setzt die maximale Anzahl von Paketen, die in die Warteschlange gestellt werden, wenn eine Schnittstelle Pakete schneller empf�ngt, als der Kernel diese verarbeiten kann. Der Standardwert hier ist: 300.

  • optmem_max — Konfiguriert die maximale zus�tzliche Puffergr��e pro Socket.

  • rmem_default — Setzt die Standardgr��e f�r den Empfangspuffer in Byte.

  • rmem_max — Setzt die Maximalgr��e des Empfangspuffers in Byte.

  • wmem_default — Setzt die Standardgr��e f�r den Sendepuffer in Byte.

  • wmem_max — Setzt die Maximalgr��e f�r den Sendepuffer in Byte.

Das Verzeichnis /proc/sys/net/ipv4/ enth�lt weitere Netzwerkeinstellungen. Viele dieser Einstellungen, die zusammen verwendet werden, sind sehr hilfreich bei der Verhinderung von Angriffen auf das System oder bei der Verwendung des Systems als Router.

AchtungAchtung
 

Eine irrt�mliche �nderung dieser Dateien kann die Netzwerkverbindungen beeintr�chtigen.

Folgend ist eine Liste einiger der wichtigeren Dateien im Verzeichnis /proc/sys/net/ipv4/:

  • icmp_destunreach_rate, icmp_echoreply_rate, icmp_paramprob_rate und icmp_timeexeed_rate — Stellt die maximale ICMP Send-Paket Rate in 1/100 Sekunden an Hosts unter verschiedenen Bedingungen ein. Eine Einstellung von 0 entfernt alle Verz�gerungen und sollte nicht eingestellt werden.

  • icmp_echo_ignore_all und icmp_echo_ignore_broadcasts — Erlaubt dem Kernel, ICMP ECHO Pakete von allen Hosts oder nur solche von Broadcast- oder Multicast-Adressen zu ignorieren. Eine 0 erlaubt dem Kernel zu antworten, eine 1 ignoriert diese Pakete.

  • ip_default_ttl — Stellt die Standard Time To Live (TTL) ein, die die Anzahl von Spr�ngen limitiert, bevor ein Paket sein Ziel erreicht. Eine Erh�hung dieses Wertes kann unter Umst�nden die Systemleistung beeintr�chtigen.

  • ip_forward — Erlaubt Schnittstellen im System, Pakete zu einer anderen weiterzuleiten. Standardm��ig ist diese Datei auf 0 gesetzt, um das Weiterleiten auszuschalten. Eine 1 aktiviert die Paketweiterleitung.

  • ip_local_port_range — Legt die Ports fest, die von TCP oder UDP benutzt werden, wenn ein lokaler Port gebraucht wird. Die erste Zahl ist der niedrigste Port und die zweite Zahl steht f�r den h�chsten benutzten Port. Jedes System, f�r das erwartet wird, dass es mehr als die Standard Ports 1024 bis 4999 ben�tigt, sollte die Werte 32768 bis 61000 verwenden.

  • tcp_syn_retries — Limitiert die H�ufigkeit der Neu-�bertragung eines SYN-Paketes beim Versuch eine Verbindung herzustellen.

  • tcp_retries1 — Legt die Anzahl von zugelassenen Neu-�bertragungen fest, wenn versucht wird einer eingehenden Verbindung zu antworten. Standardwert ist hier 3.

  • tcp_retries2 — Stellt die Anzahl von erlaubten Neu-�bertragungen von TCP Paketen ein. Standardwert ist 15.

Die Datei /usr/src/linux-2.4/Documentation/networking/ip-sysctl.txt enth�lt eine komplette Liste der im Verzeichnis /proc/sys/net/ipv4/ verf�gbaren Dateien und Optionen.

Es gibt eine Anzahl von anderen Verzeichnissen in /proc/sys/net/ipv4/, wobei jedes einen anderen Aspekt des Netzwerk-Stacks abdeckt. Das Verzeichnis /proc/sys/net/ipv4/conf/ erlaubt jeder der Systemschnittstellen eine unterschiedliche Konfiguration und l�sst Standardwerte f�r nicht-konfigurierte Schnittstellen (im Unterverzeichnis /proc/sys/net/ipv4/conf/default/) und Einstellungen zu, die alle anderen Konfigurationen �berschreiben (im Verzeichnis /proc/sys/net/ipv4/conf/all/).

Die Datei /proc/sys/net/ipv4/neigh/ beinhaltet Einstellungen zur Kommunikation mit einem Host, der direkt mit dem System verbunden ist (Netzwerk-Nachbar genannt) und beinhaltet ebenfalls verschiedene Einstellungen f�r Systeme, die mehr als einen Hop entfernt sind.

Das Routen �ber IPV4 besitzt auch ein eigenes Verzeichnis /proc/sys/net/ipv4/route/. Im Gegensatz zu conf und neigh, enth�lt das /proc/sys/net/ipv4/route/ Verzeichnis Spezifikationen, die das Routing auf allen Systemschnittstellen beeinflusst. Viele dieser Einstellungen, wie z.B. max_size, max_delay und min_delay, h�ngen mit der Einstellung des Routing Caches zusammen. Um den Routing Cache zu l�schen, schreiben Sie einen beliebigen Inhalt in die Datei flush.

Zus�tzliche Informationen �ber diese Verzeichnisse und die m�glichen Werte zur Konfiguration finden Sie unter:

/usr/share/doc/kernel-doc-<version>/Documentation/filesystems/proc.txt

5.3.9.5. /proc/sys/vm/

Dieses Verzeichnis erleichtert die Konfiguration des virtuellen Speicher-Subsystems des Linux Kernels (VM). Der Kernel macht ausgiebigen und intelligenten Gebrauch von virtuellem Speicher, der auch Swap-Space genannt wird.

Die folgenden Dateien findet man normalerweise im Verzeichnis /proc/sys/vm/:

  • block_dump — Konfiguriert Debugging von I/O-Bl�cken, falls aktiviert. Alle Lese-/Schreib-Operationen, die an Dateien durchgef�hrt wurden, werden dementsprechend protokolliert. Dies kann bei der Diagnose von Festplatten Spin-Up und Spin-Downs zur Akkukonservierung von Laptops n�tzlich sein. Jegliche Ausgabe, wenn block_dump aktiviert ist, kann mittels dmesg wiederaufgefunden werden. Der Standardwert ist 0.

    TippTipp
     

    Wenn block_dump zur selben Zeit wie Kernel-Debugging aktiviert ist, ist es darauf bedacht den klogd-Daemon zu stoppen, da dieser aufgrund von block_dump irrt�mliche Plattenaktivit�t erzeugt.

  • dirty_background_ratio — Startet den den Vorgang Background-Writeback, wobei als 'dirty' markierte Daten (Seiten, die den Inhalt von Disk-Bl�cken enthalten und modifiziert wurden) zu diesem Prozentsatz des Gesamtspeichers auf die Platte vom pdflush-Daemon zur�ckgeschrieben werden. Der Standardwert ist 10.

  • dirty_expire_centisecs — Legt den Intervall fest, wann als 'dirty' markierte Daten alt genug sind, zur�ckgeschrieben zu werden. Sobald Daten dieses vorgegebene Intervall �berschritten haben, k�nnen diese, sobald der pdflush-Daemon wieder �berpr�ft, ob als 'dirty' markierte Daten vorhanden sind, zur�ckgeschrieben werden.Der Standardwert ist 3000, in hundertstel Sekunden ausgedr�ckt.

  • dirty_ratio — Startet das aktive Zur�ckschreiben von als 'dirty' markierten Daten zu diesem Prozentsatz des Gesamtspeichers f�r den Erzeuger dieser Daten via pdflush. Der Standardwert ist 40.

  • dirty_writeback_centisecs — Legt die Intervalle zwischen dem periodischen Zur�ckschreiben der als 'dirty' markierten Daten auf Platte via pdflush-Daemon fest. Der Standardwert ist 500, ausgedr�ckt in hundertstel Sekunden.

  • laptop_mode — Mimimiert die H�ufigkeit, in der die Festplatte hochfahren muss, indem man versucht, dass die Platte solange als m�glich heruntergefahren bleibt (Festplattenshutdown), wodurch h�here Akkulaufzeiten auf Laptops erzielt werden k�nnen. Dies f�hrt zu einer Steigerung der Effizienz, indem alle zuk�nfigen I/O-Prozesse zusammengef�gt werden, was die H�ufigkeit des Hochfahrens der Platte reduziert. Der Standardwert ist 0, wird jedoch automatisch aktiviert, sobald ein Laptop auf Batteriebetrieb geht.

    Dieser Wert wird automatisch vom acpid-Daemon �berpr�ft, sobald ein Benutzer dar�ber informiert wird, dass der Batterieversorgung des Laptops aktiviert wurde. Dabei sind weder Benutzermodifikationen noch die Mitwirkung des Benutzers in irgendeiner Form notwendig, wenn der Laptop die ACPI (Advanced Configuration and Power Interface) Spezifikationen unterst�tzt.

    F�r weitere Informationen siehe folgende, installierte Dokumentation:

    /usr/share/doc/kernel-doc-<version>/Documentation/laptop-mode.txt

  • lower_zone_protection — Legt fest, wie aggresiv der Kernel die unteren Speicherbereiche verteidigt, welches im Zusammenhang mit Maschinen, welche mit highmem konfiguriert wurden, besonders n�tzlich ist. Der Standardwert ist 0, also kein Schutz. Der hier optionell angegebene Wert ist die Speichergr��e des lowmem Speichers in MegaByte, welcher vor der Freigabe f�r Benutzer gesch�tzt werden soll.

    F�r weitere Informationen siehe folgende, installierte Dokumentation:

    /usr/share/doc/kernel-doc-<version>/Documentation/filesystems/proc.txt

  • max_map_count — Konfiguriert die maximale Anzahl von Speicher-Map-Bereichen, die ein Prozess haben darf. In den meisten F�llen ist ein Standardwert von 65536 angemessen.

  • min_free_kbytes — Zwingt den Linux VM (Virtual Memory Manager) eine Mindestanzahl an Kilobytes freizuhalten. Der VM benutzt diese Zahl, um einen pages_min-Wert f�r jede lowmem -Zone im System zu berechnen. Der Standardwert steht in Bezug zum Gesamtspeicher auf dem Rechner.

  • nr_hugepages — Stellt die gegenw�rtige Anzahl an konfigurierten hugetlb-Seiten im Kernel dar.

    F�r weitere Informationen siehe folgende, installierte Dokumentation:

    /usr/share/doc/kernel-doc-<version>/Documentation/vm/hugetlbpage.txt

  • nr_pdflush_threads — Stellt die Anzahl der pdflush-Daemons dar, die gegenw�rtig ablaufen. Diese Datei ist nur leseberechtigt und sollte nicht vom Benutzer ge�ndert werden. Bei starken I/O-Belastungen wird der Standardwert von zwei vom Kernel angehoben.

  • overcommit_memory — Konfiguriert die Bedingungen, unter denen gro�e Speicheranforderungen akzeptiert oder abgelehnt werden. Die folgenden drei Modi sind verf�gbar:

    • 0 — Der Kernel f�hrt ein heuristisches "Memory Over Commit Handling" durch und sch�tzt einen verf�gbaren Speicherumfang und l�sst Anfragen scheitern, die eindeutig ung�ltig sind. Da bei der Speicherzuordnung eher ein heuristischer, als ein genauer Algorithmus verwendet wird, kann es manchmal zu einer �berlastung des Systems kommen. Dies ist die Vorgabe.

    • 1 — Der Kernel f�hrt kein "Memory Over Commit Handling" aus. Diese Einstellung erh�ht das Potenzial einer Speicher�berlastung. Das gleiche gilt jedoch auch f�r die Performance von speicherintensiven Aufgaben (wie die, die von einigen wissenschaftlichen Softwareprogrammen verwendet werden).

    • 2 — Der Kernel l�sst Anfragen nach Speicher scheitern, die sich auf die gesamte Menge des Swap plus dem physikalischen RAM, festgelegt in /proc/sys/vm/overcommit_ratio, belaufen. Diese Einstellung ist am Besten f�r diejenigen, die ein geringeres Risiko an "memory overcommitment" w�nschen.

      AnmerkungAnmerkung
       

      Diese Einstellung ist nur f�r Systeme empfohlen, deren Swap gr��er als deren physikalischer Speicher ist.

  • overcommit_ratio — Gibt den Prozentanteil an physikalischem RAM an, der ber�cksichtigt wird, wenn /proc/sys/vm/overcommit_memory auf 2 gesetzt ist. Der Standardwert ist 50.

  • page-cluster — Stellt die Anzahl von Seiten, die auf einmal gelesen werden sollen, ein. Der Standardwert 3, der sich eigentlich auf 16 Seiten bezieht, reicht f�r die meisten Systeme aus.

  • swappiness — Bestimmt wie oft auf einem Rechner Swapping stattfindet. Je h�her der Wert, desto mehr Swapping findet statt. Der Standardwert, als Prozentsatz dargestellt, ist auf 60 gesetzt.

S�mtliche Kernel-bezogene Dokumentation kann in folgendem lokal installiertem Speicherort gefunden werden:

Zus�tzliche Informationen hierzu finden Sie in /usr/share/doc/kernel-doc-<version>/Documentation/.

5.3.10. /proc/sysvipc/

Dieses Verzeichnis enth�lt Informationen �ber die System V IPC-Ressourcen. Die Dateien in diesem Verzeichnis h�ngen mit den System V IPC-Aufrufen zusammen (msg), Semaphores (sem) und gemeinsam benutzter Speicher (shm).

5.3.11. /proc/tty/

Dieses Verzeichnis enth�lt Informationen �ber die verf�gbaren und zur Zeit benutzten TTY-Ger�te im System. Fr�her teletype device genannt, werden heute alle auf zeichenorientierten Daten-Terminals als TTY-Ger�te bezeichnet.

Unter Linux gibt es drei verschiedene Arten von TTY-Ger�ten. Serielle Ger�te werden mit seriellen Verbindungen benutzt, wie z.B. mit Modems oder seriellen Kabeln. Virtuelle Terminals erzeugen die normalen Konsolenverbindungen, wie die virtuellen Konsolen, die verf�gbar sind, wenn Sie [Alt]-[<F-key>] auf einer Systemkonsole dr�cken. Pseudo Terminals erzeugen eine zwei-Wege Kommunikation, die von einigen h�herrangigen Applikationen, wie z.B. XFree86 verwendet werden. Die Datei drivers enth�lt eine Liste der TTY-Ger�te, die zur Zeit benutzt werden:

serial               /dev/cua        5  64-127 serial:callout
serial               /dev/ttyS       4  64-127 serial
pty_slave            /dev/pts      136   0-255 pty:slave
pty_master           /dev/ptm      128   0-255 pty:master
pty_slave            /dev/ttyp       3   0-255 pty:slave
pty_master           /dev/pty        2   0-255 pty:master
/dev/vc/0            /dev/vc/0       4       0 system:vtmaster
/dev/ptmx            /dev/ptmx       5       2 system
/dev/console         /dev/console    5       1 system:console
/dev/tty             /dev/tty        5       0 system:/dev/tty
unknown              /dev/vc/%d      4    1-63 console

Die Datei /proc/tty/driver/serial listet die Nutzungs-Statistik und den Status jedes der seriellen TTY-Ger�te auf.

Damit TTY-Ger�te �hnlich wie Netzwerk-Ger�te benutzt werden k�nnen, stellt der Kernel line discipline f�r das Ger�t ein. Das erlaubt dem Treiber, einen bestimmten Headertyp mit jedem Datenblock, der �ber das Ger�t geht, zu transferieren; dieser Header macht das Paket zu einem Paket in einem Stream. SLIP und PPP sind allgemein bekannte Line Disciplines und werden vor allem benutzt, um Systeme �ber eine serielle Verbindung zu koppeln.

Registrierte Line Disciplines werden in der Datei ldiscs gespeichert; detaillierte Informationen finden Sie im Verzeichnis ldisc/.

 
 
  Published under the terms of the GNU General Public License Design by Interspire