Provided by: manpages-de_1.11-1_all 

BEZEICHNUNG
proc - Pseudo-Dateisystem für Prozessinformationen
BESCHREIBUNG
/proc ist ein Pseudo-Dateisystem. Es dient als Schnittstelle zu den Kernel-Datenstrukturen und wird
gewöhnlich unter /proc eingehängt. Die meisten Einträge sind nur lesbar, einige Dateien erlauben aber
auch das Verändern der Kernel-Variablen.
Einhängeoptionen
Das Dateisystem proc unterstützt die folgenden Einhängeoptionen:
hidepid=n (seit Linux 3.3)
Diese Option regelt, wer auf die Informationen in den Verzeichnissen /proc/[PID] zugreifen darf.
Das Argument n hat einen der folgenden Werte:
0 Jeder darf auf alle Verzeichnisse /proc/[PID] zugreifen. Dies ist das traditionelle Verhalten
und die Vorgabe, falls diese Einhängeoption nicht angegeben ist.
1 Users may not access files and subdirectories inside any /proc/[pid] directories but their own
(the /proc/[pid] directories themselves remain visible). Sensitive files such as
/proc/[pid]/cmdline and /proc/[pid]/status are now protected against other users. This makes
it impossible to learn whether any user is running a specific program (so long as the program
doesn't otherwise reveal itself by its behavior).
2 As for mode 1, but in addition the /proc/[pid] directories belonging to other users become
invisible. This means that /proc/[pid] entries can no longer be used to discover the PIDs on
the system. This doesn't hide the fact that a process with a specific PID value exists (it can
be learned by other means, for example, by "kill -0 $PID"), but it hides a process's UID and
GID, which could otherwise be learned by employing stat(2) on a /proc/[pid] directory. This
greatly complicates an attacker's task of gathering information about running processes (e.g.,
discovering whether some daemon is running with elevated privileges, whether another user is
running some sensitive program, whether other users are running any program at all, and so
on).
gid=gid (seit Linux 3.3)
Specifies the ID of a group whose members are authorized to learn process information otherwise
prohibited by hidepid (ie/e/, users in this group behave as though /proc was mounted with
hidepid=0. This group should be used instead of approaches such as putting nonroot users into the
sudoers(5) file.
Dateien und Verzeichnisse
Die folgende Liste beschreibt viele der Dateien und Verzeichnisse unter der Hierachie /prco:
/proc/[PID]
Für jeden laufenden Prozess gibt es ein numerisches Unterverzeichnis, dessen Nummer der
Prozesskennung (PID) entspricht. In jedem dieser Unterverzeichnisse gibt es die folgenden
Pseudo-Dateien und -Verzeichnisse.
/proc/[PID]/attr
The files in this directory provide an API for security modules. The contents of this directory
are files that can be read and written in order to set security-related attributes. This directory
was added to support SELinux, but the intention was that the API be general enough to support
other security modules. For the purpose of explanation, examples of how SELinux uses these files
are provided below.
Dieses Verzeichnis ist nur vorhanden, falls der Kernel mit CONFIG_SECURITY konfiguriert wurde.
/proc/[pid]/attr/current (seit Linux 2.6.0)
The contents of this file represent the current security attributes of the process.
In SELinux, this file is used to get the security context of a process. Prior to Linux 2.6.11,
this file could not be used to set the security context (a write was always denied), since SELinux
limited process security transitions to execve(2) (see the description of /proc/[pid]/attr/exec,
below). Since Linux 2.6.11, SELinux lifted this restriction and began supporting "set" operations
via writes to this node if authorized by policy, although use of this operation is only suitable
for applications that are trusted to maintain any desired separation between the old and new
security contexts. Prior to Linux 2.6.28, SELinux did not allow threads within a multi-threaded
process to set their security context via this node as it would yield an inconsistency among the
security contexts of the threads sharing the same memory space. Since Linux 2.6.28, SELinux lifted
this restriction and began supporting "set" operations for threads within a multithreaded process
if the new security context is bounded by the old security context, where the bounded relation is
defined in policy and guarantees that the new security context has a subset of the permissions of
the old security context. Other security modules may choose to support "set" operations via writes
to this node.
/proc/[pid]/attr/exec (seit Linux 2.6.0)
This file represents the attributes to assign to the process upon a subsequent execve(2).
In SELinux, this is needed to support role/domain transitions, and execve(2) is the preferred
point to make such transitions because it offers better control over the initialization of the
process in the new security label and the inheritance of state. In SELinux, this attribute is
reset on execve(2) so that the new program reverts to the default behavior for any execve(2)
calls that it may make. In SELinux, a process can set only its own /proc/[pid]/attr/exec
attribute.
/proc/[pid]/attr/fscreate (seit Linux 2.6.0)
This file represents the attributes to assign to files created by subsequent calls to open(2),
mkdir(2), symlink(2), and mknod(2)
SELinux employs this file to support creation of a file (using the aforementioned system calls)
in a secure state, so that there is no risk of inappropriate access being obtained between the
time of creation and the time that attributes are set. In SELinux, this attribute is reset on
execve(2), so that the new program reverts to the default behavior for any file creation calls it
may make, but the attribute will persist across multiple file creation calls within a program
unless it is explicitly reset. In SELinux, a process can set only its own
/proc/[pid]/attr/fscreate attribute.
/proc/[PID]/attr/prev (seit Linux 2.6.0)
This file contains the security context of the process before the last execve(2); that is, the
previous value of /proc/[pid]/attr/current.
/proc/[PID]/attr/keycreate (seit Linux 2.6.18)
If a process writes a security context into this file, all subsequently created keys (add_key(2))
will be labeled with this context. For further information, see the kernel source file
Documentation/keys.txt.
/proc/[PID]/attr/socketcreate (seit Linux 2.6.18)
If a process writes a security context into this file, all subsequently created sockets will be
labeled with this context.
/proc/[PID]/auxv (seit 2.6.0-test7)
Dies ist der Inhalt der Informationen für den ELF-Interpreter, die dem Prozess zur Ausführungszeit
übergeben wurden. Das Format ist eine unsigned long-ID plus ein unsigned long-Wert für jeden
Eintrag. Der letzte Eintrag enthält zwei Nullen. Siehe auch getauxval(3).
/proc/[PID]/cgroup (seit Linux 2.6.24)
This file describes control groups to which the process/task belongs. For each cgroup hierarchy
there is one entry containing colon-separated fields of the form:
5:cpuacct,cpu,cpuset:/daemons
Die Doppelpunkt-getrennten Felder sind, von links nach rechts:
1. ID-Zahl der Hierarchie
2. Gruppe der Untersysteme, die an die Hierarchie gebunden sind
3. control group in the hierarchy to which the process belongs
Diese Datei ist nur vorhanden, wenn die Kernel-Konfigurationsoption CONFIG_CGROUPS aktiviert ist.
/proc/[pid]/clear_refs (seit Linux 2.6.22)
In diese Datei kann nur geschrieben werden und nur durch den Eigentümer des Prozesses.
Die folgenden Werte dürfen in die Datei geschrieben werden:
1 (seit Linux 2.6.22)
Reset the PG_Referenced and ACCESSED/YOUNG bits for all the pages associated with the
process. (Before kernel 2.6.32, writing any nonzero value to this file had this effect.)
2 (seit Linux 2.6.32)
Reset the PG_Referenced and ACCESSED/YOUNG bits for all anonymous pages associated with the
process.
3 (seit Linux 2.6.32)
Reset the PG_Referenced and ACCESSED/YOUNG bits for all file-mapped pages associated with
the process.
Clearing the PG_Referenced and ACCESSED/YOUNG bits provides a method to measure approximately how
much memory a process is using. One first inspects the values in the "Referenced" fields for the
VMAs shown in /proc/[pid]/smaps to get an idea of the memory footprint of the process. One then
clears the PG_Referenced and ACCESSED/YOUNG bits and, after some measured time interval, once
again inspects the values in the "Referenced" fields to get an idea of the change in memory
footprint of the process during the measured interval. If one is interested only in inspecting the
selected mapping types, then the value 2 or 3 can be used instead of 1.
Ein weiterer Wert kann geschrieben werden, um ein anderes Bit zu beeinflussen:
4 (seit Linux 3.11)
Clear the soft-dirty bit for all the pages associated with the process. This is used (in
conjunction with /proc/[pid]/pagemap) by the check-point restore system to discover which
pages of a process have been dirtied since the file /proc/[pid]/clear_refs was written to.
Wird ein anderer als einer der oben aufgeführten Werte in /proc/[PID]/clear_refs geschrieben, so
hat dies keinen Effekt.
Die Datei /proc/[PID]/clear_refs ist nur vorhanden, wenn die Kernel-Konfigurationsoption
CONFIG_PROC_PAGE_MONITOR aktiviert ist.
/proc/[PID]/cmdline
In dieser nur-lesbaren Datei steht die vollständige Befehlszeile für diesen Prozess, wenn er kein
Zombie ist. Im letzteren Fall ist die Datei leer, ein Lesen der Datei wird 0 Zeichen zurückgeben.
Die Befehlszeilenargumente sind in dieser Datei als ein Satz von Zeichenketten abgelegt,
Trennzeichen sind Null-Bytes ('\0'). Nach der letzten Zeichenkette folgt noch ein Null-Byte.
/proc/[PID]/comm (seit Linux 2.6.33)
This file exposes the process's comm value—that is, the command name associated with the process.
Different threads in the same process may have different comm values, accessible via
/proc/[pid]/task/[tid]/comm. A thread may modify its comm value, or that of any of other thread in
the same thread group (see the discussion of CLONE_THREAD in clone(2)), by writing to the file
/proc/self/task/[tid]/comm. Strings longer than TASK_COMM_LEN (16) characters are silently
truncated.
This file provides a superset of the prctl(2) PR_SET_NAME and PR_GET_NAME operations, and is
employed by pthread_setname_np(3) when used to rename threads other than the caller.
/proc/[PID]/coredump_filter (seit Linux 2.6.23)
siehe core(5)
/proc/[PID]/cpuset (seit Linux 2.6.12)
siehe cpuset(7)
/proc/[PID]/cwd
Dies ist ein symbolischer Link auf das aktuelle Arbeitsverzeichnis des Prozesses. Um dieses z.B.
für den Prozess 20 herauszufinden, geben Sie die folgenden Befehle ein:
$ cd /proc/20/cwd; /bin/pwd
Beachten Sie, dass der Befehl pwd häufig in die Shell eingebaut ist (shell built-in) und daher
möglicherweise nicht ordnungsgemäß funktioniert. Mit der bash(1) können Sie pwd -P verwenden.
In einem Multithread-Prozess ist der Inhalt dieses symbolischen Links nicht mehr verfügbar, wenn
der Haupt-Thread schon beendet ist (typischerweise durch einen Aufruf von pthread_exit(3)).
/proc/[PID]/environ
Diese Datei enthält die Prozess-Umgebung. Die Einträge werden durch Null-Bytes ('\0') getrennt, am
Ende der Liste kann ebenfalls ein Null-Byte stehen. Die Umgebung von Prozess 1 geben Sie wie folgt
aus:
$ strings /proc/1/environ
/proc/[PID]/exe
Unter Linux 2.2 und höher ist diese Datei ein symbolischer Link mit dem eigentlichen Pfad des
ausgeführten Befehls. Dieser symbolische Link kann in der Regel dereferenziert werden; der
Versuch, ihn zu öffnen, wird die ausführbare Datei öffnen. Sie können sogar /proc/[PID]/exe
eingeben, um eine weitere Kopie der gleichen ausführbaren Datei auszuführen, die für den Prozess
[PID] läuft. Falls der Pfadnmae mit unlink gelöscht wurde wird der symbolische Link die
Zeichenkette '(deleted)' an den ursprünglichen Dateinamen angehängt haben. In einem
Multithread-Prozess ist der Inhalt dieses symbolischen Links nicht mehr verfügbar, wenn der
Haupt-Thread schon beendet ist (typischerweise durch einen Aufruf von pthread_exit(3)).
Unter Linux 2.0 und früher ist /proc/[PID]/exe ein Zeiger auf das Programm, das ausgeführt wurde
und erscheint als symbolischer Link. Ein Aufruf von readlink(2) auf diese Datei unter Linux 2.0
gibt eine Zeichenkette im folgenden Format zurück:
[Gerät]:Inode
Beispielsweise wäre [0301]:1502 also Inode 1502 auf dem Gerät mit der Major-Gerätenummer 03 (IDE-,
MFM-Festplatten) und der Minor-Gerätenummer 01 (erste Partition der ersten Platte).
find(1) mit der Option -inum zeigt, in welchem Verzeichnis die Datei liegt.
/proc/[PID]/fd/
In diesem Unterverzeichnis stehen die Dateideskriptoren der von diesem Prozess geöffneten Dateien.
Diese Einträge sind symbolische Links zu den eigentlichen Dateien. Also ist 0 die Standardeingabe,
1 ist die Standardausgabe, 2 ist der Standardfehlerkanal usw.
For file descriptors for pipes and sockets, the entries will be symbolic links whose content is
the file type with the inode. A readlink(2) call on this file returns a string in the format:
Typ:[Inode]
For example, socket:[2248868] will be a socket and its inode is 2248868. For sockets, that inode
can be used to find more information in one of the files under /proc/net/.
For file descriptors that have no corresponding inode (e.g., file descriptors produced by
epoll_create(2), eventfd(2), inotify_init(2), signalfd(2), and timerfd(2)), the entry will be a
symbolic link with contents of the form
anon_inode:<Dateityp>
In einigen Fällen wird Dateityp durch eckige Klammern eingeschlossen.
For example, an epoll file descriptor will have a symbolic link whose content is the string
anon_inode:[eventpoll].
In einem Multithread-Prozess ist der Inhalt dieses Verzeichnisses nicht mehr verfügbar, wenn der
Haupt-Thread schon beendet ist (typischerweise durch einen Aufruf von pthread_exit(3)).
Programme, die einen Dateinamen als Befehlszeilen-Argument verarbeiten, aber ohne Argument keine
Eingaben aus der Standardeingabe annehmen oder die in eine Datei schreiben, deren Name als
Befehlszeilen-Argument übergeben wird, aber bei fehlendem Argument nicht in die Standardausgabe
ausgeben, können dennoch mittels /proc/[PID]/fd dazu gebracht werden, die Standardeingabe oder die
Standardausgabe zu verwenden. Angenommen, der Schalter -i bezeichnet die Eingabedatei und -o die
Ausgabedatei:
$ foobar -i /proc/self/fd/0 -o /proc/self/fd/1 …
und Sie haben einen funktionierenden Filter.
/proc/self/fd/N ist in etwa dasselbe wie /dev/fd/N in einigen UNIX- und UNIX-ähnlichen Systemen.
Die meisten MAKEDEV-Skripte legen tatsächlich symbolische Links von /proc/self/fd zu /dev/fd an.
Die meisten Systeme stellen die symbolischen Links /dev/stdin, /dev/stdout und /dev/stderr bereit,
die entsprechend auf die Dateien 0, 1 und 2 in /proc/self/fd weisen. Das letzte Beispiel könnte
also auch alternativ geschrieben werden als:
$ foobar -i /dev/stdin -o /dev/stdout …
/proc/[PID]/fdinfo/ (seit Linux 2.6.22)
In diesem Unterverzeichnis stehen die Dateideskriptoren aller von diesem Prozess geöffneten
Dateien. Die Dateien in diesem Verzeichnis können nur von dem Eigentümer des Prozesses gelesen
werden. Der Inhalt jeder Datei kann gelesen werden, um Informationen über den entsprechenden
Dateideskriptor zu bekommen. Der Inhalt hängt von der Art der Datei ab, die von dem entsprechenden
Deskriptor referenziert wird.
Für reguläre Dateien und Verzeichnisse ergibt sich etwas der Form:
$ cat /proc/12015/fdinfo/4
pos: 1000
flags: 01002002
mnt_id: 21
Das pos-Feld ist eine Dezimalzahl, die die aktuelle Position in der Datei (file offset) angibt.
Das flags-Feld ist eine Oktalzahl, die den Zugriffsmodus und die Status-Flags der Datei angibt
(siehe open(2)). Das Feld mnt_id, seit Linux 3.15 vorhanden, ist die Kennung des
Einhängungspunktes, der diese Datei enthält. Siehe die Beschreibung von /proc/[PID]/mountinfo.
Für den Eventfd-Dateideskriptor (siehe eventfd(2)) gibt es die folgenden Felder:
pos: 0
flags: 02
mnt_id: 10
eventfd-count: 40
eventfd-count ist der aktuelle hexadezimale Wert des Eventfd-Zählers.
Für den Epoll-Dateideskriptor (siehe epoll(7)) gibt es die folgenden Felder:
pos: 0
flags: 02
mnt_id: 10
tfd: 9 events: 19 data: 74253d2500000009
tfd: 7 events: 19 data: 74253d2500000007
Each of the lines beginning tfd describes one of the file descriptors being monitored via the
epoll file descriptor (see epoll_ctl(2) for some details). The tfd field is the number of the
file descriptor. The events field is a hexadecimal mask of the events being monitored for this
file descriptor. The data field is the data value associated with this file descriptor.
Für den Signalfd-Dateideskriptor (siehe signalfd(2)) gibt es die folgenden Felder:
pos: 0
flags: 02
mnt_id: 10
sigmask: 0000000000000006
sigmask is the hexadecimal mask of signals that are accepted via this signalfd file descriptor.
(In this example, bits 2 and 3 are set, corresponding to the signals SIGINT and SIGQUIT; see
signal(7).)
/proc/[PID]/io (seit Kernel 2.6.20)
Diese Datei enthält E/A-Statistiken für den Prozess, beispielsweise:
# cat /proc/3828/io
rchar: 323934931
wchar: 323929600
syscr: 632687
syscw: 632675
read_bytes: 0
write_bytes: 323932160
cancelled_write_bytes: 0
Die Bedeutung der Felder im Einzelnen:
rchar: characters read (gelesene Zeichen)
The number of bytes which this task has caused to be read from storage. This is simply the
sum of bytes which this process passed to read(2) and similar system calls. It includes
things such as terminal I/O and is unaffected by whether or not actual physical disk I/O
was required (the read might have been satisfied from pagecache).
wchar: characters written (geschriebene Zeichen)
The number of bytes which this task has caused, or shall cause to be written to disk.
Similar caveats apply here as with rchar.
syscr: Syscalls lesen
Ein Versuch, die Anzahl der gelesen E/A-Vorgänge zu zählen (d.h. der Systemaufrufe wie
read(2) und pread(2)).
syscw: Syscalls schreiben
Ein Versuch, die Anzahl der geschriebenen E/A-Vorgänge zu zählen (d.h. der Systemaufrufe
wie write(2) und pwrite(2)).
read_bytes: bytes read (gelesene Bytes)
Attempt to count the number of bytes which this process really did cause to be fetched from
the storage layer. This is accurate for block-backed filesystems.
write_bytes: bytes written (geschriebene Bytes)
Ein Versuch, die Anzahl der Bytes, die ausgelöst durch diesen Prozess zum Speichermedium
gesandt wurden, zu zählen.
cancelled_write_bytes:
The big inaccuracy here is truncate. If a process writes 1MB to a file and then deletes the
file, it will in fact perform no writeout. But it will have been accounted as having caused
1MB of write. In other words: this field represents the number of bytes which this process
caused to not happen, by truncating pagecache. A task can cause "negative" I/O too. If this
task truncates some dirty pagecache, some I/O which another task has been accounted for (in
its write_bytes) will not be happening.
Note: In the current implementation, things are a bit racy on 32-bit systems: if process A reads
process B's /proc/[pid]/io while process B is updating one of these 64-bit counters, process A
could see an intermediate result.
/proc/[PID]/gid_map (seit Linux 3.5)
Siehe user_namespaces(7).
/proc/[PID]/limits (seit Linux 2.6.24)
Diese Datei enthält die weichen und harten Grenzen sowie die Maßeinheiten der für den Prozess
geltenden Ressourcenbeschränkungen (siehe getrlimit(2)). Bis einschließlich Linux 2.6.35 darf die
Datei nur mit der realen UID des Prozesses gelesen werden. Seit Linux 2.6.36 kann diese Datei von
allen Benutzern des Systems gelesen werden.
/proc/[PID]/map_files/ (seit Kernel 3.3)
This subdirectory contains entries corresponding to memory-mapped files (see mmap(2)). Entries are
named by memory region start and end address pair (expressed as hexadecimal numbers), and are
symbolic links to the mapped files themselves. Here is an example, with the output wrapped and
reformatted to fit on an 80-column display:
# ls -l /proc/self/map_files/
lr--------. 1 root root 64 Apr 16 21:31
3252e00000-3252e20000 -> /usr/lib64/ld-2.15.so
…
Although these entries are present for memory regions that were mapped with the MAP_FILE flag, the
way anonymous shared memory (regions created with the MAP_ANON | MAP_SHARED flags) is implemented
in Linux means that such regions also appear on this directory. Here is an example where the
target file is the deleted /dev/zero one:
lrw-------. 1 root root 64 Apr 16 21:33
7fc075d2f000-7fc075e6f000 -> /dev/zero (deleted)
Dieses Verzeichnis erscheint nur, falls die Kernel-Konfigurationsoption CONFIG_CHECKPOINT_RESTORE
aktiviert ist. Um den Inhalt dieses Verzeichnisses zu sehen, wird das Privileg CAP_SYS_ADMIN
benötigt.
/proc/[PID]/maps
Eine Datei mit den derzeit eingeblendeten Speicherbereichen und ihren Zugriffsrechten. Lesen Sie
mmap(2) für weitere Informationen über Speichereinblendungen.
Das Format der Datei lautet:
address perms offset dev inode pathname
00400000-00452000 r-xp 00000000 08:02 173521 /usr/bin/dbus-daemon
00651000-00652000 r--p 00051000 08:02 173521 /usr/bin/dbus-daemon
00652000-00655000 rw-p 00052000 08:02 173521 /usr/bin/dbus-daemon
00e03000-00e24000 rw-p 00000000 00:00 0 [heap]
00e24000-011f7000 rw-p 00000000 00:00 0 [heap]
...
35b1800000-35b1820000 r-xp 00000000 08:02 135522 /usr/lib64/ld-2.15.so
35b1a1f000-35b1a20000 r--p 0001f000 08:02 135522 /usr/lib64/ld-2.15.so
35b1a20000-35b1a21000 rw-p 00020000 08:02 135522 /usr/lib64/ld-2.15.so
35b1a21000-35b1a22000 rw-p 00000000 00:00 0
35b1c00000-35b1dac000 r-xp 00000000 08:02 135870 /usr/lib64/libc-2.15.so
35b1dac000-35b1fac000 ---p 001ac000 08:02 135870 /usr/lib64/libc-2.15.so
35b1fac000-35b1fb0000 r--p 001ac000 08:02 135870 /usr/lib64/libc-2.15.so
35b1fb0000-35b1fb2000 rw-p 001b0000 08:02 135870 /usr/lib64/libc-2.15.so
...
f2c6ff8c000-7f2c7078c000 rw-p 00000000 00:00 0 [stack:986]
...
7fffb2c0d000-7fffb2c2e000 rw-p 00000000 00:00 0 [stack]
7fffb2d48000-7fffb2d49000 r-xp 00000000 00:00 0 [vdso]
The address field is the address space in the process that the mapping occupies. The perms field
is a set of permissions:
r = read (lesen)
w = write (schreiben)
x = execute (ausführen)
s = shared (gemeinsam benutzt)
p = private (copy on write) (Kopieren bei Schreibzugriffen)
Das Feld offset ist der Abstand zum Anfang (der Datei oder was auch immer), dev steht für das
Gerät (major:minor) und Inode ist der Inode auf diesem Gerät. Ist Inode 0, dann ist keine Datei
mit diesem Speicherbereich verbunden, wie z.B. im Falle von BSS (nicht initialisierte Daten).
The pathname field will usually be the file that is backing the mapping. For ELF files, you can
easily coordinate with the offset field by looking at the Offset field in the ELF program headers
(readelf -l).
Es gibt zusätzliche, hilfreiche Pseudo-Pfade:
[stack]
The initial process's (also known as the main thread's) stack.
[stack:<tid>] (seit Linux 3.4)
A thread's stack (where the <tid> is a thread ID). It corresponds to the
/proc/[pid]/task/[tid]/ path.
[vdso] The virtual dynamically linked shared object.
[heap] The process's heap.
If the pathname field is blank, this is an anonymous mapping as obtained via the mmap(2)
function. There is no easy way to coordinate this back to a process's source, short of running it
through gdb(1), strace(1), or similar.
Unter Linux 2.0 gibt es kein Feld, das den Pfadnamen angibt.
/proc/[PID]/mem
Diese Datei kann genutzt werden, auf die Speicherseiten des Prozesses mittels open(2), read(2) und
lseek(2) zuzugreifen.
/proc/[PID]/mountinfo (seit Linux 2.6.26)
Diese Datei enthält Informationen über Einhängepunkte (mount points). Sie enthält Zeilen der Form
36 35 98:0 /mnt1 /mnt2 rw,noatime master:1 - ext3 /dev/root rw,errors=continue
(1)(2)(3) (4) (5) (6) (7) (8) (9) (10) (11)
Die Zahlen in Klammern sind Zuordnungen zu den folgenden Beschreibungen:
(1) Einhänge-ID: eindeutige Identifikation für dieses Einhängen (kann nach umount(2) erneut
verwendet werden).
(2) parent ID: ID of parent mount (or of self for the top of the mount tree).
(3) Major:Minor: Wert von st_dev für Dateien im Dateisystem (siehe stat(2)).
(4) Wurzel: Wurzel der Einhängepunkte innerhalb des Dateisystems.
(5) Einhängepunkt: Einhängepunkt (mount point) relativ zur Prozesswurzel.
(6) Einhängeoptionen: individuelle Einhängeoptionen.
(7) Optionale Felder: ein oder mehrere Felder der Form »Bezeichnung[:Wert]«.
(8) Trennzeichen: markiert das Ende der optionalen Felder.
(9) Dateisystemtyp: Name des Dateisystems im Format »Typ[.Untertyp]«.
(10) Einhänge-Ursprung: dateisystemspezifische Informationen oder »none«.
(11) Super-Optionen: individuelle Superblock-Optionen.
Analyseprogramme sollten alle nicht erkannten optionalen Felder ignorieren. Derzeit sind die
möglichen optionalen Felder:
shared:X Der Einhängepunkt wird von der Peer-Gruppe X gemeinsam genutzt.
master:X Der Einhängepunkt ist der Untergeordnete der Peer-Gruppe X.
propagate_from:X Der Einhängepunkt ist untergeordnet und erhält Übertragungen von
Peer-Gruppe X (*).
unbindable Der Einhängepunkt kann nicht verknüpft (an anderer Stelle eingehängt)
werden.
(*) X ist die nächste dominante Peer-Gruppe unter der Prozess-Wurzel. Falls X dem Einhängepunkt
unmittelbar übergeordnet ist oder wenn es unter der gleichen Wurzel keine dominante Peer-Gruppe
gibt, ist nur das Feld »Master: X« vorhanden und nicht das »propagate_from: X«-Feld.
Weitere Informationen zur Übertragung von Einhängepunkten finden Sie in
Documentation/filesystems/sharedsubtree.txt im Linux-Kernel-Quelltext.
/proc/[PID]/mounts (seit Linux 2.4.19)
Dies ist eine Liste aller Dateisysteme, die derzeit im Einhängenamensraum des Prozesses eingehängt
sind. Das Format dieser Datei wird in fstab(5) dokumentiert. Seit Kernel-Version 2.6.15 kann diese
Datei abgefragt werden: nach dem Öffnen der Datei zum Lesen veranlasst eine Änderung in dieser
Datei (d.h. ein Dateisystem einhängen oder aushängen) select(2) den Dateideskriptor als lesbar zu
kennzeichnen und poll(2) und epoll_wait(2) kennzeichnen die Datei als mit einer Fehlerbedingung
behaftet. Siehe namespaces(7) für weitere Informationen.
/proc/[pid]/mountstats (seit Linux 2.6.17)
Diese Datei macht Informationen (Statistiken, Konfigurationsinformation) über die Einhängepunkte
im »mount«-Namensraum des Prozesses verfügbar. Zeilen in dieser Datei haben die folgende Form:
device /dev/sda7 mounted on /home with fstype ext3 [statistics]
( 1 ) ( 2 ) (3 ) (4)
Die Felder in jeder Zeile sind:
(1) Der Name des eingehängten Geräts (oder »nodevice«, wenn es kein entsprechendes Gerät gibt).
(2) Der Einhängepunkt innerhalb des Dateisystembaums.
(3) Der Dateisystemtyp.
(4) Optionale Statistiken und Konfigurationsinformationen. Derzeit (Stand Linux 2.6.26) stellen
nur NFS-Dateisysteme Informationen in diesem Feld bereit.
Diese Datei kann nur vom Eigentümer des Prozesses gelesen werden.
Siehe namespaces(7) für weitere Informationen.
/proc/[PID]/ns/ (seit Linux 3.0)
Dieses Unterverzeichnis enthält einen Eintrag für jeden Namensraum, der mittels setns(2)
manipuliert werden kann. Für weitere Informationen siehe namespaces(7).
/proc/[PID]/numa_maps (seit Linux 2.6.14)
Siehe numa(7).
/proc/[PID]/oom_adj (seit Linux 2.6.11)
Diese Datei kann verwendet werden, um den Wert anzupassen, anhand dessen Prozesse bei
Speichermangel (out-of-memory, OOM) abgebrochen werden. Der Kernel verwendet diesen Wert für eine
Bit-Shift-Operation des oom_score-Werts des Prozesses: Gültig sind Werte im Bereich von -16 bis
+15, sowie der besondere Wert -17, der einen Abbruch des Prozesses wegen Speichermangel
deaktiviert. Ein positiver Wert erhöht die Wahrscheinlichkeit, dass der Prozess vom »OOM-Killer«
abgebrochen wird, ein negativer Wert senkt die Wahrscheinlichkeit.
Der Standardwert für diese Datei ist 0. Ein neuer Prozess erbt die Einstellung oom_adj von seinen
Eltern. Ein Prozess musss privilegiert sein (CAP_SYS_RESOURCE), um diese Datei zu aktualisieren.
seit Linux 2.6.36 wird die Verwendung dieser Datei gegenüber /proc/[PID]/oom_score_adj
missbilligt.
/proc/[PID]/oom_score (seit Linux 2.6.11)
Diese Datei zeigt die aktuelle Bewertung des Kernels für diesen Prozess als Grundlage für die
Auswahl als Opfer des OOM-Killers. Eine höhere Bewertung bedeutet, dass der Prozess eher von dem
OOM-Killer ausgewählt werden soll. Die Grundlage dieser Bewertung ist der Speicherverbrauch.
Verschiedene andere Faktoren erhöhen (+) oder verringern (-) diesen Wert. Diese Faktoren sind:
* ob der Prozess mittels fork(2) viele Kinder erzeugt (+);
* ob der Prozess schon lange läuft oder viel CPU-Zeit verbraucht hat (-);
* ob der Prozess einen niedrigen »nice«-Wert hat (d.h. > 0) (+);
* ob der Prozess privilegiert ist (-); und
* ob der Prozess direkt auf die Hardware zugreift (-).
Der oom_score spiegelt auch die Anpassung durch die oom_score_adj- oder oom_adj-Einstellung für
den Prozess.
/proc/[PID]/oom_score_adj (seit Linux 2.6.36)
This file can be used to adjust the badness heuristic used to select which process gets killed in
out-of-memory conditions.
The badness heuristic assigns a value to each candidate task ranging from 0 (never kill) to 1000
(always kill) to determine which process is targeted. The units are roughly a proportion along
that range of allowed memory the process may allocate from, based on an estimation of its current
memory and swap use. For example, if a task is using all allowed memory, its badness score will be
1000. If it is using half of its allowed memory, its score will be 500.
There is an additional factor included in the badness score: root processes are given 3% extra
memory over other tasks.
The amount of "allowed" memory depends on the context in which the OOM-killer was called. If it is
due to the memory assigned to the allocating task's cpuset being exhausted, the allowed memory
represents the set of mems assigned to that cpuset (see cpuset(7)). If it is due to a mempolicy's
node(s) being exhausted, the allowed memory represents the set of mempolicy nodes. If it is due to
a memory limit (or swap limit) being reached, the allowed memory is that configured limit.
Finally, if it is due to the entire system being out of memory, the allowed memory represents all
allocatable resources.
The value of oom_score_adj is added to the badness score before it is used to determine which task
to kill. Acceptable values range from -1000 (OOM_SCORE_ADJ_MIN) to +1000 (OOM_SCORE_ADJ_MAX). This
allows user space to control the preference for OOM-killing, ranging from always preferring a
certain task or completely disabling it from OOM killing. The lowest possible value, -1000, is
equivalent to disabling OOM-killing entirely for that task, since it will always report a badness
score of 0.
Consequently, it is very simple for user space to define the amount of memory to consider for each
task. Setting a oom_score_adj value of +500, for example, is roughly equivalent to allowing the
remainder of tasks sharing the same system, cpuset, mempolicy, or memory controller resources to
use at least 50% more memory. A value of -500, on the other hand, would be roughly equivalent to
discounting 50% of the task's allowed memory from being considered as scoring against the task.
For backward compatibility with previous kernels, /proc/[pid]/oom_adj can still be used to tune
the badness score. Its value is scaled linearly with oom_score_adj.
Schreiben in /proc/[PID]/oom_score_adj oder /proc/[PID]/oom_adj führt zur Änderung des anderen mit
dem skalierten Wert.
/proc/[PID]/pagemap (seit Linux 2.6.25)
This file shows the mapping of each of the process's virtual pages into physical page frames or
swap area. It contains one 64-bit value for each virtual page, with the bits set as follows:
63 Falls gesetzt ist die Seite im RAM
62 If set, the page is in swap space
61 (seit Linux 3.5)
The page is a file-mapped page or a shared anonymous page.
60-56 (seit Linux 3.11)
Null
55 (seit Linux 3.11)
PTE is soft-dirty (see the kernel source file Documentation/vm/soft-dirty.txt).
54-0 If the page is present in RAM (bit 63), then these bits provide the page frame number,
which can be used to index /proc/kpageflags and /proc/kpagecount. If the page is
present in swap (bit 62), then bits 4-0 give the swap type, and bits 54-5 encode the
swap offset.
Vor Linux 3.11 wurden die Bits 60-55 dazu verwandt, den Logarithmus (in der Basis 2) der
Seitengröße zu halten.
To employ /proc/[pid]/pagemap efficiently, use /proc/[pid]/maps to determine which areas of memory
are actually mapped and seek to skip over unmapped regions.
Die Datei /proc/[PID]/pagemap ist nur vorhanden, wenn die Kernel-Konfigurationsoption
CONFIG_PROC_PAGE_MONITOR aktiviert ist.
/proc/[PID]/personality (seit Linux 2.6.28)
This read-only file exposes the process's execution domain, as set by personality(2). The value is
displayed in hexadecimal notation.
/proc/[PID]/root
UNIX und Linux unterstützen das Konzept eines prozesseigenen Wurzel-Dateisystems (root), das für
jeden Prozess mit dem Systemauf chroot(2) gesetzt wird. Diese Datei ist ein symbolischer Link, der
auf das Root-Verzeichnis des Prozesses weist, und verhält sich wie es auch exe und fd/* tun.
In einem Multithread-Prozess ist der Inhalt dieses symbolischen Links nicht mehr verfügbar, wenn
der Haupt-Thread schon beendet ist (typischerweise durch einen Aufruf von pthread_exit(3)).
/proc/[PID]/seccomp (von Linux 2.6.12 bis 2.6.22)
Read/set the seccomp mode for the process. If this file contains the value zero, seccomp mode is
not enabled. Writing the value 1 to this file (irreversibly) places the process in seccomp mode:
the only permitted system calls are read(2), write(2), _exit(2), and sigreturn(2). This file went
away in Linux 2.6.23, when it was replaced by a prctl(2)-based mechanism.
/proc/[PID]/setgroups (seit Linux 3.19)
Siehe user_namespaces(7).
/proc/[PID]/smaps (seit Linux 2.6.14)
Diese Datei zeigt den Speicherverbrauch für jedes der Prozess-Mappings. (Der Befehl pmap(1) zeigt
ähnliche Informationen in einer Form, die leichter auswertbar sein können.) Für jedes der Mappings
gibt es eine Reihe von Zeilen wie die folgenden:
00400000-0048a000 r-xp 00000000 fd:03 960637 /bin/bash
Size: 552 kB
Rss: 460 kB
Pss: 100 kB
Shared_Clean: 452 kB
Shared_Dirty: 0 kB
Private_Clean: 8 kB
Private_Dirty: 0 kB
Referenced: 460 kB
Anonymous: 0 kB
AnonHugePages: 0 kB
Swap: 0 kB
KernelPageSize: 4 kB
MMUPageSize: 4 kB
Locked: 0 kB
The first of these lines shows the same information as is displayed for the mapping in
/proc/[pid]/maps. The remaining lines show the size of the mapping, the amount of the mapping that
is currently resident in RAM ("Rss"), the process' proportional share of this mapping ("Pss"), the
number of clean and dirty shared pages in the mapping, and the number of clean and dirty private
pages in the mapping. "Referenced" indicates the amount of memory currently marked as referenced
or accessed. "Anonymous" shows the amount of memory that does not belong to any file. "Swap" shows
how much would-be-anonymous memory is also used, but out on swap.
The "KernelPageSize" entry is the page size used by the kernel to back a VMA. This matches the
size used by the MMU in the majority of cases. However, one counter-example occurs on PPC64
kernels whereby a kernel using 64K as a base page size may still use 4K pages for the MMU on older
processors. To distinguish, this patch reports "MMUPageSize" as the page size used by the MMU.
The "Locked" indicates whether the mapping is locked in memory or not.
"VmFlags" field represents the kernel flags associated with the particular virtual memory area in
two letter encoded manner. The codes are the following:
rd - readable
wr - writable
ex - executable
sh - shared
mr - may read
mw - may write
me - may execute
ms - may share
gd - stack segment grows down
pf - pure PFN range
dw - disabled write to the mapped file
lo - pages are locked in memory
io - memory mapped I/O area
sr - sequential read advise provided
rr - random read advise provided
dc - do not copy area on fork
de - do not expand area on remapping
ac - area is accountable
nr - swap space is not reserved for the area
ht - area uses huge tlb pages
nl - non-linear mapping
ar - architecture specific flag
dd - do not include area into core dump
sd - soft-dirty flag
mm - mixed map area
hg - huge page advise flag
nh - no-huge page advise flag
mg - mergeable advise flag
Die Datei /proc/[PID]/smaps ist nur vorhanden, wenn die Kernel-Konfigurationsoption
CONFIG_PROC_PAGE_MONITOR aktiviert ist.
/proc/[PID]/stack (seit Linux 2.6.29)
This file provides a symbolic trace of the function calls in this process's kernel stack. This
file is provided only if the kernel was built with the CONFIG_STACKTRACE configuration option.
/proc/[PID]/stat
Statusinformationen des Prozesses. Wird von ps(1) benutzt. Sie werden in Kernelquelldatei
fs/proc/array.c definiert.
Die Felder in ihrer Reihenfolge mit den richtigen scanf(3)-Formatbezeichnern:
(1) PID %d
Die Prozess-Identifikation.
(2) comm %s
Der Name der ausführbaren Datei, in Klammern, sichtbar unabhängig vom Swap-Status des
Programms.
(3) state %c
Eines der folgenden Zeichen zur Angabe des Prozesszustandes:
R Laufend
S Sleeping in an interruptible wait
D Waiting in uninterruptible disk sleep
Z Zombie
T Stopped (on a signal) or (before Linux 2.6.33) trace stopped
t Tracing stop (Linux 2.6.33 onward)
W Paging (only before Linux 2.6.0)
X Getötet (seit Linux 2.6.0)
x Getötet (nur Linux 2.6.33 bis 3.13)
K Wakekill (Linux 2.6.33 to 3.13 only)
W Waking (Linux 2.6.33 to 3.13 only)
P Parked (Linux 3.9 to 3.13 only)
(4) ppid %d
Die Prozess-ID des Elternprozesses dieses Prozesses.
(5) pgrp %d
Die Prozess-Gruppen-ID des Prozesses.
(6) session %d
Die Sitzungs-ID des Prozesses.
(7) tty_nr %d
Das steuernde Terminal des Prozesses. (Die Minor-Gerätenummer ist in der Kombination der
Bits 31 bis 20 und 7 bis 0 enthalten; die Major-Gerätenummer befindet sich in den Bits
15 bis 8.)
(8) tpgid %d
Die ID der Vordergrund-Prozessgruppe des steuernden Terminals des Prozesses.
(9) flags %u
Das Wort mit den Kernel-Schaltern des Prozesses. Die Bedeutung der Bits finden Sie in
den PF_*-#define-Anweisungen in der Linux-Quellcodedatei <linux/sched.h>. Die Details
hängen von der Kernel-Version ab.
Das Format dieses Feldes war %lu vor Linux 2.6.
(10) minflt %lu
The number of minor faults the process has made which have not required loading a memory
page from disk.
(11) cminflt %lu
The number of minor faults that the process's waited-for children have made.
(12) majflt %lu
The number of major faults the process has made which have required loading a memory
page from disk.
(13) cmajflt %lu
The number of major faults that the process's waited-for children have made.
(14) utime %lu
Amount of time that this process has been scheduled in user mode, measured in clock
ticks (divide by sysconf(_SC_CLK_TCK)). This includes guest time, guest_time (time spent
running a virtual CPU, see below), so that applications that are not aware of the guest
time field do not lose that time from their calculations.
(15) stime %lu
Gesamtzeit, die dieser Prozess im Kernel-Modus verbracht hat, gemessen in »clock ticks«
(dividieren Sie durch sysconf(_SC_CLK_TCK)).
(16) cutime %ld
Gesamtzeit, die abgewartete Kindprozesse im User-Modus verbracht haben, gemessen in
»clock ticks« (dividieren Sie durch sysconf(_SC_CLK_TCK)) (siehe auch times(2)). Das
umfasst Gastzeit, guest_time (Laufzeit in einer virtuellen CPU, siehe unten).
(17) cstime %ld
Gesamtzeit, die abgewartete Kindprozesse im Kernel-Modus verbracht haben, gemessen in
»clock ticks« (dividieren Sie durch sysconf(_SC_CLK_TCK)).
(18) priority %ld
(Erklärung für Linux 2.6) Für Prozesse, die im Scheduling eine Echtzeit-Strategie
verfolgen (policy weiter unten, siehe sched_setscheduler(2)), ist dies die negierte
Scheduling-Priorität minus eins, das heißt, eine Zahl im Bereich von -2 bis - 100,
entsprechend den Echtzeitprioritäten 1 bis 99. Für Prozesse, deren Scheduling keine
Echtzeit-Strategie verfolgt, ist das ist der rohe nice-Wert (setpriority(2)), wie er im
Kernel dargestellt ist. Der Kernel speichert nice-Werte als Zahlen im Bereich 0 (hoch)
bis 39 (niedrig), entsprechend des für den Benutzer sichtbaren nice-Bereich von -20 bis
19.
Vor Linux 2.6 war dies ein skalierter Wert auf Grundlage des vom Scheduler an den
Prozess zugewiesenen Gewichts.
(19) nice %ld
Der nice-Wert (siehe setpriority(2)), ein Wert im Bereich von 19 (niedrige Priorität)
bis -20 (hohe Priorität).
(20) num_threads %ld
Anzahl von Threads in diesem Prozess (seit Linux 2.6). Vor Kernel 2.6 war dieses Feld
mit dem Wert 0 als Platzhalter für ein früher entferntes Feld hartkodiert.
(21) itrealvalue %ld
Die Zeit (in jiffies), bevor dem Prozess aufgrund eines Intervalltimers ein SIGALRM
gesendet wird. Seit Kernel 2.6.17 wird dieses Feld nicht mehr gewartet und wird mit 0
hartkodiert.
(22) starttime %llu
The time the process started after system boot. In kernels before Linux 2.6, this value
was expressed in jiffies. Since Linux 2.6, the value is expressed in clock ticks (divide
by sysconf(_SC_CLK_TCK)).
Das Format dieses Feldes war %lu vor Linux 2.6.
(23) vsize %lu
Größe des virtuellen Speichers in Bytes.
(24) rss %ld
Resident Set Size: Anzahl der Seiten, die der Prozess tatsächlich im Speicher hat. Dabei
zählen nur die Seiten von Text, Daten und Stack. Nicht abgerufene oder ausgelagerte
Bereiche zählen nicht mit.
(25) rsslim %lu
Aktuelle weiche Grenze für die RSS des Prozesses; siehe die Beschreibung von RLIMIT_RSS
in getrlimit(2).
(26) startcode %lu
Die Adresse, oberhalb derer Programmtext ausgeführt werden kann.
(27) endcode %lu
Die Adresse, unterhalb derer Programmtext ausgeführt werden kann.
(28) startstack %lu
Die Startadresse des Stacks (also der »Boden«).
(29) kstkesp %lu
Derzeitiger Wert von ESP (Stack Pointer), wie er in der Kernel-Stack-Seite für diesen
Prozess steht.
(30) kstkeip %lu
Der aktuelle EIP (Instruction Pointer, Anweisungszeiger).
(31) signal %lu
Die Bitmap anstehender Signale, angezeigt als Dezimalzahl. Obsolet, weil sie keine
Informationen über Echtzeitsignale gibt; verwenden Sie stattdessen /proc/[PID]/status.
(32) blocked %lu
Die Bitmap blockierter Signale, angezeigt als Dezimalzahl. Obsolet, weil sie keine
Informationen über Echtzeitsignale gibt; verwenden Sie stattdessen /proc/[PID]/status.
(33) sigignore %lu
Die Bitmap ignorierter Signale, angezeigt als Dezimalzahl. Obsolet, weil sie keine
Informationen über Echtzeitsignale gibt; verwenden Sie stattdessen /proc/[PID]/status.
(34) sigcatch %lu
Die Bitmap abgefangener Signale, angezeigt als Dezimalzahl. Obsolet, weil sie keine
Informationen über Echtzeitsignale gibt; verwenden Sie stattdessen /proc/[PID]/status.
(35) wchan %lu
This is the "channel" in which the process is waiting. It is the address of a location
in the kernel where the process is sleeping. The corresponding symbolic name can be
found in /proc/[pid]/wchan.
(36) nswap %lu
Anzahl ausgelagerter Seiten (nicht gewartet).
(37) cnswap %lu
Aufaddiertes nswap der Kindprozesse (nicht gewartet).
(38) exit_signal %d (seit Linux 2.1.22)
Das an den Elternprozess zu sendende Signal, wenn wir sterben.
(39) processor %d (seit Linux 2.2.8)
Nummer der CPU, auf der der Prozess zuletzt lief.
(40) rt_priority %u (seit Linux 2.5.19)
Priorität für das Echtzeit-Scheduling, eine Zahl im Bereich von 1 bis 99 für Prozesse,
deren Scheduling einer Echtzeit-Strategie folgt oder 0 für andere Prozesse (siehe
sched_setscheduler(2)).
(41) policy %u (seit Linux 2.5.19)
Scheduling-Strategie (siehe sched_setscheduler(2)). Dekodieren Sie mit den
SCHED_*-Konstanten in linux/sched.h.
Das Format dieses Feldes war %lu vor Linux 2.6.22.
(42) delayacct_blkio_ticks %llu (seit Linux 2.6.18)
Kumulierte Block-E/A-Verzögerungen, gemessen in Ticks (Hundertstelsekunden).
(43) guest_time %lu (seit Linux 2.6.24)
Gastzeit des Prozesses (aufgewendete Zeit für den Betrieb einer virtuellen CPU für ein
Gast-Betriebssystem), gemessen in »clock ticks« (dividieren Sie durch
sysconf(_SC_CLK_TCK)).
(44) cguest_time %ld (seit Linux 2.6.24)
Gastzeit der Kindprozesse des Prozesses, gemessen in »clock ticks« (dividieren Sie durch
sysconf(_SC_CLK_TCK)).
(45) start_data %lu (seit Linux 3.3)
Adresse, oberhalb derer die initialisierten und nicht-initialisierten Programmdaten
(BSS) abgelegt werden.
(46) end_data %lu (seit Linux 3.3)
Adresse, unterhalb derer die initialisierten und nicht-initialisierten Programmdaten
(BSS) abgelegt werden.
(47) start_brk %lu (seit Linux 3.3)
Address above which program heap can be expanded with brk(2).
(48) arg_start %lu (seit Linux 3.5)
Adresse, oberhalb derer die Befehlszeilenargumente (argv) abgelegt werden.
(49) arg_end %lu (seit Linux 3.5)
Adresse, unterhalb derer die Befehlszeilenargumente (argv) abgelegt werden.
(50) env_start %lu (seit Linux 3.5)
Adresse, oberhalb derer die Programmumgebung abgelegt wird.
(51) env_end %lu (seit Linux 3.5)
Adresse, unterhalb derer die Programmumgebung abgelegt wird.
(52) exit_code %d (seit Linux 3.5)
The thread's exit status in the form reported by waitpid(2).
/proc/[PID]/statm
Informiert über den Speicherverbrauch, gemessen in Seiten. Die Spalten bedeuten:
Größe (1) Gesamtgröße des Programms
(dasselbe wie VmSize in /proc/[PID]/status)
im Speicher (2) Größe des Resident Set
(dasselbe wie VmRSS in /proc/[PID]/status)
gemeinsam (3) gemeinsame Seiten (d.h. dateigestützte)
Text (4) Text (Code)
Bibliothek (5) Bibliothek (in Linux 2.6 nicht verwendet)
Daten (6) Daten + Stack
geändert (7) geänderte Seiten (dirty) (in Linux 2.6
nicht verwendet)
/proc/[PID]/status
Stellt viele der Informationen in /proc/[PID]/stat und /proc/[PID]/statm in einem Format bereit,
das für Menschen einfacher auszuwerten ist. Ein Beispiel:
$ cat /proc/$$/status
Name: bash
State: S (sleeping)
Tgid: 3515
Pid: 3515
PPid: 3452
TracerPid: 0
Uid: 1000 1000 1000 1000
Gid: 100 100 100 100
FDSize: 256
Groups: 16 33 100
VmPeak: 9136 kB
VmSize: 7896 kB
VmLck: 0 kB
VmPin: 0 kB
VmHWM: 7572 kB
VmRSS: 6316 kB
VmData: 5224 kB
VmStk: 88 kB
VmExe: 572 kB
VmLib: 1708 kB
VmPMD: 4 kB
VmPTE: 20 kB
VmSwap: 0 kB
Threads: 1
SigQ: 0/3067
SigPnd: 0000000000000000
ShdPnd: 0000000000000000
SigBlk: 0000000000010000
SigIgn: 0000000000384004
SigCgt: 000000004b813efb
CapInh: 0000000000000000
CapPrm: 0000000000000000
CapEff: 0000000000000000
CapBnd: ffffffffffffffff
CapAmb: 0000000000000000
Seccomp: 0
Cpus_allowed: 00000001
Cpus_allowed_list: 0
Mems_allowed: 1
Mems_allowed_list: 0
voluntary_ctxt_switches: 150
nonvoluntary_ctxt_switches: 545
Die Bedeutung der Felder im Einzelnen:
* Name: Der von diesem Prozess ausgeführte Befehl.
* State: aktueller Prozesszustand; einer der Werte »R (running)«, »S (sleeping)«, »D (disk
sleep)«, »T (stopped)«, »T (tracing stop)«, »Z (zombie)« oder »X (dead)«.
* Tgid: Gruppen-ID des Threads (d.h. die Prozess-ID).
* PID: Thread-ID (siehe gettid(2)).
* PPid: PID des Elternprozesses.
* TracerPid: PID des Prozesses, der diesen Prozess beobachtet (0 ohne Beobachtung).
* Uid, Gid: Reale, effektive, die gespeicherte und gesicherte sowie Dateisystem-UIDs (GIDs).
* FDSize: Anzahl der aktuell bereitgestellten Dateideskriptor-Slots.
* Groups: ergänzende Gruppenliste.
* VmPeak: Maximalwert des genutzten virtuellen Speichers.
* VmSize: Größe des virtuellen Speichers.
* VmLck: Größe des gesperrten Speichers (siehe mlock(3)).
* VmPin: Pinned memory size (since Linux 3.2). These are pages that can't be moved because
something needs to directly access physical memory.
* VmHWM: Maximalwert der Resident Set Size (»Hochwassermarke«).
* VmRSS: Resident Set Size.
* VmData, VmStk, VmExe: Größe der Daten-, Stack und Text-Segmente.
* VmLib: Code-Größe von Laufzeitbibliotheken.
* VmPTE: Größe der Einträge in der Page Table (seit Linux 2.6.10).
* VmPMD: Size of second-level page tables (since Linux 4.0).
* VmSwap: Swapped-out virtual memory size by anonymous private pages; shmem swap usage is not
included (since Linux 2.6.34).
* Threads: Anzahl der Threads im Prozess, zu dem dieser Thread gehört.
* SigQ: Dieses Feld enthält zwei durch Schrägstriche getrennte Zahlen, die sich auf Signale in der
Warteschlange für die reale Benutzer-ID des Prozesses beziehen. Die erste davon ist die Anzahl
der derzeit in der Warteschlange befindlichen Signale für diese reale Benutzer-ID und die zweite
ist die Ressourcenbegrenzung für die Anzahl wartender Signale für diesen Prozess (siehe die
Beschreibung von RLIMIT_SIGPENDING in getrlimit(2)).
* SigPnd, ShdPnd: Anzahl der insgesamt für Thread und Prozess anstehenden Signale (siehe
pthreads(7) und signal(7)).
* SigBlk, SigIgn, SigCgt: Masken für die Anzeige blockierter, ignorierter und abgefangener Signale
(see signal(7)).
* CapInh, CapPrm, CapEff: In den veerbbaren, erlaubten und effektiven Capability-Mengen aktivierte
Masken (siehe capabilities(7)).
* CapBnd: Capability-Begrenzungsmenge (seit Linux 2.6.26, siehe capabilities(7)).
* CapAmb: Umgebungs-Capability-Menge (seit Linux 4.3, siehe capabilities(7)).
* Seccomp: Seccomp mode of the process (since Linux 3.8, see seccomp(2)). 0 means
SECCOMP_MODE_DISABLED; 1 means SECCOMP_MODE_STRICT; 2 means SECCOMP_MODE_FILTER. This field is
provided only if the kernel was built with the CONFIG_SECCOMP kernel configuration option
enabled.
* Cpus_allowed: Maske von CPUs, auf denen der Prozess laufen kann (seit Linux 2.6.24, siehe
cpuset(7)).
* Cpus_allowed_list: dasselbe wie das vorhergehende, aber in »Listenformat« (seit Linux 2.6.26,
siehe cpuset(7)).
* Mems_allowed: Maske von für diesen Prozess erlaubten Speicherknoten (seit Linux 2.6.24, siehe
cpuset(7)).
* Mems_allowed_list: dasselbe wie das Letzte, aber in »Listenformat« (seit Linux 2.6.26, siehe
cpuset(7)).
* voluntary_ctxt_switches, nonvoluntary_ctxt_switches: Anzahl der freiwilligen und der
unfreiwilligen Kontextwechsel (seit Linux 2.6.23).
/proc/[PID]/syscall (seit Linux 2.6.27)
This file exposes the system call number and argument registers for the system call currently
being executed by the process, followed by the values of the stack pointer and program counter
registers. The values of all six argument registers are exposed, although most system calls use
fewer registers.
If the process is blocked, but not in a system call, then the file displays -1 in place of the
system call number, followed by just the values of the stack pointer and program counter. If
process is not blocked, then the file contains just the string "running".
Diese Datei ist nur vorhanden, falls der Kernel mit CONFIG_HAVE_ARCH_TRACEHOOK konfiguriert wurde.
/proc/[PID]/task (seit Linux 2.6.0-test6)
Dieses Verzeichnis enthält ein Unterverzeichnis für jeden Thread in dem Prozess. Der Name jedes
Unterverzeichnis ist die numerische Thread-ID ([tid]) des Threads (siehe gettid(2)). Innerhalb
jedes dieser Unterverzeichnisse gibt es eine Reihe von Dateien mit gleichem Namen und Inhalt wie
unter den /proc/[PID]-Verzeichnissen. Für Attribute, die von allen Threads gemeinsam verwendet
werden, sind die Inhalte für jede der Dateien unter den /task/[tid]-Unterverzeichnissen die
gleichen wie in der entsprechenden Datei im übergeordneten Verzeichnis /proc/[PID] (z.B. in einem
Multithread-Prozess werden task/[tid]/cwd-Dateien den gleichen Wert wie die Datei task/pid/cwd im
übergeordneten Verzeichnis haben, da alle Threads in einem Prozess sich ein Arbeitsverzeichnis
teilen). Für Attribute, die für jeden Thread verschieden sind, können die entsprechenden Dateien
unter task/[tid] unterschiedliche Werte annehmen (z.B. können verschiedene Felder in jeder der
task/[tid]/status-Dateien für jeden Thread unterschiedlich sein).
In einem Multithread-Prozess ist der Inhalt des Verzeichnisses /proc/[PID]/task nicht mehr
verfügbar, wenn der Haupt-Thread schon beendet ist (typischerweise durch einen Aufruf von
pthread_exit(3))."
/proc/[PID]/timers (seit Linux 3.10)
A list of the POSIX timers for this process. Each timer is listed with a line that starts with the
string "ID:". For example:
ID: 1
signal: 60/00007fff86e452a8
notify: signal/pid.2634
ClockID: 0
ID: 0
signal: 60/00007fff86e452a8
notify: signal/pid.2634
ClockID: 1
The lines shown for each timer have the following meanings:
ID The ID for this timer. This is not the same as the timer ID returned by timer_create(2);
rather, it is the same kernel-internal ID that is available via the si_timerid field of the
siginfo_t structure (see sigaction(2)).
signal This is the signal number that this timer uses to deliver notifications followed by a
slash, and then the sigev_value value supplied to the signal handler. Valid only for timers
that notify via a signal.
notify The part before the slash specifies the mechanism that this timer uses to deliver
notifications, and is one of "thread", "signal", or "none". Immediately following the slash
is either the string "tid" for timers with SIGEV_THREAD_ID notification, or "pid" for
timers that notify by other mechanisms. Following the "." is the PID of the process (or the
kernel thread ID of the thread) that will be delivered a signal if the timer delivers
notifications via a signal.
ClockID
This field identifies the clock that the timer uses for measuring time. For most clocks,
this is a number that matches one of the user-space CLOCK_* constants exposed via <time.h>.
CLOCK_PROCESS_CPUTIME_ID timers display with a value of -6 in this field.
CLOCK_THREAD_CPUTIME_ID timers display with a value of -2 in this field.
Diese Datei ist nur vorhanden, falls der Kernel mit CONFIG_CHECKPOINT_RESTORE konfiguriert wurde.
/proc/[PID]/uid_map, /proc/[PID]/gid_map (seit Linux 3.5)
Siehe user_namespaces(7).
/proc/[PID]/wchan (seit Linux 2.6.0)
Der symbolische Name, der dem Ort im Kernel entspricht, an dem der Prozess schläft.
/proc/apm
Version von »advanced power management« und Informationen zur Batterie, wenn bei der Kompilierung
des Kernels CONFIG_APM definiert wird.
/proc/buddyinfo
This file contains information which is used for diagnosing memory fragmentation issues. Each line
starts with the identification of the node and the name of the zone which together identify a
memory region This is then followed by the count of available chunks of a certain order in which
these zones are split. The size in bytes of a certain order is given by the formula:
(2^order) * PAGE_SIZE
The binary buddy allocator algorithm inside the kernel will split one chunk into two chunks of a
smaller order (thus with half the size) or combine two contiguous chunks into one larger chunk of
a higher order (thus with double the size) to satisfy allocation requests and to counter memory
fragmentation. The order matches the column number, when starting to count at zero.
Auf einem x86_64-System zum Beispiel:
Node 0, zone DMA 1 1 1 0 2 1 1 0 1 1 3
Node 0, zone DMA32 65 47 4 81 52 28 13 10 5 1 404
Node 0, zone Normal 216 55 189 101 84 38 37 27 5 3 587
In this example, there is one node containing three zones and there are 11 different chunk sizes.
If the page size is 4 kilobytes, then the first zone called DMA (on x86 the first 16 megabyte of
memory) has 1 chunk of 4 kilobytes (order 0) available and has 3 chunks of 4 megabytes (order 10)
available.
If the memory is heavily fragmented, the counters for higher order chunks will be zero and
allocation of large contiguous areas will fail.
Further information about the zones can be found in /proc/zoneinfo.
/proc/bus
Enthält Unterverzeichnisse für installierte Busse.
/proc/bus/pccard
Unterverzeichnis für PCMCIA-Geräte, wenn bei der Kompilierung des Kernels CONFIG_PCMCIA gesetzt
wird.
/proc/bus/pccard/drivers
/proc/bus/pci
Enthält diverse Bus-Unterverzeichnisse und Pseudodateien mit Informationen zu PCI-Bussen,
installierten Geräten und Gerätetreibern. Einige dieser Dateien sind nicht in ASCII codiert.
/proc/bus/pci/devices
Informationen über PCI-Geräte. Auf diese kann mittels lspci(8) und setpci(8) zugegriffen werden.
/proc/cmdline
Dem Kernel beim Startvorgang übergebene Argumente. Oft geschieht das über einen Bootmanager wie
lilo(8) oder grub(8).
/proc/config.gz (seit Linux 2.6)
Diese Datei macht die Konfigurationsoptionen verfügbar, die für den Bau des aktuell laufenden
Kernels verwendet wurden. Das Format ist das gleiche wie in der Datei .config, die bei der
Konfiguration des Kernels (mittels make xconfig, make config oder ähnlichem) erzeugt wird. Der
Inhalt der Datei ist komprimiert; er kann mittels zcat(1) und zgrep(1) angezeigt und durchsucht
werden. Solange keine Änderungen in der folgenden Datei vorgenommen wurden, sind die Inhalte von
/proc/config.gz die gleichen, die wie folgt gewonnen werden können:
cat /lib/modules/$(uname -r)/build/.config
/proc/config.gz wird nur bereitgestellt, wenn der Kernel mit CONFIG_IKCONFIG_PROC konfiguriert
wird.
/proc/crypto
A list of the ciphers provided by the kernel crypto API. For details, see the kernel Linux Kernel
Crypto API documentation available under the kernel source directory Documentation/DocBook. (That
documentation can be built using a command such as make htmldocs in the root directory of the
kernel source tree.)
/proc/cpuinfo
Dies ist eine Sammlung von Informationen, die von der CPU und der Systemarchitektur abhängen. Die
Liste sieht für jede unterstäützte Architektur anders aus. Die einzigen Einträge, die man überall
antrifft, sind processor, welcher die Nummer der CPU anzeigt und BogoMIPS, eine Systemkonstante,
die während der Kernel-Initialisierung errechnet wird. SMP-Maschinen haben Informationen für jede
CPU. Der Befehl lscpu(1) sammelt seine Informationen aus dieser Datei.
/proc/devices
Eine Textliste der Major-Gerätenummern und Gerätegruppen. Kann von MAKEDEV-Skripten genutzt
werden, um mit dem Kernel überein zu stimmen.
/proc/diskstats (seit Linux 2.5.69)
Diese Datei enthält Platten-E/A-Statistiken für jedes »disk device«. Die Linux-Kernel-Quelldatei
Documentation/iostats.txt gibt weitere Informationen.
/proc/dma
Das ist eine Liste von registrierten ISA-DMA-Kanälen, die zur Zeit benutzt werden (DMA: Direct
Memory Access).
/proc/driver
Leeres Unterverzeichnis.
/proc/execdomains
List of the execution domains (ABI personalities).
/proc/fb
Information zum Bildspeicher (frame buffer), wenn bei der Kompilierung des Kernels CONFIG_FB
definiert wird.
/proc/filesystems
Eine Auflistung der Dateisysteme, die vom Kernel unterstützt werden, nämlich Dateisysteme, die in
den Kernel kompiliert wurden oder deren Kernel-Module derzeit geladen sind (siehe auch
filesystems(5)). Wenn ein Dateisystem mit »nodev« gekennzeichnet ist, bedeutet dies, dass kein
Block-Gerät eingehängt werden muss (z.B. virtuelles Dateisystem, Netzwerk-Dateisystem).
Im Übrigen kann diese Datei von mount(8) verwendet werden, wenn kein Dateisystem angegeben wurde
und es den Typ des Dateisystems nicht bestimmen konnte. Dann werden in dieser Datei enthaltene
Dateisysteme ausprobiert (ausgenommen diejenigen, die mit »nodev« gekennzeichnet sind).
/proc/fs
Contains subdirectories that in turn contain files with information about (certain) mounted
filesystems.
/proc/ide
Dieses Verzeichnis gibt es auf Systemen mit dem IDE-Bus. Es gibt Verzeichnisse für jeden IDE-Kanal
und jedes zugeordnete Gerät. Zu den Dateien gehören:
cache Puffergröße in KB
capacity Anzahl der Sektoren
driver Version des Treibers
geometry physikalische und logische Geometrie
identify hexadezimal
media Medientyp
model Modellnummer des Herstellers
settings Geräteeinstellungen
smart_thresholds hexadezimal
smart_values hexadezimal
Das Werkzeug hdparm(8) ermöglicht einen angenehmen Zugriff auf diese Informationen.
/proc/interrupts
Diese Datei wurde verwendet, um die Anzahl der Interrupts pro CPU pro E/A-Gerät aufzunehmen. Seit
Linux 2.6.24 werden außerdem, zumindest für die Architekturen i386 und x86_64, systeminterne
Interrupts (das sind nicht unmittelbar an ein Gerät gebundene) wie beispielsweise NMI (nicht
maskierbarer Interrupt), LOC (lokaler Timer-Interrupt), und für SMP-Systeme TLB (TLB Flush
Interrupt), RES (Interrupt für Änderungen im Scheduling), CAL (Remote Function Call Interrupt) und
möglicherweise andere mit eingetragen. Sie ist in ASCII codiert und sehr leicht zu lesen.
/proc/iomem
E/A-Speicherbelegung in Linux 2.4
/proc/ioports
Das ist eine Liste der derzeit registrierten und benutzten Ein-/Ausgabe-Port-Regionen.
/proc/kallsyms (seit Linux 2.5.71)
Hier stehen die vom Kernel exportierten Symboldefinitionen, die von modules(X)-Tools benutzt
werden, um ladbare Module dynamisch zu linken und binden. Bis einschließlich Linux 2.5.47 gab es
eine ähnliche Datei ksyms mit leicht abweichender Syntax.
/proc/kcore
Diese Datei repräsentiert den physikalischen Speicher des Systems und hat das
Elf-core-Dateiformat. Mit dieser Pseudodatei und einem Kernel mit Debugsymbolen
(/usr/src/linux/vmlinux) kann mit GDB der aktuelle Zustand der Kernel-Datenstrukturen untersucht
werden.
Die Gesamtgröße dieser Datei ist die Größe des physischen Speichers (RAM) plus 4KB.
/proc/kmsg
Diese Datei kann anstelle des Systemaufrufs syslog(2) benutzt werden, um Meldungen des Kernels zu
lesen. Ein Prozess muss Superuser-Privilegien haben, um diese Datei zu lesen und nur ein einziger
Prozess sollte dies tun. Die Datei sollte nicht ausgelesen werden, wenn ein Syslog-Prozess läuft,
der den Systemaufruf syslog(2) zur Protokollierung benutzt.
Die Informationen in dieser Datei können mit dmesg(1) dargestellt werden.
/proc/kpagecount (seit Linux 2.6.25)
This file contains a 64-bit count of the number of times each physical page frame is mapped,
indexed by page frame number (see the discussion of /proc/[pid]/pagemap).
Die Datei /proc/kpagecount ist nur vorhanden, wenn die Kernel-Konfigurationsoption
CONFIG_PROC_PAGE_MONITOR aktiviert ist.
/proc/kpageflags (seit Linux 2.6.25)
This file contains 64-bit masks corresponding to each physical page frame; it is indexed by page
frame number (see the discussion of /proc/[pid]/pagemap). The bits are as follows:
0 - KPF_LOCKED
1 - KPF_ERROR
2 - KPF_REFERENCED
3 - KPF_UPTODATE
4 - KPF_DIRTY
5 - KPF_LRU
6 - KPF_ACTIVE
7 - KPF_SLAB
8 - KPF_WRITEBACK
9 - KPF_RECLAIM
10 - KPF_BUDDY
11 - KPF_MMAP (seit Linux 2.6.31)
12 - KPF_ANON (seit Linux 2.6.31)
13 - KPF_SWAPCACHE (seit Linux 2.6.31)
14 - KPF_SWAPBACKED (seit Linux 2.6.31)
15 - KPF_COMPOUND_HEAD (seit Linux 2.6.31)
16 - KPF_COMPOUND_TAIL (seit Linux 2.6.31)
16 - KPF_HUGE (seit Linux 2.6.31)
18 - KPF_UNEVICTABLE (seit Linux 2.6.31)
19 - KPF_HWPOISON (seit Linux 2.6.31)
20 - KPF_NOPAGE (seit Linux 2.6.31)
21 - KPF_KSM (seit Linux 2.6.32)
22 - KPF_THP (seit Linux 3.4)
Für weitere Details zur Bedeutung dieser Bits lesen Sie die Kernelquelldatei
Documentation/vm/pagemap.txt. Vor Kernel 2.6.29 lieferten KPF_WRITEBACK, KPF_RECLAIM, KPF_BUDDY
und KPF_LOCKED nicht die korrekten Werte.
Die Datei /proc/kpageflags ist nur vorhanden, wenn die Kernel-Konfigurationsoption
CONFIG_PROC_PAGE_MONITOR aktiviert ist.
/proc/ksyms (Linux 1.1.23-2.5.47)
Siehe /proc/kallsyms.
/proc/loadavg
Die ersten drei Felder in dieser Datei geben die durchschnittliche Anzahl von Jobs an, die in der
Run-Warteschlange sind (Status R) oder auf Platten-E/A warten (Status D), gemittelt über 1, 5, und
15 Minuten. Das sind die gleichen Angaben für die durchschnittliche Belastung, wie sei von
uptime(1) und anderen Programmen angegeben werden. Das vierte Feld besteht aus zwei durch einen
Schrägstrich (/) getrennten Zahlen. Die erste davon ist die Anzahl von derzeit ausführbaren
Kernel-Scheduling-Einheiten (Prozesse, Threads). Der Wert nach dem Schrägstrich ist die Anzahl der
Kernel-Scheduling-Einheiten, die aktuell auf dem System existieren. Das fünfte Feld ist die PID
des Prozesses, der zuletzt auf dem System erzeugt wurde.
/proc/locks
Diese Datei zeigt aktuell gesperrte (flock(2) und fcntl(2)) sowie freigegebene Dateien an
(fcntl(2)).
/proc/malloc (nur bis zu einschließlich Linux 2.2)
Diese Datei existiert nur, wenn bei der Kompilierung des Kernels CONFIG_DEBUG_MALLOC definiert
war.
/proc/meminfo
This file reports statistics about memory usage on the system. It is used by free(1) to report
the amount of free and used memory (both physical and swap) on the system as well as the shared
memory and buffers used by the kernel. Each line of the file consists of a parameter name,
followed by a colon, the value of the parameter, and an option unit of measurement (e.g., "kB").
The list below describes the parameter names and the format specifier required to read the field
value. Except as noted below, all of the fields have been present since at least Linux 2.6.0. Some
fields are displayed only if the kernel was configured with various options; those dependencies
are noted in the list.
MemTotal %lu
Gesamter verwendbarer Arbeitsspeicher (d.h. physischer Arbeitsspeicher abzüglich ein paar
reservierter Bits und dem Binärcode des Kernels).
MemFree %lu
Die Summe von LowFree+HighFree.
Buffers %lu
Relativ temporärer Speicher für rohe Diskblöcke, der nicht besonders groß werden sollte (20
MB oder so).
Cached %lu
In-memory cache for files read from the disk (the page cache). Doesn't include SwapCached.
SwapCached %lu
Memory that once was swapped out, is swapped back in but still also is in the swap file.
(If memory pressure is high, these pages don't need to be swapped out again because they
are already in the swap file. This saves I/O.)
Active %lu
Memory that has been used more recently and usually not reclaimed unless absolutely
necessary.
Inactive %lu
Memory which has been less recently used. It is more eligible to be reclaimed for other
purposes.
Active(anon) %lu (seit Linux 2.6.28)
[Muss noch dokumentiert werden.]
Inactive(anon) %lu (seit Linux 2.6.28)
[Muss noch dokumentiert werden.]
Active(file) %lu (seit Linux 2.6.28)
[Muss noch dokumentiert werden.]
Inactive(file) %lu (seit Linux 2.6.28)
[Muss noch dokumentiert werden.]
Unevictable %lu (seit Linux 2.6.28)
(Von Linux 2.6.28 bis 2.6.30: CONFIG_UNEVICTABLE_LRU war notwendig.) [Muss noch
dokumentiert werden.]
Mlocked %lu (seit Linux 2.6.28)
(Von Linux 2.6.28 bis 2.6.30: CONFIG_UNEVICTABLE_LRU war notwendig.) [Muss noch
dokumentiert werden.]
HighTotal %lu
(Starting with Linux 2.6.19, CONFIG_HIGHMEM is required.) Total amount of highmem. Highmem
is all memory above ~860MB of physical memory. Highmem areas are for use by user-space
programs, or for the page cache. The kernel must use tricks to access this memory, making
it slower to access than lowmem.
HighFree %lu
(Starting with Linux 2.6.19, CONFIG_HIGHMEM is required.) Amount of free highmem.
LowTotal %lu
(Starting with Linux 2.6.19, CONFIG_HIGHMEM is required.) Total amount of lowmem. Lowmem is
memory which can be used for everything that highmem can be used for, but it is also
available for the kernel's use for its own data structures. Among many other things, it is
where everything from Slab is allocated. Bad things happen when you're out of lowmem.
LowFree %lu
(Starting with Linux 2.6.19, CONFIG_HIGHMEM is required.) Amount of free lowmem.
MmapCopy %lu (seit Linux 2.6.29)
(CONFIG_MMU ist notwendig.) [Muss noch dokumentiert werden.]
SwapTotal %lu
Total amount of swap space available.
SwapFree %lu
Amount of swap space that is currently unused.
Dirty %lu
Memory which is waiting to get written back to the disk.
Writeback %lu
Memory which is actively being written back to the disk.
AnonPages %lu (seit Linux 2.6.18)
Non-file backed pages mapped into user-space page tables.
Mapped %lu
Files which have been mapped into memory (with mmap(2)), such as libraries.
Shmem %lu (seit Linux 2.6.32)
[Muss noch dokumentiert werden.]
Slab %lu
In-kernel data structures cache.
SReclaimable %lu (seit Linux 2.6.19)
Part of Slab, that might be reclaimed, such as caches.
SUnreclaim %lu (seit Linux 2.6.19)
Part of Slab, that cannot be reclaimed on memory pressure.
KernelStack %lu (seit Linux 2.6.32)
Amount of memory allocated to kernel stacks.
PageTables %lu (seit Linux 2.6.18)
Amount of memory dedicated to the lowest level of page tables.
Quicklists %lu (seit Linux 2.6.27)
(CONFIG_QUICKLIST ist notwendig.) [Muss noch dokumentiert werden.]
NFS_Unstable %lu (seit Linux 2.6.18)
NFS pages sent to the server, but not yet committed to stable storage.
Bounce %lu (seit Linux 2.6.18)
Memory used for block device "bounce buffers".
WritebackTmp %lu (seit Linux 2.6.26)
Memory used by FUSE for temporary writeback buffers.
CommitLimit %lu (seit Linux 2.6.10)
This is the total amount of memory currently available to be allocated on the system,
expressed in kilobytes. This limit is adhered to only if strict overcommit accounting is
enabled (mode 2 in /proc/sys/vm/overcommit_memory). The limit is calculated according to
the formula described under /proc/sys/vm/overcommit_memory. For further details, see the
kernel source file Documentation/vm/overcommit-accounting.
Committed_AS %lu
The amount of memory presently allocated on the system. The committed memory is a sum of
all of the memory which has been allocated by processes, even if it has not been "used" by
them as of yet. A process which allocates 1GB of memory (using malloc(3) or similar), but
touches only 300MB of that memory will show up as using only 300MB of memory even if it has
the address space allocated for the entire 1GB.
This 1GB is memory which has been "committed" to by the VM and can be used at any time by
the allocating application. With strict overcommit enabled on the system (mode 2 in IR
/proc/sys/vm/overcommit_memory ), allocations which would exceed the CommitLimit will not
be permitted. This is useful if one needs to guarantee that processes will not fail due to
lack of memory once that memory has been successfully allocated.
VmallocTotal %lu
Total size of vmalloc memory area.
VmallocUsed %lu
Amount of vmalloc area which is used.
VmallocChunk %lu
Largest contiguous block of vmalloc area which is free.
HardwareCorrupted %lu (seit Linux 2.6.32)
(CONFIG_MEMORY_FAILURE ist notwendig.) [Muss noch dokumentiert werden.]
AnonHugePages %lu (seit Linux 2.6.38)
(CONFIG_TRANSPARENT_HUGEPAGE is required.) Non-file backed huge pages mapped into
user-space page tables.
HugePages_Total %lu
(CONFIG_HUGETLB_PAGE is required.) The size of the pool of huge pages.
HugePages_Free %lu
(CONFIG_HUGETLB_PAGE is required.) The number of huge pages in the pool that are not yet
allocated.
HugePages_Rsvd %lu (seit Linux 2.6.17)
(CONFIG_HUGETLB_PAGE is required.) This is the number of huge pages for which a commitment
to allocate from the pool has been made, but no allocation has yet been made. These
reserved huge pages guarantee that an application will be able to allocate a huge page from
the pool of huge pages at fault time.
HugePages_Surp %lu (seit Linux 2.6.24)
(CONFIG_HUGETLB_PAGE is required.) This is the number of huge pages in the pool above the
value in /proc/sys/vm/nr_hugepages. The maximum number of surplus huge pages is controlled
by /proc/sys/vm/nr_overcommit_hugepages.
Hugepagesize %lu
(CONFIG_HUGETLB_PAGE is required.) The size of huge pages.
/proc/modules
Eine Textliste der vom System geladenen Module (siehe auch lsmod(8)) .
/proc/mounts
Vor Kernel 2.4.19 war diese Datei eine Liste aller akuell im System eingehängten Dateisysteme. Mit
der Einführung der prozesseigenen Einhängenamensräume in Linux 2.4.19 wurde diese Datei ein Link
auf /proc/self/mounts, die die Einhängepunkte des prozesseigenen Einhängenamensraums auflistet.
Das Format dieser Datei wird in fstab(5) dokumentiert.
/proc/mtrr
Die Memory Type Range Register, Details siehe die Linux-Kernel-Quelldatei Documentation/mtrr.txt.
/proc/net
Verschiedene Pseudodateien, die alle den Zustand bestimmter Teile der Netzwerkschicht darstellen.
Diese Dateien enthalten ASCII-Strukturen und sind daher mit »cat« lesbar. Allerdings stellt der
Standardbefehl netstat(8) einen sehr viel saubereren Zugang zu diesen Dateien dar.
/proc/net/arp
Enthält einen in ASCII lesbaren Abzug der ARP-Tabelle des Kernels, die zur Adressauflösung dient.
Angezeigt werden sowohl dynamisch gelernte wie auch vorprogrammierte ARP-Einträge in folgendem
Format:
IP address HW type Flags HW address Mask Device
192.168.0.50 0x1 0x2 00:50:BF:25:68:F3 * eth0
192.168.0.250 0x1 0xc 00:00:00:00:00:00 * eth0
Dabei ist »IP address« die IPv4-Adresse der Maschine, »HW type« ist der Hardware-Typ nach RFC 826.
Die Flags sind die internen Schalter der ARP-Struktur (siehe /usr/include/linux/if_arp.h) und »HW
address« zeigt die physikalische Schicht für diese IP-Adresse, wenn bekannt.
/proc/net/dev
Die Pseudodatei dev enthält Statusinformationen über die Netzwerkkarte. Darin stehen die Anzahl
der empfangenen und gesendeten Pakete, die Anzahl der Übertragungsfehler und Kollisionen und
weitere grundlegende Statistik. Das Programm ifconfig(8) benutzt diese Werte für die Anzeige des
Gerätestatus. Das Format ist:
Inter-| Receive | Transmit
face |bytes packets errs drop fifo frame compressed multicast|bytes packets errs drop fifo colls carrier compressed
lo: 2776770 11307 0 0 0 0 0 0 2776770 11307 0 0 0 0 0 0
eth0: 1215645 2751 0 0 0 0 0 0 1782404 4324 0 0 0 427 0 0
ppp0: 1622270 5552 1 0 0 0 0 0 354130 5669 0 0 0 0 0 0
tap0: 7714 81 0 0 0 0 0 0 7714 81 0 0 0 0 0 0
/proc/net/dev_mcast
Definiert in /usr/src/linux/net/core/dev_mcast.c:
indx interface_name dmi_u dmi_g dmi_address
2 eth0 1 0 01005e000001
3 eth1 1 0 01005e000001
4 eth2 1 0 01005e000001
/proc/net/igmp
Internet Group Management Protocol. Definiert in /usr/src/linux/net/core/igmp.c.
/proc/net/rarp
Diese Datei benutzt das gleiche Format wie die arp-Datei und enthält die aktuelle Datenbank für
die »umgekehrte Adressauflösung« (reverse mapping), mit der rarp(8) arbeitet. Wenn RARP nicht in
den Kernel hineinkonfiguriert ist, dann ist diese Datei nicht vorhanden.
/proc/net/raw
Enthält einen Abzug der RAW-Socket-Tabelle. Der Großteil der Informationen dient nur zur
Fehlersuche. Der »sl«-Wert ist der »kernel hash slot« für diesen Socket, »local address« enthält
das Wertepaar für lokale Adresse und Protokoll. "St" ist der interne Status des Sockets.
»tx_queue« und »rx_queue« sind Warteschlangen für ausgehende bzw. eintreffende Daten, angegeben
als Kernel-Speichernutzung, »tr«, »tm->when« und »rexmits« werden von RAW nicht benutzt. Das
»uid«-Feld enthält die effektive UID des Socket-Erstellers.
/proc/net/snmp
Diese Datei enthält die ASCII-Daten, die für die Verwaltung von IP, ICMP, TCP und UDP durch einen
SNMP-Agenten benötigt werden.
/proc/net/tcp
Enthält einen Abzug der TCP-Socket-Tabelle. Der Großteil der Informationen dient nur zur
Fehlersuche. Der »sl«-Wert ist der »kernel hash slot« für diesen Socket, »local address« ist ein
Wertepaar aus lokaler Adresse und Port. Die »remote address« ist (bei einer bestehenden
Verbindung) ein Wertepaar aus Adresse der Gegenstation und deren Port. "St" ist der interne Status
des Sockets. »tx_queue« und »rx_queue« werden verwendet wie bei RAW (s.w.o.). Die Felder »tr«,
»tm->when« und »rexmits« enthalten interne Kernel-Informationen zum Zustand des Sockets und nutzen
nur zur Fehlersuche. Das »uid«-Feld enthält die effektive UID des Socket-Erstellers.
/proc/net/udp
Enthält einen Abzug der UPD-Socket-Tabelle. Der Großteil der Informationen dient nur zur
Fehlersuche. Der »sl«-Wert ist der »kernel hash slot« für diesen Socket, »local address« ist ein
Wertepaar aus lokaler Adresse und Port. Die »remote address« ist (bei einer bestehenden
Verbindung) ein Wertepaar aus Adresse der Gegenstation und deren Port. "St" ist der interne Status
des Sockets. »tx_queue« und »rx_queue« werden verwendet wie bei RAW (s.w.o.). Die Felder »tr«,
»tm->when« und »rexmits« werden von UDP nicht genutzt. Das »uid«-Feld enthält die effektive UID
des Socket-Erstellers. Das Format ist:
sl local_address rem_address st tx_queue rx_queue tr rexmits tm->when uid
1: 01642C89:0201 0C642C89:03FF 01 00000000:00000001 01:000071BA 00000000 0
1: 00000000:0801 00000000:0000 0A 00000000:00000000 00:00000000 6F000100 0
1: 00000000:0201 00000000:0000 0A 00000000:00000000 00:00000000 00000000 0
/proc/net/unix
Liste der UNIX Domain Sockets im System und ihr Status. Format:
Num RefCount Protocol Flags Type St Path
0: 00000002 00000000 00000000 0001 03
1: 00000001 00000000 00010000 0001 01 /dev/printer
Die Bedeutung der Felder im Einzelnen:
Num: the kernel table slot number.
RefCount: Die Anzahl der Benutzer des Sockets.
Protokoll:
Derzeit immer 0.
Flags: the internal kernel flags holding the status of the socket.
Type: the socket type. For SOCK_STREAM sockets, this is 0001; for SOCK_DGRAM sockets, it is
0002; and for SOCK_SEQPACKET sockets, it is 0005.
St: Der interne Zustand des Sockets.
Path: the bound path (if any) of the socket. Sockets in the abstract namespace are included in
the list, and are shown with a Path that commences with the character '@'.
/proc/net/netfilter/nfnetlink_queue
This file contains information about netfilter userspace queueing, if used. Each line represents a
queue. Queues that have not been subscribed to by userspace are not shown.
1 4207 0 2 65535 0 0 0 1
(1) (2) (3)(4) (5) (6) (7) (8)
Die Felder in jeder Zeile sind:
(1) The ID of the queue. This matches what is specified in the --queue-num or --queue-balance
options to the iptables(8) NFQUEUE target. See iptables-extensions(8) for more information.
(2) The netlink port ID subscribed to the queue.
(3) The number of packets currently queued and waiting to be processed by the application.
(4) The copy mode of the queue. It is either 1 (metadata only) or 2 (also copy payload data to
userspace).
(5) Copy range; that is, how many bytes of packet payload should be copied to userspace at most.
(6) queue dropped. Number of packets that had to be dropped by the kernel because too many
packets are already waiting for userspace to send back the mandatory accept/drop verdicts.
(7) queue user dropped. Number of packets that were dropped within the netlink subsystem. Such
drops usually happen when the corresponding socket buffer is full; that is, userspace is not
able to read messages fast enough.
(8) sequence number. Every queued packet is associated with a (32-bit) monotonically-increasing
sequence number. This shows the ID of the most recent packet queued.
Die letzte Zahl existiert nur aus Kompatibilitätsgründen und ist immer 1.
/proc/partitions
Enthält neben den Major- und Minor-Gerätenummern jeder Partition auch die Anzahl der
1024-Byte-Blöcke und dem Partitionsnamen.
/proc/pci
Das ist eine Liste aller PCI-Geräte, die während der Initialisierung des Kernels gefunden und
konfiguriert wurden.
Diese Datei wurde zugunsten einer neuen /proc-Schnittstelle für PCI (/proc/bus/pci)verworfen. Sie
wurde in Linux 2.2 optional (verfügbar durch Setzen von CONFIG_PCI_OLD_PROC bei der
Kernel-Kompilierung). Sie wurde noch einmal non-optional in Linux 2.4 aktiviert. Als nächstes
wurde sie in Linux 2.6 missbilligt (mit gesetztem CON-FIG_PCI_LEGACY_PROC noch verfügbar) und
schließlich seit Linux 2.6.17 entfernt.
/proc/profile (seit Linux 2.4)
This file is present only if the kernel was booted with the profile=1 command-line option. It
exposes kernel profiling information in a binary format for use by readprofile(1). Writing (e.g.,
an empty string) to this file resets the profiling counters; on some architectures, writing a
binary integer "profiling multiplier" of size sizeof(int) sets the profiling interrupt frequency.
/proc/scsi
Ein Verzeichnis mit der scsi-»mid-level«-Pseudodatei und diversen Verzeichnissen für systemnahe
SCSI-Treiber, die eine Datei pro SCSI-Host im System enthalten. Alle diese spiegeln den Status
eines Teils des SCSI-Subsystems wider. Die Dateien enthalten ASCII-Strukturen, können also mit
cat(1) gelesen werden.
In einige Dateien kann auch geschrieben werden, um das Teilsystem neu zu konfigurieren oder um
bestimmte Eigenschaften ein- oder aus-zuschalten.
/proc/scsi/scsi
Dies ist eine Liste aller SCSI-Geräte, die dem Kernel bekannt sind. Sie ähnelt der, die man beim
Hochfahren des Rechners sieht. scsi unterstützt derzeit nur den Befehl singledevice, der root
ermöglicht, im laufenden Betrieb der Liste ein zusätzliches Gerät hinzuzufügen.
Der Befehl
echo 'scsi add-single-device 1 0 5 0' > /proc/scsi/scsi
veranlasst Host scsi1 nachzusehen, ob auf SCSI-Kanal 0 ein Gerät mit ID 5 LUN 0 existiert. Wenn an
dieser Adresse schon ein Gerät ist, oder die Adresse ungültig ist, wird ein Fehler
zurückgeliefert.
/proc/scsi/[Treibername]
Treibername kann derzeit sein: NCR53c7xx, aha152x, aha1542, aha1740, aic7xxx, buslogic, eata_dma,
eata_pio, fdomain, in2000, pas16, qlogic, scsi_debug, seagate, t128, u15-24f, ultrastore oder
wd7000. Diese Verzeichnisse werden für jeden Treiber angezeigt, der zumindest ein SCSI-HBA
registriert hat. Jedes Verzeichnis enthält eine Datei pro registriertem Host, die als Namen die
Nummer haben, die dem Host bei der Initialisierung zugewiesen wurde.
Das Lesen der Dateien zeigt normalerweise Treiber- und Host-Konfiguration, Statistik usw.
Schreiben in diese Dateien hat Host-abhängige Auswirkungen. Mit den Befehlen latency und nolatency
kann root den Code zur Latenzmessung im eata_dma-Treiber ein-/ausschalten. Mit lockup und unlock
können Bus-Sperren (bus lockups) kontrolliert werden, wie sie vom scsi_debug-Treiber simuliert
werden.
/proc/self
Dieses Verzeichnis bezieht sich auf den Prozess, der auf das /proc-Dateisystem zugreift und ist
mit dem /proc-Verzeichnis identisch, das als Namen die Prozessnummer dieses Prozesses hat.
/proc/slabinfo
Informationen zu Kernel-Caches. Seit Linux 2.6.16 existiert diese Datei nur, wenn die
Kernel-Konfigurationsoption CONFIG_SLAB gesetzt wird. Die Spalten in /proc/slabinfo sind:
cache-name
num-active-objs
total-objs
object-size
num-active-slabs
total-slabs
num-pages-per-slab
Siehe slabinfo(5) für Details.
/proc/stat
Von der Architektur abhängige Kernel- und Systemstatistiken. Gebräuchliche Einträge sind:
cpu 3357 0 4313 1362393
Die Zeitdauer (gemessen in USER_HZ, auf den meisten Architekturen Hundertstelsekunden,
ermitteln Sie den richtigen Wert mit sysconf(_SC_CLK_TCK)), die das System in verschiedenen
Stati verbracht hat:
user (1) Time spent in user mode.
nice (2) Time spent in user mode with low priority (nice).
system (3) Time spent in system mode.
idle (4) Time spent in the idle task. This value should be USER_HZ times the second entry
in the /proc/uptime pseudo-file.
iowait (seit Linux 2.5.41)
(5) Time waiting for I/O to complete.
irq (seit Linux 2.6.0-test4)
(6) Time servicing interrupts.
softirq (seit Linux 2.6.0-test4)
(7) Time servicing softirqs.
steal (seit Linux 2.6.11)
(8) Gestohlene Zeit, die in anderen Betriebssystemen verbracht wurde, wenn der
Prozess in einer virtualisierten Umgebung läuft.
guest (seit Linux 2.6.24)
(9) Zeit, die für den Betrieb einer virtuellen CPU für Gastbetriebssysteme unter der
Steuerung des Linux-Kernels verbracht wurde.
guest_nice (seit Linux 2.6.33)
(10) Time spent running a niced guest (virtual CPU for guest operating systems under
the control of the Linux kernel).
page 5741 1808
Die Anzahl Speicherseiten, die das System von der Platte geladen hat sowie die Anzahl der
dorthin ausgelagerten Speicherseiten.
swap 1 0
Die Anzahl an Auslagerungs-Seiten, die hereingeholt und herausgebracht wurden.
intr 1462898
This line shows counts of interrupts serviced since boot time, for each of the possible
system interrupts. The first column is the total of all interrupts serviced including
unnumbered architecture specific interrupts; each subsequent column is the total for that
particular numbered interrupt. Unnumbered interrupts are not shown, only summed into the
total.
disk_io: (2,0):(31,30,5764,1,2) (3,0):...
(major,disk_idx):(noinfo, read_io_ops, blks_read, write_io_ops, blks_written)
(nur Linux 2.4)
ctxt 115315
Anzahl Kontextwechsel, die das System durchlaufen hat.
btime 769041601
Zeitpunkt des Systemstart, in Sekunden seit dem 1. Januar 1970 0 Uhr UTC (Epoch).
processes 86031
Anzahl der seit dem Systemstart erzeugten Prozesse.
procs_running 6
Anzahl der lauffähigen Prozesse (von Linux 2.5.45 aufwärts).
procs_blocked 2
Anzahl von Prozessen, die durch das Warten auf den Abschluss von E/A blockiert sind (2.5.45
aufwärts).
/proc/swaps
Genutzte Swap-Bereiche; siehe auch swapon(8).
/proc/sys
Dieses Verzeichnis (vorhanden seit 1.3.57) enthält einige Dateien und Unterverzeichnisse, die
Kernel-Variablen entsprechen. Diese Variablen können gelesen und manchmal auch mittels des
/proc-Dateisystems oder des (missbilligten) Systemaufrufs sysctl(2) geändert werden.
String values may be terminated by either '\0' or '\n'.
Integer and long values may be written either in decimal or in hexadecimal notation (e.g. 0x3FFF).
When writing multiple integer or long values, these may be separated by any of the following
whitespace characters: ' ', '\t', or '\n'. Using other separators leads to the error EINVAL.
/proc/sys/abi (seit Linux 2.4.10)
Dieses Verzeichnis enthält möglicherweise binäre Anwendungsinformationen; siehe die
Linux-Kernel-Quelldatei Documentation/sysctl/abi.txt für weitere Informationen.
/proc/sys/debug
Dieses Verzeichnis kann leer sein.
/proc/sys/dev
Dieses Verzeichnis enthält gerätespezifische Informationen (z.B. /dev/cdrom/info). Auf einigen
Systemen kann es leer sein.
/proc/sys/fs
Dieses Verzeichnis enthält die Dateien und Unterverzeichnisse für Kernel-Variablen in Zusammenhang
mit Dateisystemen.
/proc/sys/fs/binfmt_misc
Dokumentation für Dateien in diesem Verzeichnis kann in den Linux-Kernelquellen in
Documentation/binfmt_misc.txt gefunden werden.
/proc/sys/fs/dentry-state (seit Linux 2.2)
Diese Datei enthält Informationen über den Zustand des Verzeichnis-Zwischenspeichers (directory
cache,dcache). Die Datei enthält sechs Zahlen: nr_dentry, nr_unused, age_limit (Alter in
Sekunden), want_pages (vom System angeforderte Seiten) und zwei Dummy-Werte.
* nr_dentry ist die Anzahl der zugewiesenen Dentries (dcache entries). Dieses Feld wird in Linux
2.2 nicht genutzt.
* nr_unused ist die Anzahl ungenutzter Dentries.
* age_limit ist das Alter in Sekunden, nach dem Dcache-Einträge bei Speicherknappheit
zurückgefordert werden können.
* want_pages ist ungleich null der Kernel shrink_dcache_pages() aufgerufen hat und der Dcache noch
nicht bereinigt ist.
/proc/sys/fs/dir-notify-enable
Diese Datei kann genutzt werden, um die in fcntl(2) beschriebene dnotify-Schnittstelle auf
systemweiter Basis zu aktivieren oder zu deaktivieren. Ein Wert von 0 in dieser Datei deaktiviert
die Schnittstelle, ein Wert von 1 aktiviert sie.
/proc/sys/fs/dquot-max
Diese Datei zeigt die maximale Anzahl von zwischengespeicherten Quota-Einträgen für die
Festplatte. Auf einigen (2.4)-Systemen ist sie nicht vorhanden. Wenn die Anzahl der freien
Festplatten-Quota-Einträge im Cache sehr klein ist und Sie haben eine außergewöhnliche Anzahl
gleichzeitiger Systembenutzer, möchten Sie vielleicht diesen Grenzwert erhöhen.
/proc/sys/fs/dquot-nr
Diese Datei zeigt die Anzahl zugewiesener und die Anzahl freier Disk-Quota-Einträge.
/proc/sys/fs/epoll (seit Linux 2.6.28)
Dieses Verzeichnis enthält die Datei max_user_watches, mit der der insgesamt von der
epoll-Schnittstelle beanspruchte Kernel-Speicher begrenzt werden kann. Weitere Einzelheiten finden
Sie in epoll(7).
/proc/sys/fs/file-max
This file defines a system-wide limit on the number of open files for all processes. System calls
that fail when encountering this limit fail with the error ENFILE. (See also setrlimit(2), which
can be used by a process to set the per-process limit, RLIMIT_NOFILE, on the number of files it
may open.) If you get lots of error messages in the kernel log about running out of file handles
(look for "VFS: file-max limit <number> reached"), try increasing this value:
echo 100000 > /proc/sys/fs/file-max
Ein privilegierter Prozess (CAP_SYS_ADMIN) kann die Begrenzung file-max außer Kraft setzen.
/proc/sys/fs/file-nr
This (read-only) file contains three numbers: the number of allocated file handles (i.e., the
number of files presently opened); the number of free file handles; and the maximum number of file
handles (i.e., the same value as /proc/sys/fs/file-max). If the number of allocated file handles
is close to the maximum, you should consider increasing the maximum. Before Linux 2.6, the kernel
allocated file handles dynamically, but it didn't free them again. Instead the free file handles
were kept in a list for reallocation; the "free file handles" value indicates the size of that
list. A large number of free file handles indicates that there was a past peak in the usage of
open file handles. Since Linux 2.6, the kernel does deallocate freed file handles, and the "free
file handles" value is always zero.
/proc/sys/fs/inode-max (nur vorhanden bis Linux 2.2)
Diese Datei enthält die maximale Anzahl von im Speicher befindlichen Inodes. Dieser Wert sollte
drei- bis viermal größer sein als der Wert von file-max, weil auch die Bearbeitung von stdin,
stdout und Netzwerk-Sockets einen Inode erfordert. Wenn Ihnen regelmäßig die Inodes knapp werden,
müssen Sie diesen Wert erhöhen.
Beginnend mit Linux 2.4 gibt es keine statische Begrenzung der Anzahl der Inodes mehr und diese
Datei wurde entfernt.
/proc/sys/fs/inode-nr
Diese Datei enthält die ersten zwei Werte von inode-state.
/proc/sys/fs/inode-state
This file contains seven numbers: nr_inodes, nr_free_inodes, preshrink, and four dummy values
(always zero).
nr_inodes is the number of inodes the system has allocated. nr_free_inodes represents the number
of free inodes.
preshrink is nonzero when the nr_inodes > inode-max and the system needs to prune the inode list
instead of allocating more; since Linux 2.4, this field is a dummy value (always zero).
/proc/sys/fs/inotify (seit Linux 2.6.13)
Dieses Verzeichnis enthält die Dateien max_queued_events, max_user_instances, und
max_user_watches, mit denen der Verbrauch von Kernel-Speicher durch die inotify-Schnittstelle
begrenzt werden kann. Weitere Einzelheiten finden Sie in inotify(7).
/proc/sys/fs/lease-break-time
Diese Datei legt die Gnadenfrist fest, die der Kernel einem Prozess gewährt, der über einen »file
lease« (fcntl(2)) verfügt, nachdem der Kernel dem Prozess signalisiert hat, das ein anderer
Prozess die Datei öffnen will. Wenn der Prozess innerhalb dieser Frist den Lease nicht entfernt
oder herabstuft, wird der Kernel das Lease zwangsweise zurückziehen.
/proc/sys/fs/leases-enable
Mit dieser Datei können »file leases« (fcntl(2)) systemweit aktiviert oder deaktiviert werden.
Wenn diese Datei den Wert 0 enthällt, werden Leases deaktiviert. Ein Wert ungleich null aktiviert
leases.
/proc/sys/fs/mqueue (seit Linux 2.6.6)
Dieses Verzeichnis enthält die Dateien msg_max, msgsize_max und queues_max, die den
Ressourcenverbrauch von POSIX-Meldungswarteschlangen steuern. mq_overview(7) gibt weitere
Informationen.
/proc/sys/fs/nr_open (seit Linux 2.6.25)
This file imposes ceiling on the value to which the RLIMIT_NOFILE resource limit can be raised
(see getrlimit(2)). This ceiling is enforced for both unprivileged and privileged process. The
default value in this file is 1048576. (Before Linux 2.6.25, the ceiling for RLIMIT_NOFILE was
hard-coded to the same value.)
/proc/sys/fs/overflowgid und /proc/sys/fs/overflowuid
Diese Dateien ermöglichen Ihnen, die festen Maximalwerte für UID und GID zu ändern. Der
Vorgabewert ist 65534. Einige Dateisysteme unterstützen nur 16-Bit-UIDs und -GIDs, obwohl in Linux
UIDs und GIDs 32 Bit lang sind. Wenn eines dieser Dateisysteme schreibbar eingehängt wird, würden
alle UIDs oder GIDs, die 65535 überschreiten würden, vor dem Schreiben auf die Platte in ihren
Überlaufwert übersetzt werden.
/proc/sys/fs/pipe-max-size (seit Linux 2.6.35)
Der Wert in dieser Datei definiert eine obere Grenze für die Anhebung der Kapazität einer Pipeline
mit der fcntl(2)-Operation F_SETPIPE_SZ Betrieb. Diese Grenze gilt nur für nicht privilegierte
Prozesse. Der Standardwert für diese Datei ist 1.048.576. Der an dieser Datei zugewiesene Wert
kann nach oben gerundet werden, um den tatsächlich für eine bequeme Implementierung genutzten Wert
zu reflektieren. Um den aufgerundeten Wert zu bestimmen, geben Sie den Inhalt dieser Datei aus,
nachdem Sie ihr einen Wert zugewiesen haben. Der kleinste Wert, der dieser Datei zugeordnet werden
kann, ist die Seitengröße des Systems.
/proc/sys/fs/protected_hardlinks (seit Linux 3.6)
When the value in this file is 0, no restrictions are placed on the creation of hard links (i.e.,
this is the historical behavior before Linux 3.6). When the value in this file is 1, a hard link
can be created to a target file only if one of the following conditions is true:
* Der Aufrufende hat die Capability CAP_FOWNER.
* The filesystem UID of the process creating the link matches the owner (UID) of the target file
(as described in credentials(7), a process's filesystem UID is normally the same as its
effective UID).
* Alle der folgenden Bedingungen sind wahr:
• das Ziel ist eine reguläre Datei;
• the target file does not have its set-user-ID mode bit enabled;
• the target file does not have both its set-group-ID and group-executable mode bits enabled;
and
• the caller has permission to read and write the target file (either via the file's
permissions mask or because it has suitable capabilities).
The default value in this file is 0. Setting the value to 1 prevents a longstanding class of
security issues caused by hard-link-based time-of-check, time-of-use races, most commonly seen in
world-writable directories such as /tmp. The common method of exploiting this flaw is to cross
privilege boundaries when following a given hard link (i.e., a root process follows a hard link
created by another user). Additionally, on systems without separated partitions, this stops
unauthorized users from "pinning" vulnerable set-user-ID and set-group-ID files against being
upgraded by the administrator, or linking to special files.
/proc/sys/fs/protected_symlinks (seit Linux 3.6)
When the value in this file is 0, no restrictions are placed on following symbolic links (i.e.,
this is the historical behavior before Linux 3.6). When the value in this file is 1, symbolic
links are followed only in the following circumstances:
* the filesystem UID of the process following the link matches the owner (UID) of the symbolic
link (as described in credentials(7), a process's filesystem UID is normally the same as its
effective UID);
* the link is not in a sticky world-writable directory; or
* the symbolic link and its parent directory have the same owner (UID)
A system call that fails to follow a symbolic link because of the above restrictions returns the
error EACCES in errno.
The default value in this file is 0. Setting the value to 1 avoids a longstanding class of
security issues based on time-of-check, time-of-use races when accessing symbolic links.
/proc/sys/fs/suid_dumpable (seit Linux 2.6.13)
The value in this file is assigned to a process's "dumpable" flag in the circumstances described
in prctl(2). In effect, the value in this file determines whether core dump files are produced for
set-user-ID or otherwise protected/tainted binaries. Three different integer values can be
specified:
0 (Standard)
0 (Standard) Das bewirkt das traditionelle Verhalten (vor Linux 2.6.13). Ein Core-Dump wird
nicht erzeugt für Prozesse, die ihre Identität änderten (durch Aufruf von seteuid(2),
setgid(2) oder ähnliches oder durch das Ausführen eines set-user-ID oder
set-group-ID-Programms) oder deren Binärprogramm nicht die Leseberechtigung aktiviert hat.
1 (»debug«)
Alle Prozesse geben einen Core-Dump aus, wenn möglich. Der Core-Dump trägt die
Benutzer-Kennung (UID) des erzeugenden Prozess, es gibt keine Sicherheitsprüfungen. Dies
ist nur für die Fehlersuche im System gedacht. Ptrace ist deaktiviert.
2 (»suidsafe«)
2 (»suidsafe«) Für alle Programme, für die normalerweise kein Dump erzeugt würde (siehe »0«
oben), wird ein nur für root lesbarer Dump erzeugt. Dadurch kann der Benutzer die
Core-Dump-Datei entfernen, sie aber nicht lesen. Aus Sicherheitsgründen überschreiben
Core-Dumps in diesem Modus keine anderen Dumps oder Dateien. Dieser Modus eignet sich, wenn
Administratoeren Probleme in einer normalen Umgebung untersuchen.
Additionally, since Linux 3.6, /proc/sys/kernel/core_pattern must either be an absolute
pathname or a pipe command, as detailed in core(5). Warnings will be written to the kernel
log if core_pattern does not follow these rules, and no core dump will be produced.
/proc/sys/fs/super-max
Diese Datei steuert die maximale Anzahl der Superblocks und damit die maximale Anzahl von
Dateisystemen, die der Kernel einhängen kann. Sie müssen nur super-max erhöhen, wenn Sie mehr
Dateisysteme einhängen müssen, als der aktuelle Wert in super-max zulässt.
/proc/sys/fs/super-nr
Diese Datei enthält die Anzahl aktuell eingehängter Dateisysteme.
/proc/sys/kernel
Diese Date enthält Dateien, die eine Reihe von Kernel-Parametern steuern, wie es im Folgenden
beschrieben wird.
/proc/sys/kernel/acct
Diese Datei enthält drei Zahlen: highwater, lowwater und frequency. Wenn BSD-Prozessabrechnung
(accounting) aktiviert ist, steuern diese Werte ihr Verhalten. Wenn der freie Platz auf dem
Dateisystem mit der Protokolldatei unter lowwater Percent sinkt, wird die Abrechnung ausgesetzt.
Wenn der freie Platz über highwater steigt, wird die Abrechnung fortgesetzt. frequency (Wert in
Sekunden) legt fest, wie oft der Kernel die Größe des freien Speichers prüft. Standardwerte sind
4, 2 und 30: Die Abrechnung wird unter 2% freiem Speicher ausgesetzt, über 4% fortgesetzt und alle
30 Sekunden der freie Speicher überprüft.
/proc/sys/kernel/auto_msgmni (Linux 2.6.27 bis 3.18)
From Linux 2.6.27 to 3.18, this file was used to control recomputing of the value in
/proc/sys/kernel/msgmni upon the addition or removal of memory or upon IPC namespace
creation/removal. Echoing "1" into this file enabled msgmni automatic recomputing (and triggered a
recomputation of msgmni based on the current amount of available memory and number of IPC
namespaces). Echoing "0" disabled automatic recomputing. (Automatic recomputing was also disabled
if a value was explicitly assigned to /proc/sys/kernel/msgmni.) The default value in auto_msgmni
was 1.
Since Linux 3.19, the content of this file has no effect (because msgmni defaults to near the
maximum value possible), and reads from this file always return the value "0".
/proc/sys/kernel/cap_last_cap (seit Linux 3.2)
siehe capabilities(7).
/proc/sys/kernel/cap-bound (von Linux 2.2 bis 2.6.24)
Diese Datei enthält den Wert der Kernel-Capability-Begrenzungsmenge (ausgedrückt als
vorzeichenbehaftete Dezimalzahl). Dieser Satz wird logisch UND-verknüpft mit den Capabilities, die
während execve(2) bestanden. Beginnend mit Linux 2.6.25 verschwand dieser Wert und wurde durch
seine prozess-spezifische Variante ersetzt; siehe capabilities(7).
/proc/sys/kernel/core_pattern
siehe core(5)
/proc/sys/kernel/core_uses_pid
siehe core(5)
/proc/sys/kernel/ctrl-alt-del
Diese Datei steuert den Umgang mit Strg-Alt-Entf von der Tastatur. Wenn der Wert in dieser Datei 0
ist, wird Strg-Alt-Entf abgefangen und an das init(1)-Programm weitergeleitet, um einen
ordnungsgemäßen Neustart auszulösen. Wenn der Wert größer als Null ist, wird Linux' Reaktion auf
einen vulkanischen Nervengriff™ ein sofortiger Neustart sein, ohne auch nur seine schmutzige
Puffer zu synchronisieren. Anmerkung: wenn ein Programm (wie dosemu) die Tastatur im »raw«-Modus
betreibt, wird das Strg-Alt-Entf durch das Programm abgefangen, bevor es die Kernel-TTY-Schicht
erreicht. Das Programm muss entscheiden, wie es damit umgeht.
/proc/sys/kernel/dmesg_restrict (seit Linux 2.6.37)
The value in this file determines who can see kernel syslog contents. A value of 0 in this file
imposes no restrictions. If the value is 1, only privileged users can read the kernel syslog. (See
syslog(2) for more details.) Since Linux 3.4, only users with the CAP_SYS_ADMIN capability may
change the value in this file.
/proc/sys/kernel/domainname und /proc/sys/kernel/hostname
können benutzt werden, um den NIS/YP-Domainnamen und den Namen Ihres Systems auf genau dieselbe
Weise wie mit den Befehlen domainname(1) und hostname(1) zu setzen. Also hat
# echo 'darkstar' > /proc/sys/kernel/hostname
# echo 'meineDomain' > /proc/sys/kernel/domainname
den gleichen Effekt wie
# hostname 'darkstar'
# domainname 'meineDomain'
Beachten Sie jedoch, dass der klassische darkstar.frop.org hat den Rechnernamen »darkstar« und den
DNS-Domainnamen (Internet Domain Name Server) »frop.org«, der nicht mit den Domainnamen von NIS
(Network Information Service) oder YP (Gelbe Seiten) verwechselt werden dürfen.. Diese beiden
Domainnamen sind in der Regel anders aus. Für eine ausführliche Diskussion siehe die Handbuchseite
hostname(1).
/proc/sys/kernel/hotplug
Diese Datei enthält den Pfad für das Programm zur Umsetzung der »Hotplug«-Richtlinie. Der
Standardwert in dieser Datei ist /sbin/hotplug.
/proc/sys/kernel/htab-reclaim
(nur PowerPC) Wenn diese Datei auf einen Wert ungleich Null gesetzt ist, wird die »PowerPC htab«
(siehe Kernel-Datei Documentation/powerpc/ppc_htab.txt) jedesmal »zurückgeschnitten«, wenn das
System in den Leerlauf geht.
/proc/sys/kernel/kptr_restrict (seit Linux 2.6.38)
The value in this file determines whether kernel addresses are exposed via /proc files and other
interfaces. A value of 0 in this file imposes no restrictions. If the value is 1, kernel pointers
printed using the %pK format specifier will be replaced with zeros unless the user has the
CAP_SYSLOG capability. If the value is 2, kernel pointers printed using the %pK format specifier
will be replaced with zeros regardless of the user's capabilities. The initial default value for
this file was 1, but the default was changed to 0 in Linux 2.6.39. Since Linux 3.4, only users
with the CAP_SYS_ADMIN capability can change the value in this file.
/proc/sys/kernel/l2cr
(nur PowerPC) Diese Datei enthält einen Schalter für die Steuerung des L2-Caches von Platinen mit
dem G3-Prozessor. Der Wert 0 deaktiviert den Cache, ein Wert ungleich null aktiviert ihn.
/proc/sys/kernel/modprobe
Diese Datei enthält den Pfad zum Programm, dass die Kernel-Module lädt, standardmäßig
/sbin/modprobe. Diese Datei existiert nur, falls die Kernel-Option CONFIG_MODULES (CONFIG_KMOD in
Linux 2.6.26 und älter) aktiviert ist. Diese wird in der Linux-Kernel-Quelldatei
Documentation/kmod.txt beschrieben (nur in Kernel 2.4 und älter).
/proc/sys/kernel/modules_disabled (seit Linux 2.6.31)
A toggle value indicating if modules are allowed to be loaded in an otherwise modular kernel. This
toggle defaults to off (0), but can be set true (1). Once true, modules can be neither loaded nor
unloaded, and the toggle cannot be set back to false. The file is present only if the kernel is
built with the CONFIG_MODULES option enabled.
/proc/sys/kernel/msgmax (seit Linux 2.2)
Diese Datei enthält eine systemweite Begrenzung der Maximalzahl von Bytes, die eine einzelne
Nachricht in einer System-V-Nachrichtenschlange enthalten darf.
/proc/sys/kernel/msgmni (seit Linux 2.4)
Diese Datei legt die systemweite Grenze für die Anzahl der Nachrichtenschlangen-Bezeichner fest.
Siehe auch /proc/sys/kernel/auto_msgmni.
/proc/sys/kernel/msgmnb (seit Linux 2.2)
Diese Datei definiert einen systemweiten Parameter für die Initialisierung der Einstellung
msg_qbytes für nachfolgend erstellte Nachrichtenschlangen. msg_qbytes legt fest, wie viele Bytes
maximal in eine Nachrichtenschlange geschrieben werden dürfen.
/proc/sys/kernel/ngroups_max (seit Linux 2.6.4)
Dies ist eine nur lesbare Datei, die die obere Grenze für die Anzahl der Gruppenmitgliedschaften
eines Prozesses anzeigt.
/proc/sys/kernel/ostype und /proc/sys/kernel/osrelease
Diese Dateien enthalten Teilzeichenketten von /proc/version.
/proc/sys/kernel/overflowgid und /proc/sys/kernel/overflowuid
Diese Dateien duplizieren die Dateien /proc/sys/fs/overflowgid und /proc/sys/fs/overflowuid.
/proc/sys/kernel/panic
Diese Datei ermöglicht Lese- und Schreib-Zugriff auf die Kernel-Variable panic_timeout. Steht hier
eine 0, dann bleibt der Kernel in einer Panic-Schleife; ungleich 0 bedeutet, dass der Kernel nach
dieser Anzahl Sekunden automatisch das System wieder hochfahren soll. Wenn Sie die
Laufzeitüberwachungs-Gerätetreiber (software watchdog device driver) nutzen, ist der empfohlene
Wert 60.
/proc/sys/kernel/panic_on_oops (seit Linux 2.5.68)
Diese Datei steuert das Verhalten des Kernels, wenn ein Problem (oops) oder ein Fehler aufgetreten
ist. Falls diese Datei den Wert 0 enthält, versucht das System eine Fortsetzung des Betriebs.
Falls sie 1 enthält, gibt das System klogd ein paar Sekunden Zeit für die Protokollierung des
Problems und verfällt dann in die »kernel panic«. Wenn in der Datei/proc/sys/kernel/panic ein Wert
ungleich Null steht, wird der Rechner neu gestartet.
/proc/sys/kernel/pid_max (seit Linux 2.5.34)
This file specifies the value at which PIDs wrap around (i.e., the value in this file is one
greater than the maximum PID). PIDs greater than this value are not allocated; thus, the value in
this file also acts as a system-wide limit on the total number of processes and threads. The
default value for this file, 32768, results in the same range of PIDs as on earlier kernels. On
32-bit platforms, 32768 is the maximum value for pid_max. On 64-bit systems, pid_max can be set to
any value up to 2^22 (PID_MAX_LIMIT, approximately 4 million).
/proc/sys/kernel/powersave-nap (nur PowerPC)
Diese Datei enthält einen Schalter zur Steuerung von Linux-PPC. Ist er betätigt, wird Linux-PPC
den »nap«-Energiesparmodus verwenden, ansonsten wird es der »doze«-Modus sein.
/proc/sys/kernel/printk
siehe syslog(2)
/proc/sys/kernel/pty (seit Linux 2.6.4)
Dieses Verzeichnis enthält zwei Dateien mit Bezug zu den Unix-98-Pseudoterminals (siehe pts(4))
des Systems.
/proc/sys/kernel/pty/max
Diese Datei definiert die Maximalzahl von Pseudoterminals.
/proc/sys/kernel/pty/nr
Diese (nur lesbare) Datei gibt die Anzahl der derzeit im System genutzten Pseudoterminals an
/proc/sys/kernel/random
Dieses Verzeichnis enthält verschiedene Parameter, um das Verhalten der Datei /dev/random zu
steuern. random(4) gibt weitere Informationen.
/proc/sys/kernel/random/uuid (seit Linux 2.4)
Jeder Lesevorgang aus dieser nur-lesbaren Datei liefert eine zufällig generierte 128-Bit UID als
Zeichenkette, die im Standard-UID-Format ist, zurück.
/proc/sys/kernel/randomize_va_space (seit Linux 2.6.12)
Select the address space layout randomization (ASLR) policy for the system (on architectures that
support ASLR). Three values are supported for this file:
0 Turn ASLR off. This is the default for architectures that don't support ASLR, and when the
kernel is booted with the norandmaps parameter.
1 Make the addresses of mmap(2) allocations, the stack, and the VDSO page randomized. Among
other things, this means that shared libraries will be loaded at randomized addresses. The text
segment of PIE-linked binaries will also be loaded at a randomized address. This value is the
default if the kernel was configured with CONFIG_COMPAT_BRK.
2 (Since Linux 2.6.25) Also support heap randomization. This value is the default if the kernel
was not configured with CONFIG_COMPAT_BRK.
/proc/sys/kernel/real-root-dev
Diese Datei wird in der Linux-Kernel-Quelldatei Documentation/initrd.txt beschrieben.
/proc/sys/kernel/reboot-cmd (nur Sparc)
Diese Datei scheint ein eine Möglichkeit zu sein, ein Argument an den SPARC-ROM/Flash-Bootloader
zu übergeben. Vielleicht kann man ihm Anweisungen für die Zeit nach dem Neustart geben?
/proc/sys/kernel/rtsig-max
(Nur in Kerneln bis einschließlich 2.6.7; siehe setrlimit(2)). Mit dieser Datei kann die maximale
Anzahl (anstehender) von POSIX-Echtzeit-Signalen eingestellt werden, die im System anstehen
dürfen.
/proc/sys/kernel/rtsig-nr
(Nur in Kerneln bis einschließlich 2.6.7). Diese Datei gibt die Anzahl derzeit anstehender
POSIX-Echtzeitsignale an.
/proc/sys/kernel/sched_rr_timeslice_ms (seit Linux 3.9)
Siehe sched_rr_get_interval(2).
/proc/sys/kernel/sched_rt_period_us (seit Linux 2.6.25)
siehe sched(7)
/proc/sys/kernel/sched_rt_runtime_us (seit Linux 2.6.25)
siehe sched(7)
/proc/sys/kernel/sem (since Linux 2.4)
Diese Datei enthält vier Zahlen, die Grenzen für System-V-IPC-Semaphore definieren. Der Reihe nach
sind das:
SEMMSL die maximale Anzahl von Semaphoren pro Satz von Semaphoren
SEMMNS eine systemweite Begrenzung für die Anzahl in allen Semaphoren-Sätzen
SEMOPM die maximale Anzahl von Operationen, die in einem Aufruf von semop(2) festgelegt werden
dürfen
SEMMNI eine systemweite Grenze für die maximale Anzahl von Bezeichnern für Semaphore.
/proc/sys/kernel/sg-big-buff
Diese Datei gibt die Größe der generischen Puffer für SCSI-Geräte an. Sie können den Wert derzeit
nicht optimieren, aber bei der Kompilierung optimieren, indem Sie include/scsi/sg.h bearbeiten und
den Wert SG_BIG_BUFF anpassen. Es sollte aber keinen Grund geben, diesen Wert zu ändern.
/proc/sys/kernel/shm_rmid_forced (seit Linux 3.1)
If this file is set to 1, all System V shared memory segments will be marked for destruction as
soon as the number of attached processes falls to zero; in other words, it is no longer possible
to create shared memory segments that exist independently of any attached process.
The effect is as though a shmctl(2) IPC_RMID is performed on all existing segments as well as all
segments created in the future (until this file is reset to 0). Note that existing segments that
are attached to no process will be immediately destroyed when this file is set to 1. Setting this
option will also destroy segments that were created, but never attached, upon termination of the
process that created the segment with shmget(2).
Setting this file to 1 provides a way of ensuring that all System V shared memory segments are
counted against the resource usage and resource limits (see the description of RLIMIT_AS in
getrlimit(2)) of at least one process.
Because setting this file to 1 produces behavior that is nonstandard and could also break existing
applications, the default value in this file is 0. Only set this file to 1 if you have a good
understanding of the semantics of the applications using System V shared memory on your system.
/proc/sys/kernel/shmall (seit Linux 2.2)
Diese Datei enthält die systemweite Grenze für die Gesamtzahl der Seiten im »System V shared
memory«.
/proc/sys/kernel/shmmax (seit Linux 2.2)
Diese Datei kann genutzt werden, um die Laufzeitbeschränkung für die maximale Größe (System V IPC)
für gemeinsame Speichersegmente festzulegen. Jetzt werden im Kernel gemeinsame Speichersegmente
bis zu 1GB unterstützt. Dieser Wert ist per Vorgabe SHMMAX.
/proc/sys/kernel/shmmni (seit Linux 2.4)
Diese Datei spezifiert die systemweite maximale Anzahl von gemeinsam genutzten
System-V-Speichersegmenten, die erzeugt werden können.
/proc/sys/kernel/sysctl_writes_strict (seit Linux 3.16)
The value in this file determines how the file offset affects the behavior of updating entries in
files under /proc/sys. The file has three possible values:
-1 This provides legacy handling, with no printk warnings. Each write(2) must fully contain the
value to be written, and multiple writes on the same file descriptor will overwrite the entire
value, regardless of the file position.
0 (default) This provides the same behavior as for -1, but printk warnings are written for
processes that perform writes when the file offset is not 0.
1 Respect the file offset when writing strings into /proc/sys files. Multiple writes will append
to the value buffer. Anything written beyond the maximum length of the value buffer will be
ignored. Writes to numeric /proc/sys entries must always be at file offset 0 and the value
must be fully contained in the buffer provided to write(2).
/proc/sys/kernel/sysrq
Diese Datei steuert, welche Funktionen von dem SysRq-Schlüssel aufgerufen werden. Standardmäßig
enthält die Datei den Wert 1. Das bedeutet, dass jede mögliche SysRq-Anfrage möglich ist. (In
älteren Kernel-Versionen wurde SysRq standardmäßig deaktiviert und Sie mussten SysRq gesondert zur
Laufzeit aktivieren, aber das ist nicht mehr der notwendig). Mögliche Werte in dieser Datei sind:
0 Disable sysrq completely
1 Enable all functions of sysrq
> 1 Bit mask of allowed sysrq functions, as follows:
2 Enable control of console logging level
4 Enable control of keyboard (SAK, unraw)
8 Enable debugging dumps of processes etc.
16 aktiviert den Befehl »sync«
32 Enable remount read-only
64 Enable signaling of processes (term, kill, oom-kill)
128 Allow reboot/poweroff
256 Allow nicing of all real-time tasks
Diese Datei ist nur vorhanden, wenn die Kernel-Konfigurationsoption CONFIG_MAGIC_SYSRQ aktiviert
wird. Für weitere Einzelheiten lesen Sie die Linux-Kernel-Quelltextdatei Documentation/sysrq.txt.
/proc/sys/kernel/version
Diese Datei enthält eine Zeichenkette wie beispielsweise:
#5 Wed Feb 25 21:49:24 MET 1998
Die »#5« besagt, das dies der fünfte aus diesem Quelltext erstellte Kernel ist. Das anschließende
Datum gibt an, wann der Kernel erstellt wurde.
/proc/sys/kernel/threads-max (seit Linux 2.3.11)
Diese Datei legt die systemweite Begrenzung für die Gesamtzahl der Threads (Tasks) fest, die
erstellt werden dürfen.
Since Linux 4.1, the value that can be written to threads-max is bounded. The minimum value that
can be written is 20. The maximum value that can be written is given by the constant
FUTEX_TID_MASK (0x3fffffff). If a value outside of this range is written to threads-max, the error
EINVAL occurs.
The value written is checked against the available RAM pages. If the thread structures would
occupy too much (more than 1/8th) of the available RAM pages, threads-max is reduced accordingly.
/proc/sys/kernel/yama/ptrace_scope (seit Linux 3.5)
siehe ptrace(2).
/proc/sys/kernel/zero-paged (nur PowerPC)
Die Datei enthält einen Schalter. Ist er aktiviert (ungleich 0), wird Linux-PPC vorbeugend Seiten
im Leerlauf auf Null setzen und beschleunigt möglicherweise get_free_pages.
/proc/sys/net
Dieses Verzeichnis enthält Netzwerkkrams. Erkärungen für einige der Dateien in diesem Verzeichnis
finden Sie in tcp(7) and ip(7).
/proc/sys/net/core/bpf_jit_enable
Siehe bpf(2).
/proc/sys/net/core/somaxconn
Diese Datei enthält eine obere Grenze für das backlog-Argument von listen(2); siehe die
Handbuchseite von listen(2) für Einzelheiten.
/proc/sys/proc
Dieses Verzeichnis kann leer sein.
/proc/sys/sunrpc
Dieses Verzeichnis unterstützt Suns »remote procedure call« (rpc(3)) für das Netzwerkdateisystem
(NFS). Auf manchen Systemen fehlt es.
/proc/sys/vm
Dieses Verzeichnis enthält Dateien für die Optimierung der Speicherverwaltung und die Verwaltung
der Puffer und Caches (Zwischenspeicher).
/proc/sys/vm/compact_memory (seit Linux 2.6.35)
When 1 is written to this file, all zones are compacted such that free memory is available in
contiguous blocks where possible. The effect of this action can be seen by examining
/proc/buddyinfo.
Nur vorhanden, falls der Kernel mit CONFIG_COMPACTION konfiguriert wurde.
/proc/sys/vm/drop_caches (seit Linux 2.6.16)
Writing to this file causes the kernel to drop clean caches, dentries, and inodes from memory,
causing that memory to become free. This can be useful for memory management testing and
performing reproducible filesystem benchmarks. Because writing to this file causes the benefits of
caching to be lost, it can degrade overall system performance.
To free pagecache, use:
echo 1 > /proc/sys/vm/drop_caches
To free dentries and inodes, use:
echo 2 > /proc/sys/vm/drop_caches
To free pagecache, dentries and inodes, use:
echo 3 > /proc/sys/vm/drop_caches
Because writing to this file is a nondestructive operation and dirty objects are not freeable, the
user should run sync(1) first.
/proc/sys/vm/legacy_va_layout (seit Linux 2.6.9)
Wenn ungleich Null, deaktiviert dies das neue 32-Bit-Layout für das »Memory Mapping«, der Kernel
wird das alte (2.4) Layout für alle Prozesse anwenden.
/proc/sys/vm/memory_failure_early_kill (seit Linux 2.6.32)
Steuert, wie Prozesse beendet werden, wenn ein nicht korrigierter Speicherfehler (in der Regel ein
2-Bit-Fehler in einem Speichermodul), den der Kernel nicht bearbeiten kann, im Hintergrund durch
die Hardware erkannt wird. In einigen Fällen (wenn es von der Seite noch eine gültige Kopie auf
der Festplatte gibt), wird der Kernel den Fehler behandeln, ohne alle Anwendungen zu
beeinträchtigen. Aber wenn es keine weitere aktuelle Kopie der Daten gibt, wird er Prozesse
abbrechen, um die Verbreitung korrumpierter Daten zu unterbinden.
Die Datei hat einen der folgenden Werte:
1: Bricht alle Prozesse ab, in deren Speicher die beschädigte und nicht erneut ladbare Seite
eingeblendet ist, sobald der Fehler erkannt wird. Beachten Sie, dass dies nicht für ein einige
spezielle Seiten wie kernel-intern zugewiesene Daten oder der Swap-Zwischenspeicher
unterstützt wird, es funktioniert aber für die Mehrheit der Anwenderseiten.
0: Nur die beschädigte Seite aus allen Prozesse ausblenden und nur Prozesse töten, die darauf
zugreifen wollen.
Der Abbruch wird mittels eines SIGBUS-Signals erledigt, bei dem der si_code auf BUS_MCEERR_AO
gesetzt wird. Prozesse können darauf reagieren, wenn sie wollen; siehesigaction(2) für weitere
Einzelheiten.
Diese Möglichkeit ist nur auf Archtitekturen/Plattformen aktiv, die über eine ausgefeilte
Handhabung von »machine checks« verfügen und hängt von den Fähigkeiten der Hardware ab.
Anwendungen können die Einstellung memory_failure_early_kill individuell mit der
prctl(2)-Operation PR_MCE_KILL außer Kraft setzen.
Nur vorhanden, falls der Kernel mit CONFIG_MEMORY_FAILURE konfiguriert wurde.
/proc/sys/vm/memory_failure_recovery (seit Linux 2.6.32)
Aktiviert die Behebung von Speicherfehlern (wenn das von der Plattform unterstützt wird).
1: Fehlerbehebung versuchen.
0: Bei Speicherfehlern immer eine Kernel Panic auslösen.
Nur vorhanden, falls der Kernel mit CONFIG_MEMORY_FAILURE konfiguriert wurde.
/proc/sys/vm/oom_dump_tasks (seit Linux 2.6.25)
Ermöglicht eine systemweiten Dump der Tasks (ohne Kernel-Threads), wenn der Kernel bei
Speicherknappheit Prozesse abbricht (OOM-killing). Der Dump enthält die folgenden Informationen
für jede Task (Thread, Prozess): Thread-ID, reale Benutzer-ID, Thread-Gruppen-ID (Prozess-ID),
Größe des virtuellen Speichers, Größe des Resident Set, die CPU, auf der die Task laufen soll, die
oom_adj-Bewertung (siehe die Beschreibung von /proc/[PID]/oom_adj) und der Name des Befehls. Dies
ist hilfreich, um festzustellen, warum der OOM-Killer ausgeschickt wurde und um die schurkische
Task zu identifizieren.
Ist der Wert in der Datei Null, wird diese Information unterdrückt. Auf sehr großen Systemen mit
Tausenden von Tasks wird es kaum praktikabel sein, für alle Tasks den Speicherstatus auszugeben.
Solche Systeme sollten nicht gezwungen werden, bei Speicherknappheit Leistungseinbußen zu
erleiden, wenn die Informationen nicht gewünscht werden.
Ist der Wert von Null verschieden, werden diese Informationen jedesmal ausgegeben, wenn der
OOM-Killer ein speichergierige Task ins Jenseits schickt.
Der Standardwert ist 0.
/proc/sys/vm/oom_kill_allocating_task (seit Linux 2.6.24)
Dies aktiviert oder deaktiviert bei Speicherknappheit die OOM-auslösende Task.
Ist der Wert null, wertet der OOM-Killer die gesamte Taskliste aus und wählt heuristisch eine Task
als Opfer aus. Normalerweise wählt er einen speichergierigen Schurken aus, dessen Tod sehr viel
Speicher freigibt.
Ist der Wert ungleich Null, beseitigt der OOM-Killer die Task, die die Speicherknappheit auslöste.
Dadurch wird eine möglicherweise aufwändige Analyse der Taskliste vermieden.
Falls /proc/sys/vm/panic_on_oom von null verschieden ist, hat das Vorrang vor dem Wert in
/proc/sys/vm/oom_kill_allocating_task, was auch immer darin steht.
Der Standardwert ist 0.
/proc/sys/vm/overcommit_kbytes (seit Linux 3.14)
This writable file provides an alternative to /proc/sys/vm/overcommit_ratio for controlling the
CommitLimit when /proc/sys/vm/overcommit_memory has the value 2. It allows the amount of memory
overcommitting to be specified as an absolute value (in kB), rather than as a percentage, as is
done with overcommit_ratio. This allows for finer-grained control of CommitLimit on systems with
extremely large memory sizes.
Only one of overcommit_kbytes or overcommit_ratio can have an effect: if overcommit_kbytes has a
nonzero value, then it is used to calculate CommitLimit, otherwise overcommit_ratio is used.
Writing a value to either of these files causes the value in the other file to be set to zero.
/proc/sys/vm/overcommit_memory
Diese Datei legt den Abrechnungsmodus des Kernels für virtuellen Speicher fest. Die Werte sind:
0: heuristic overcommit (this is the default)
1: immer Overcommit, niemals prüfen
2: immer prüfen, niemals overcommit
In Modus 0 werden Aufrufe von mmap(2) mit MAP_NORESERVE nicht überprüft. Damit ist die
Standardprüfung sehr schwach und setzt den Prozess dem Risiko aus, zum Opfer des OOM-Killers zu
werden. Unter Linux 2.4 impliziert jeder Wert ungleich null Modus 1.
In Modus 2 (verfügbar seit Linux 2.6) wid der allozierbare gesamte virtuelle Adressraum
(CommitLimit in /proc/meminfo) wie folgt berechnet:
CommitLimit = (total_RAM - total_huge_TLB) *
overcommit_ratio / 100 + total_swap
wobei:
* total_RAM ist der gesamte RAM des Systems
* total_huge_TLB is the amount of memory set aside for huge pages;
* overcommit_ratio ist der Wert aus /proc/sys/vm/overcommit_ratio
* total_swap is the amount of swap space.
For example, on a system with 16GB of physical RAM, 16GB of swap, no space dedicated to huge
pages, and an overcommit_ratio of 50, this formula yields a CommitLimit of 24GB.
Falls der Wert in /proc/sys/vm/overcommit_kbytes von Null verschieden ist, wird CommitLimit
stattdessen seit Linux 3.14 wie folgt berechnet:
CommitLimit = overcommit_kbytes + total_swap
/proc/sys/vm/overcommit_ratio (seit Linux 2.6.0)
This writable file defines a percentage by which memory can be overcommitted. The default value in
the file is 50. See the description of /proc/sys/vm/overcommit_memory.
/proc/sys/vm/panic_on_oom (seit Linux 2.6.18)
Dies aktiviert oder deaktiviert eine Kernel Panic bei Speicherknappheit
Wenn diese Datei auf den Wert 0 gesetzt wird, wird der OOM-Killer des Kernels sich einen Schurken
schnappen und liquidieren. Normalerweise findet er ein geeignetes Opfer und das System überlebt.
Wenn diese Datei auf den Wert 1 gesetzt ist, verfällt der Kernel in Panik, wenn Speicherknappheit
eintritt. Wenn allerdings ein Prozess die Zuweisungen an bestimmte Knoten mit Speicherstrategien
(mbind(2) MPOL_BIND) oder Cpusets (cpuset(7)) begrenzt und die Knoten erreichen einen
Speichererschöpfungs-Zustand, kann ein Prozess vom OOM-Killer getötet werden. In diesem Fall tritt
keine Panik ein: weil der Speicher anderer Knoten noch frei sein kann, muss das System noch nicht
als ganzes unter Speichermangel leiden.
Wenn diese Datei schon auf den Wert 2 gesetzt ist, wird bei Speicherknappheit immer eine Kernel
Panic ausgelöst.
Der Standardwert ist 0. 1 und 2 sind für die Ausfallsicherung in Clustern bestimmt. Wählen Sie den
Wert entsprechend ihrer Strategie oder im Sinn der Ausfallsicherung.
/proc/sys/vm/swappiness
Der Wert in dieser Datei legt fest, wie aggressiv der Kernel Speicherseiten auslagert. Hohe Werte
machen ihn aggressiver, kleinere Werte sanftmütiger. Der Standardwert ist 60.
/proc/sysrq-trigger (seit Linux 2.4.21)
Wird ein Zeichen in diese Datei geschrieben, löst das die gleiche SysRq-Funktion aus wie die
Eingabe von ALT-SysRq-<Zeichen> (siehe die Beschreibung von /proc/sys/kernel/sysrq). Normalerweise
kann nur root in diese Datei schreiben. Weitere Informationen gibt die Linux-Kernel-Quelltextdatei
Documentation/sysrq.txt.
/proc/sysvipc
Dieses Unterverzeichnis enthält die Pseudodateien msg, sem und shm. Diese Dateien listen die
aktuell im System befindlichen System-V-IPC-Objekte (IPC: Interprozess-Kommunikation), also
Nachrichtenschlangen, Semaphore und gemeinsam genutzter Speicher. auf. Sie enthalten ähnliche
Informationen wie die, die mit ipcs(1) erhalten werden können. Diese Zeilen haben Kopfzeilen und
sind zwecks besserer Verständlichkeit formatiert (ein IPC-Objekt pro Zeile). svipc(7) bietet
weiteren Hintergrund zu den von diesen Dateien bereitgestellten Informationen.
/proc/thread-self (seit Linux 3.17)
This directory refers to the thread accessing the /proc filesystem, and is identical to the
/proc/self/task/[tid] directory named by the process thread ID ([tid]) of the same thread.
/proc/timer_list (seit Linux 2.6.21)
This read-only file exposes a list of all currently pending (high-resolution) timers, all
clock-event sources, and their parameters in a human-readable form.
/proc/timer_stats (seit Linux 2.6.21)
This is a debugging facility to make timer (ab)use in a Linux system visible to kernel and
user-space developers. It can be used by kernel and user-space developers to verify that their
code does not make undue use of timers. The goal is to avoid unnecessary wakeups, thereby
optimizing power consumption.
If enabled in the kernel (CONFIG_TIMER_STATS), but not used, it has almost zero runtime overhead
and a relatively small data-structure overhead. Even if collection is enabled at runtime, overhead
is low: all the locking is per-CPU and lookup is hashed.
The /proc/timer_stats file is used both to control sampling facility and to read out the sampled
information.
The timer_stats functionality is inactive on bootup. A sampling period can be started using the
following command:
# echo 1 > /proc/timer_stats
The following command stops a sampling period:
# echo 0 > /proc/timer_stats
Die Statistiken können wie folgt ermittelt werden:
$ cat /proc/timer_stats
While sampling is enabled, each readout from /proc/timer_stats will see newly updated statistics.
Once sampling is disabled, the sampled information is kept until a new sample period is started.
This allows multiple readouts.
Beispielausgabe aus /proc/timer_stats:
$ cat /proc/timer_stats
Timer Stats Version: v0.3
Sample period: 1.764 s
Collection: active
255, 0 swapper/3 hrtimer_start_range_ns (tick_sched_timer)
71, 0 swapper/1 hrtimer_start_range_ns (tick_sched_timer)
58, 0 swapper/0 hrtimer_start_range_ns (tick_sched_timer)
4, 1694 gnome-shell mod_delayed_work_on (delayed_work_timer_fn)
17, 7 rcu_sched rcu_gp_kthread (process_timeout)
...
1, 4911 kworker/u16:0 mod_delayed_work_on (delayed_work_timer_fn)
1D, 2522 kworker/0:0 queue_delayed_work_on (delayed_work_timer_fn)
1029 total events, 583.333 events/sec
Die Ausgabespalten sind wie folgt:
* a count of the number of events, optionally (since Linux 2.6.23) followed by the letter 'D' if
this is a deferrable timer;
* the PID of the process that initialized the timer;
* the name of the process that initialized the timer;
* the function where the timer was initialized; and
* (in parentheses) the callback function that is associated with the timer.
/proc/tty
Unterverzeichnis mit Pseudodateien und -Unterverzeichnissen für tty-Treiber und »line
disciplines«.
/proc/uptime
This file contains two numbers: the uptime of the system (seconds), and the amount of time spent
in idle process (seconds).
/proc/version
Diese Zeichenkette identifiziert den gerade laufenden Kernel. Er fasst die Inhalte von
/proc/sys/kernel/ostype, /proc/sys/kernel/osrelease und /proc/sys/kernel/version zusammen.
Beispielsweise:
Linux version 1.0.9 (quinlan@phaze) #1 Sat May 14 01:51:54 EDT 1994
/proc/vmstat (seit Linux 2.6.0)
This file displays various virtual memory statistics. Each line of this file contains a single
name-value pair, delimited by white space. Some files are present only if the kernel was
configured with suitable options. (In some cases, the options required for particular files have
changed across kernel versions, so they are not listed here. Details can be found by consulting
the kernel source code.) The following fields may be present:
nr_free_pages (seit Linux 2.6.31)
nr_alloc_batch (seit Linux 3.12)
nr_inactive_anon (seit Linux 2.6.28)
nr_active_anon (seit Linux 2.6.28)
nr_inactive_file (seit Linux 2.6.28)
nr_active_file (seit Linux 2.6.28)
nr_unevictable (seit Linux 2.6.28)
nr_mlock (seit Linux 2.6.28)
nr_anon_pages (seit Linux 2.6.18)
nr_mapped (seit Linux 2.6.0)
nr_file_pages (seit Linux 2.6.18)
nr_dirty (seit Linux 2.6.0)
nr_writeback (seit Linux 2.6.0)
nr_slab_reclaimable (seit Linux 2.6.19)
nr_slab_unreclaimable (seit Linux 2.6.19)
nr_page_table_pages (seit Linux 2.6.0)
nr_kernel_stack (seit Linux 2.6.32)
Amount of memory allocated to kernel stacks.
nr_unstable (seit Linux 2.6.0)
nr_bounce (seit Linux 2.6.12)
nr_vmscan_write (seit Linux 2.6.19)
nr_vmscan_immediate_reclaim (seit Linux 3.2)
nr_writeback_temp (seit Linux 2.6.26)
nr_isolated_anon (seit Linux 2.6.32)
nr_isolated_file (seit Linux 2.6.32)
nr_shmem (seit Linux 2.6.32)
Pages used by shmem and tmpfs.
nr_dirtied (seit Linux 2.6.37)
nr_written (seit Linux 2.6.37)
nr_pages_scanned (seit Linux 3.17)
numa_hit (seit Linux 2.6.18)
numa_miss (seit Linux 2.6.18)
numa_foreign (seit Linux 2.6.18)
numa_interleave (seit Linux 2.6.18)
numa_local (seit Linux 2.6.18)
numa_other (seit Linux 2.6.18)
workingset_refault (seit Linux 3.15)
workingset_activate (seit Linux 3.15)
workingset_nodereclaim (seit Linux 3.15)
nr_anon_transparent_hugepages (seit Linux 2.6.38)
nr_free_cma (seit Linux 3.7)
Number of free CMA (Contiguous Memory Allocator) pages.
nr_dirty_threshold (seit Linux 2.6.37)
nr_dirty_background_threshold (seit Linux 2.6.37)
pgpgin (seit Linux 2.6.0)
pgpgout (seit Linux 2.6.0)
pswpin (seit Linux 2.6.0)
pswpout (seit Linux 2.6.0)
pgalloc_dma (seit Linux 2.6.5)
pgalloc_dma32 (seit Linux 2.6.16)
pgalloc_normal (seit Linux 2.6.5)
pgalloc_high (seit Linux 2.6.5)
pgalloc_movable (seit Linux 2.6.23)
pgfree (seit Linux 2.6.0)
pgactivate (seit Linux 2.6.0)
pgdeactivate (seit Linux 2.6.0)
pgfault (seit Linux 2.6.0)
pgmajfault (seit Linux 2.6.0)
pgrefill_dma (seit Linux 2.6.5)
pgrefill_dma32 (seit Linux 2.6.16)
pgrefill_normal (seit Linux 2.6.5)
pgrefill_high (seit Linux 2.6.5)
pgrefill_movable (seit Linux 2.6.23)
pgsteal_kswapd_dma (seit Linux 3.4)
pgsteal_kswapd_dma32 (seit Linux 3.4)
pgsteal_kswapd_normal (seit Linux 3.4)
pgsteal_kswapd_high (seit Linux 3.4)
pgsteal_kswapd_movable (seit Linux 3.4)
pgsteal_direct_dma
pgsteal_direct_dma32 (seit Linux 3.4)
pgsteal_direct_normal (seit Linux 3.4)
pgsteal_direct_high (seit Linux 3.4)
pgsteal_direct_movable (seit Linux 2.6.23)
pgscan_kswapd_dma
pgscan_kswapd_dma32 (seit Linux 2.6.16)
pgscan_kswapd_normal (seit Linux 2.6.5)
pgscan_kswapd_high
pgscan_kswapd_movable (seit Linux 2.6.23)
pgscan_direct_dma
pgscan_direct_dma32 (seit Linux 2.6.16)
pgscan_direct_normal
pgscan_direct_high
pgscan_direct_movable (seit Linux 2.6.23)
pgscan_direct_throttle (seit Linux 3.6)
zone_reclaim_failed (seit Linux 2.6.31)
pginodesteal (seit Linux 2.6.0)
slabs_scanned (seit Linux 2.6.5)
kswapd_inodesteal (seit Linux 2.6.0)
kswapd_low_wmark_hit_quickly (seit 2.6.33)
kswapd_high_wmark_hit_quickly (seit 2.6.33)
pageoutrun (seit Linux 2.6.0)
allocstall (seit Linux 2.6.0)
pgrotated (seit Linux 2.6.0)
drop_pagecache (seit Linux 3.15)
drop_slab (seit Linux 3.15)
numa_pte_updates (seit Linux 3.8)
numa_huge_pte_updates (seit Linux 3.13)
numa_hint_faults (seit Linux 3.8)
numa_hint_faults_local (seit Linux 3.8)
numa_pages_migrated (seit Linux 3.8)
pgmigrate_success (seit Linux 3.8)
pgmigrate_fail (seit Linux 3.8)
compact_migrate_scanned (seit Linux 3.8)
compact_free_scanned (seit Linux 3.8)
compact_isolated (seit Linux 3.8)
compact_stall (seit Linux 2.6.35)
Siehe die Kernel-Quelldatei Documentation/vm/transhuge.txt.
compact_fail (seit Linux 2.6.35)
Siehe die Kernel-Quelldatei Documentation/vm/transhuge.txt.
compact_success (seit Linux 2.6.35)
Siehe die Kernel-Quelldatei Documentation/vm/transhuge.txt.
htlb_buddy_alloc_success (seit Linux 2.6.26)
htlb_buddy_alloc_fail (seit Linux 2.6.26)
unevictable_pgs_culled (seit Linux 2.6.28)
unevictable_pgs_scanned (seit Linux 2.6.28)
unevictable_pgs_rescued (seit Linux 2.6.28)
unevictable_pgs_mlocked (seit Linux 2.6.28)
unevictable_pgs_munlocked (seit Linux 2.6.28)
unevictable_pgs_cleared (seit Linux 2.6.28)
unevictable_pgs_stranded (seit Linux 2.6.28)
thp_fault_alloc (seit Linux 2.6.39)
Siehe die Kernel-Quelldatei Documentation/vm/transhuge.txt.
thp_fault_fallback (seit Linux 2.6.39)
Siehe die Kernel-Quelldatei Documentation/vm/transhuge.txt.
thp_collapse_alloc (seit Linux 2.6.39)
Siehe die Kernel-Quelldatei Documentation/vm/transhuge.txt.
thp_collapse_alloc_failed (seit Linux 2.6.39)
Siehe die Kernel-Quelldatei Documentation/vm/transhuge.txt.
thp_split (seit Linux 2.6.39)
Siehe die Kernel-Quelldatei Documentation/vm/transhuge.txt.
thp_zero_page_alloc (seit Linux 3.8)
Siehe die Kernel-Quelldatei Documentation/vm/transhuge.txt.
thp_zero_page_alloc_failed (seit Linux 3.8)
Siehe die Kernel-Quelldatei Documentation/vm/transhuge.txt.
balloon_inflate (seit Linux 3.18)
balloon_deflate (seit Linux 3.18)
balloon_migrate (seit Linux 3.18)
nr_tlb_remote_flush (seit Linux 3.12)
nr_tlb_remote_flush_received (seit Linux 3.12)
nr_tlb_local_flush_all (seit Linux 3.12)
nr_tlb_local_flush_one (seit Linux 3.12)
vmacache_find_calls (seit Linux 3.16)
vmacache_find_hits (seit Linux 3.16)
vmacache_full_flushes (seit Linux 3.19)
/proc/zoneinfo (since Linux 2.6.13)
Diese Datei enthält Informationen über Speicherbereiche. Sie ist nützlich für die Analyse des
Verhaltens des virtuellen Speichers.
ANMERKUNGEN
Viele Zeichenketten (z. B. die Umgebung und die Befehlszeile) sind im internen Format dargestellt,
Unterfelder werden mit Null-Bytes ('\0') begrenzt. Sie werden diese vielleicht besser lesbar finden, wenn
Sie od -c oder tr "\000" "\n" benutzen. Alternativ erhalten Sie mit echo `cat <file>` gute Ergebnisse.
Diese Handbuchseite ist unvollständig, möglicherweise stellenweise ungenau und ein Beispiel für etwas,
das ständig überarbeitet werden muss.
SIEHE AUCH
cat(1), dmesg(1), find(1), free(1), ps(1), tr(1), uptime(1), chroot(2), mmap(2), readlink(2), syslog(2),
slabinfo(5), hier(7), namespaces(7), time(7), arp(8), hdparm(8), ifconfig(8), init(1), lsmod(8),
lspci(8), mount(8), netstat(8), procinfo(8), route(8), sysctl(8)
Die Linux-Kernelquelldateien: Documentation/filesystems/proc.txt Documentation/sysctl/fs.txt,
Documentation/sysctl/kernel.txt, Documentation/sysctl/net.txt und Documentation/sysctl/vm.txt.
KOLOPHON
Diese Seite ist Teil der Veröffentlichung 4.04 des Projekts Linux-man-pages. Eine Beschreibung des
Projekts, Informationen, wie Fehler gemeldet werden können sowie die aktuelle Version dieser Seite finden
sich unter http://www.kernel.org/doc/man-pages/.
ÜBERSETZUNG
Die deutsche Übersetzung dieser Handbuchseite wurde von Helge Kreutzmann <debian@helgefjell.de> und
Martin Eberhard Schauer <Martin.E.Schauer@gmx.de> erstellt.
Diese Übersetzung ist Freie Dokumentation; lesen Sie die GNU General Public License Version 3 oder neuer
bezüglich der Copyright-Bedingungen. Es wird KEINE HAFTUNG übernommen.
Wenn Sie Fehler in der Übersetzung dieser Handbuchseite finden, schicken Sie bitte eine E-Mail an
<debian-l10n-german@lists.debian.org>.
Linux 5. Dezember 2015 PROC(5)