/proc
/proc - Prozessdateisystem
Das Prozessdateisystem stellt zur Laufzeit die Daten des Kernels in Form eines normalen Dateisystems dar. Als Mount-Point dient normalerweise /proc. Dieses Dateisystem existiert allein im Hauptspeicher und nicht auf der Festplatte!
Ein Blick in das Verzeichnis offenbart den Inhalt:
$ ls /proc 1 157 179 195 243 279 cmdline kcore misc stat 105 160 180 196 244 281 cpuinfo kcore_elf modules swaps 106 161 181 2 245 283 devices kmsg mounts sys 112 162 182 205 246 3 dma ksyms net tty 117 165 183 206 247 4 fb loadavg partitions uptime 121 166 184 209 249 5 filesystems locks pci version 136 171 185 227 252 6 fs lvm rtc 147 176 186 233 258 74 ide mdstat scsi 151 177 187 236 276 78 interrupts meminfo self 155 178 188 239 277 bus ioports memstat slabinfo
Sinn dieses Abbildes der Kerneldaten ist es, Programmen das Lesen dieser Daten zu ermöglichen, ohne auf den Kernelbereich zugreifen zu müssen (Sicherheit!!!).
Im Einzelnen bedeuten die Einträge:
Name | beinhaltet |
---|---|
1,105, ... | Diese Zahlen entsprechen den PIDs der laufenden Prozesse und sind Unterverzeichnisse, die wiederum die relevanten Daten der Prozesse beinhalten.
# ls /proc/1 cmdline cwd environ exe fd maps mem root stat statm status cwd ist das aktuelle Arbeitsverzeichnis und root das Wurzelverzeichnis. Im Unterverzeichnis fd stehen die Deskriptoren der geöffneten Dateien. |
cmdline | Enthält die Bootzeile, mit der der Kernel gestartet wurde. In den Unterverzeichnissen zu den einzelnen Prozessen stehen hier die Optionen beim Start des jeweiligen Prozesses.
cat /proc/cmdline auto BOOT_IMAGE=Linux |
cpuinfo | Typ und Leistung der CPU findet man hier.
cat /proc/cpuinfo processor : 0 vendor_id : AuthenticAMD cpu family : 5 model : 8 model name : AMD-K6(tm) 3D processor stepping : 12 cpu MHz : 451.034814 fdiv_bug : no hlt_bug : no sep_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 sep mtrr pge mmx 3dnow bogomips : 897.84 |
devices | Major und Minor Number der im Kernel geladenen Treiber stehen hier.
cat /proc/devices Character devices: 1 mem 2 pty 3 ttyp 4 ttyS 5 cua 7 vcs 10 misc 29 fb 36 netlink 99 ppuser 128 ptm 136 pts 162 raw Block devices: 1 ramdisk 2 fd 3 ide0 7 loop 9 md 22 ide1 |
filesystems | Die vom Kernel unterstützten Dateisysteme.
cat /proc/filesystems ext2 minix umsdos msdos vfat nodev proc nodev nfs iso9660 nodev devpts |
interrupts | Liste der belegten Hardwareinterrupts mit Zugriffsstatistik.
cat /proc/interrupts CPU0 0: 2381241 XT-PIC timer 1: 51482 XT-PIC keyboard 2: 0 XT-PIC cascade 8: 2 XT-PIC rtc 10: 26390 XT-PIC eth0 12: 337541 XT-PIC PS/2 Mouse 13: 1 XT-PIC fpu 14: 262940 XT-PIC ide0 15: 4 XT-PIC ide1 |
kcore | Zugang zum Arbeitsspeicher (nur für root) |
locks | Liste der aktiven Dateisperren.
cat /proc/locks 1: POSIX ADVISORY WRITE 843 03:05:507930 0 2147483647 c652a920 00000000 c652a 740 00000000 c232bf44 1: -> POSIX ADVISORY WRITE 844 03:05:507930 0 2147483647 c232bf44 00000000 00 000000 00000000 c652a920 2: FLOCK ADVISORY WRITE 0 03:05:145478 0 2147483647 c652a740 c652a920 c652a62 0 00000000 00000000 3: FLOCK ADVISORY WRITE 0 03:05:155744 0 2147483647 c652a620 c652a740 c652a5c 0 00000000 00000000 4: POSIX ADVISORY WRITE 133 03:05:145472 0 2147483647 c652a5c0 c652a620 00000 000 00000000 00000000 |
meminfo | Speicher- und Swap-Auslastung.
cat /proc/meminfo total: used: free: shared: buffers: cached: Mem: 130813952 124973056 5840896 56123392 17874944 33165312 Swap: 139821056 172032 139649024 MemTotal: 127748 kB MemFree: 5704 kB MemShared: 54808 kB Buffers: 17456 kB Cached: 32388 kB BigTotal: 0 kB BigFree: 0 kB SwapTotal: 136544 kB SwapFree: 136376 kB |
Stat | Statusinformation des Kernels.
cat /proc/stat cpu 58798 1 10291 2329306 disk 38353 0 0 0 disk_rio 26383 0 0 0 disk_wio 11970 0 0 0 disk_rblk 52790 0 0 0 disk_wblk 23970 0 0 0 page 99771 32285 swap 5 64 intr 3085540 2398396 52805 0 0 0 0 90 0 2 0 26551 0 344639 1 263052 4 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 ctxt 3408251 btime 950767448 processes 1311 |
sys | Verschiedene Informationen zum Laufzeitsystem stehen in diesem Unterverzeichnis.
ls /proc/sys debug dev fs kernel net proc sunrpc |
version | Kernelversion und Übersetzungsdatum des aktiven Kernels.
cat /proc/version Linux version 2.2.14 (sonne@galaxis.de) (gcc version egcs-2.91.66 19990314/Linux (egcs-1.1.2 release)) #1 Mon Feb 14 15:51:29 CET 2000 |