.\" -*- coding: UTF-8 -*-
.\" Copyright (C) 1994, 1995, Daniel Quinlan <quinlan@yggdrasil.com>
.\" Copyright (C) 2002-2008, 2017, Michael Kerrisk <mtk.manpages@gmail.com>
.\" Copyright (C) , Andries Brouwer <aeb@cwi.nl>
.\" Copyright (C) 2023, Alejandro Colomar <alx@kernel.org>
.\"
.\" SPDX-License-Identifier: GPL-3.0-or-later
.\"
.\"*******************************************************************
.\"
.\" This file was generated with po4a. Translate the source file.
.\"
.\"*******************************************************************
.TH proc_sys_vm 5 "2. Mai 2024" "Linux man\-pages 6.9.1" 
.SH BEZEICHNUNG
/proc/sys/vm/ \- virtuelles Speicher\-Subsystem
.SH BESCHREIBUNG
.TP 
\fI/proc/sys/vm/\fP
Dieses Verzeichnis enthält Dateien für die Optimierung der
Speicherverwaltung und die Verwaltung der Puffer und Caches
(Zwischenspeicher).
.TP 
\fI/proc/sys/vm/admin_reserve_kbytes\fP (seit Linux 3.10)
.\" commit 4eeab4f5580d11bffedc697684b91b0bca0d5009
Diese Datei definiert die Menge an freiem Speicher (in KiB) auf dem System,
der für Benutzer mit der Capability \fBCAP_SYS_ADMIN\fP reserviert werden
sollte.
.IP
Die Vorgabe für diesen Wert ist der kleinere Wert aus [3% von freien Seiten,
8 MiB], ausgedrückt in kiB. Der Vorgabewert ist dazu gedacht, unter dem
standardmäßigen Überbuchungs »Rate«\-Modus (d.h. 0 in
\fI/proc/sys/vm/overcommit_memory\fP) genug für die Anmeldung des
Systemadministrators zum Beenden eines Prozesses, falls notwendig,
bereitzustellen.
.IP
Systeme, die im »Nichtmals Überbuchen«\-Modus« (d.h. 2 in
\fI/proc/sys/vm/overcommit_memory\fP) laufen, sollten den Wert in dieser Datei
vergrößern,um der vollen virtuelle Speichergröße Rechnung zu tragen, die
Programme zur Wiederherstellung benötigen (z.B. \fBlogin\fP(1), \fBssh\fP(1) und
\fBtop\fP(1)). Andernfalls ist der Systemadministrator möglicherweise nicht in
der Lage, sich anzumelden, um das System wiederherzustellen. Auf x86\-64 ist
beispielsweise 131072 (128 MiB reserviert) ein geeigneter Wert.
.IP
Die Änderung des Wertes in dieser Datei tritt in Kraft, wann immer eine
Anwendung Speicher anfordert.
.TP 
\fI/proc/sys/vm/compact_memory\fP (seit Linux 2.6.35)
Wenn 1 in diese Datei geschrieben wird, werden alle Zonen zusammengefasst,
so dass der freie Speicher wo möglich in durchlaufenden Blöcken verfügbar
ist. Der Effekt dieser Aktion kann durch Einsicht in \fI/proc/buddyinfo\fP
geprüft werden.
.IP
Nur vorhanden, falls der Kernel mit \fBCONFIG_COMPACTION\fP konfiguriert wurde.
.TP 
\fI/proc/sys/vm/drop_caches\fP (seit Linux 2.6.16)
Das Schreiben in diese Datei veranlasst den Kernel, saubere
Zwischenspeicher, Dentries und Inodes aus dem Speicher zu verwerfen, was
dazu führt, dass Speicher frei wird. Dies kann für das Testen der
Speicherverwaltung und der Durchführung reproduzierbarer
Dateisystembewertungen nützlich sein. Da das Schreiben in diese Datei dazu
führt, dass die Vorteile der Zwischenspeicherung verloren gehen, kann es die
Leistung des gesamten Systems vermindern.
.IP
Zur Freigabe des Seitenzwischenspeichers, verwenden Sie:
.IP
.in +4n
.EX
echo 1 > /proc/sys/vm/drop_caches
.EE
.in
.IP
Zur Freigabe der Dentries und Inodes, verwenden Sie:
.IP
.in +4n
.EX
echo 2 > /proc/sys/vm/drop_caches
.EE
.in
.IP
Zur Freigabe des Seitenzwischenspeichers, der Dentries und Inodes, verwenden
Sie:
.IP
.in +4n
.EX
echo 3 > /proc/sys/vm/drop_caches
.EE
.in
.IP
Da das Schreiben in diese Datei unschädlich ist und geänderte (schmutzige)
Objekte nicht freigegeben werden können, sollte der Benutzer vorher
\fBsync\fP(8) aufrufen.
.TP 
\fI/proc/sys/vm/sysctl_hugetlb_shm_group\fP (seit Linux 2.6.7)
Diese schreibbare Datei enthält die Gruppenkennung, der es erlaubt ist,
Speicher mittels großer Seiten zu belegen. Falls ein Prozess über eine
Dateisystemgruppenkennung oder irgendeine zusätzliche Gruppenkennung, die
auf diese Gruppenkennung passt, verfügt, dann kann er große Speicherseiten
belegen, ohne die Capability \fBCAP_IPC_LOCK\fP zu halten; siehe
\fBmemfd_create\fP(2), \fBmmap\fP(2) und \fBshmget\fP(2).
.TP 
\fI/proc/sys/vm/legacy_va_layout\fP (seit Linux 2.6.9)
.\" The following is from Documentation/filesystems/proc.txt
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.
.TP 
\fI/proc/sys/vm/memory_failure_early_kill\fP (seit Linux 2.6.32)
.\" The following is based on the text in Documentation/sysctl/vm.txt
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.
.IP
Die Datei hat einen der folgenden Werte:
.RS
.TP 
\fB1\fP
Bricht alle Prozesse ab, in deren Speicher die beschädigte und nicht erneut
ladbare Seite gemappt ist, sobald die Beschädigung erkannt wird. Beachten
Sie, dass dies nicht für einige spezielle Seitentypen wie Kernel\-intern
zugewiesene Daten oder den Auslagerungszwischenspeicher unterstützt wird, es
funktioniert aber für die Mehrheit der Anwenderseiten.
.TP 
\fB0\fP
Die beschädigte Seite aus allen Prozesse ausmappen und einen Prozess nur
töten, falls er versucht, auf die Seite zuzugreifen.
.RE
.IP
Der Abbruch wird mittels eines \fBSIGBUS\fP\-Signals erledigt, bei dem der
\fIsi_code\fP auf \fBBUS_MCEERR_AO\fP gesetzt wird. Prozesse können darauf
reagieren, wenn sie wollen; siehe \fBsigaction\fP(2) für weitere Einzelheiten.
.IP
Diese Funktionalität ist nur auf Architekturen/Plattformen aktiv, die über
eine ausgefeilte Handhabung von »machine checks« verfügen und hängt von den
Fähigkeiten der Hardware ab.
.IP
Anwendungen können die Einstellung \fImemory_failure_early_kill\fP individuell
mit der \fBprctl\fP(2)\-Operation  \fBPR_MCE_KILL\fP außer Kraft setzen.
.IP
Nur vorhanden, falls der Kernel mit \fBCONFIG_MEMORY_FAILURE\fP konfiguriert
wurde.
.TP 
\fI/proc/sys/vm/memory_failure_recovery\fP (seit Linux 2.6.32)
.\" The following is based on the text in Documentation/sysctl/vm.txt
Aktiviert die Behebung von Speicherfehlern (wenn das von der Plattform
unterstützt wird).
.RS
.TP 
\fB1\fP
Fehlerbehebung versuchen.
.TP 
\fB0\fP
Bei Speicherfehlern immer eine Kernel Panic auslösen.
.RE
.IP
Nur vorhanden, falls der Kernel mit \fBCONFIG_MEMORY_FAILURE\fP konfiguriert
wurde.
.TP 
\fI/proc/sys/vm/oom_dump_tasks\fP (seit Linux 2.6.25)
.\" The following is from Documentation/sysctl/vm.txt
Ermöglicht einen systemweiten Speicherauszug der Prozesse (ohne
Kernel\-Threads), wenn der Kernel bei Speicherknappheit Prozesse abbricht
(OOM\-Killer). Der Speicherauszug enthält die folgenden Informationen für
jeden Prozess (Thread, Prozess): Thread\-Kennung, reale Benutzerkennung,
Thread\-Gruppenkennung (Prozesskennung), Größe des virtuellen Speichers,
Größe des Resident Set, die CPU, auf der der Prozess laufen soll, die
oom_adj\-Bewertung (siehe die Beschreibung von \fI/proc/\fPPID\fI/oom_adj\fP) und
der Name des Befehls. Dies ist hilfreich, um festzustellen, warum der
OOM\-Killer aufgerufen wurde und um die außer Kontrolle geratenen Prozesse zu
identifizieren.
.IP
Ist der Wert in der Datei Null, wird diese Information unterdrückt. Auf sehr
großen Systemen mit Tausenden von Prozessen wird es kaum praktikabel sein,
für alle Prozesse den Speicherstatus auszugeben. Solche Systeme sollten
nicht gezwungen werden, bei OOM\-Situationen Leistungseinbußen zu erleiden,
wenn die Informationen nicht gewünscht werden.
.IP
Ist der Wert von Null verschieden, werden diese Informationen jedesmal
ausgegeben, wenn der OOM\-Killer einen speicherhungrigen Prozess ins Jenseits
schickt.
.IP
Der Standardwert ist 0.
.TP 
\fI/proc/sys/vm/oom_kill_allocating_task\fP (seit Linux 2.6.24)
.\" The following is from Documentation/sysctl/vm.txt
Dies aktiviert oder deaktiviert das Beenden des OOM\-auslösenden Prozesses
bei Speicherknappheit.
.IP
Ist der Wert null, wertet der OOM\-Killer die gesamte Taskliste aus und wählt
heuristisch einen Prozess als Opfer aus. Normalerweise wählt er einen
speicherhungrigen, außer Kontrolle geratenenen Task aus, dessen Tod sehr
viel Speicher freigibt.
.IP
Ist der Wert ungleich Null, tötet der OOM\-Killer den Prozess, der die
Speicherknappheit auslöste. Dadurch wird eine möglicherweise aufwändige
Analyse der Taskliste vermieden.
.IP
Falls \fI/proc/sys/vm/panic_on_oom\fP von null verschieden ist, hat das Vorrang
vor dem Wert in \fI/proc/sys/vm/oom_kill_allocating_task\fP, was auch immer
darin steht.
.IP
Der Standardwert ist 0.
.TP 
\fI/proc/sys/vm/overcommit_kbytes\fP (seit Linux 3.14)
.\" commit 49f0ce5f92321cdcf741e35f385669a421013cb7
Diese beschreibbare Datei stellt eine Alternative zu
\fI/proc/sys/vm/overcommit_ratio\fP zu Steuerung von \fICommitLimit\fP bereit,
wenn \fI/proc/sys/vm/overcommit_memory\fP den Wert 2 hat. Es ermöglicht die
Menge der Speicherüberbuchung als absoluten Wert (in kB) statt als
Prozentwert, wie dies in \fIovercommit_ratio\fP erfolgt, festzulegen. Dies
ermöglicht granularere Steuerung des \fICommitLimit\fP auf Systemen mit extrem
viel Speicher.
.IP
Nur entweder \fIovercommit_kbytes\fP oder \fIovercommit_ratio\fP kann einen Effekt
haben. Falls \fIovercommit_kbytes\fP einen von Null verschiedenen Wert enthält,
dann wird dieser zur Berechnung von \fICommitLimit\fP verwandt, andernfalls
wird \fIovercommit_ratio\fP verwandt. Wird in eine der beiden Dateien
geschrieben, dann wird der Wert in der anderen auf Null gesetzt.
.TP 
\fI/proc/sys/vm/overcommit_memory\fP
Diese Datei legt den Abrechnungsmodus des Kernels für virtuellen Speicher
fest. Die Werte sind:
.RS
.IP
0: heuristische Überbuchung (Standardverhalten)
.br
1: immer überbuchen, niemals prüfen
.br
2: immer prüfen, niemals überbuchen
.RE
.IP
In Modus 0 werden Aufrufe von \fBmmap\fP(2) mit \fBMAP_NORESERVE\fP nicht
überprüft. Damit ist die Standardprüfung sehr schwach und setzt den Prozess
dem Risiko aus, zum Opfer des OOM\-Killers zu werden.
.IP
In Modus 1 gibt der Kernel immer vor, noch über Speicher zu verfügen, bis
der Speicher schließlich wirklich erschöpft ist. Ein Einsatzzweck stellt das
wissenschaftliche Rechnen dar, bei denen große, kaum besetzte Felder
eingesetzt werden. Vor Linux 2.6.0 impliziert jeder von Null verschiedene
Wert den Modus 1.
.IP
In Modus 2 (verfügbar seit Linux 2.6) wird der reservierbare gesamte
virtuelle Adressraum (\fICommitLimit\fP in \fI/proc/meminfo\fP) wie folgt
berechnet:
.IP
.in +4n
.EX
CommitLimit = (total_RAM \- total_huge_TLB) *
	      overcommit_ratio / 100 + total_swap
.EE
.in
.IP
wobei:
.RS
.IP \[bu] 3
\fItotal_RAM\fP ist der gesamte RAM des Systems
.IP \[bu]
\fItotal_huge_TLB\fP ist die für große Speicherseiten beiseite gestellte
Speichermenge
.IP \[bu]
\fIovercommit_ratio\fP ist der Wert aus \fI/proc/sys/vm/overcommit_ratio\fP
.IP \[bu]
\fItotal_swap\fP ist die Menge des Auslagerungsbereichs
.RE
.IP
Beispielsweise ergibt diese Formel auf einem System mit 16 GB an physischem
RAM, 16 GB an Auslagerungsspeicher, keinen für große Speicherseiten
gewidmeten Bereich und einem \fIovercommit_ratio\fP von 50 ein \fICommitLimit\fP
von 24 GB.
.IP
Falls der Wert in \fI/proc/sys/vm/overcommit_kbytes\fP von Null verschieden
ist, wird \fICommitLimit\fP stattdessen seit Linux 3.14 wie folgt berechnet:
.IP
.in +4n
.EX
CommitLimit = overcommit_kbytes + total_swap
.EE
.in
.IP
Siehe auch die Beschreibung von \fI/proc/sys/vm/admin_reserve_kbytes\fP und
\fI/proc/sys/vm/user_reserve_kbytes\fP.
.TP 
\fI/proc/sys/vm/overcommit_ratio\fP (seit Linux 2.6.0)
Diese schreibbare Datei definiert einen Prozentwert, zu dem Speicher
überbucht werden kann. Der Vorgabewert in der Datei ist 50. Siehe die
Beschreibung von \fI/proc/sys/vm/overcommit_memory\fP.
.TP 
\fI/proc/sys/vm/panic_on_oom\fP (seit Linux 2.6.18)
.\" The following is adapted from Documentation/sysctl/vm.txt
Dies aktiviert oder deaktiviert eine Kernel\-Panik bei Speicherknappheit.
.IP
Wenn diese Datei auf den Wert 0 gesetzt wird, wird der OOM\-Killer des
Kernels einen außer Kontrolle geratenen Prozess töten. Normalerweise findet
er einen außer Kontrolle geratenen Prozess und das System überlebt.
.IP
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 (\fBmbind\fP(2) \fBMPOL_BIND\fP) oder
Cpusets (\fBcpuset\fP(7)) begrenzt und die Knoten einen
Speichererschöpfungs\-Zustand erreichen, 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 Speicherknappheit leiden.
.IP
Wenn diese Datei schon auf den Wert 2 gesetzt ist, wird bei
Speicherknappheit immer eine Kernel\-Panik ausgelöst.
.IP
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.
.TP 
\fI/proc/sys/vm/swappiness\fP
.\" The following is from Documentation/sysctl/vm.txt
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.
.TP 
\fI/proc/sys/vm/user_reserve_kbytes\fP (seit Linux 3.10)
.\" commit c9b1d0981fcce3d9976d7b7a56e4e0503bc610dd
Legt die Speichermenge (in kiB) fest, die für Benutzerprozesse zu
reservieren ist. Dies ist dazu gedacht, einen Benutzer vom Starten eines
einzelnen, speicherfressenden Prozesses abzuhalten, so dass er sich nicht
von dem Speicherfresser erholen kann (ihn beenden kann). Der Wert in dieser
Datei hat nur eine Auswirkung, wenn \fI/proc/sys/vm/overcommit_memory\fP auf 2
gesetzt ist (»niemals Überbuchen«\-Modus). In diesem Fall reserviert das
System eine Speichermenge, die der kleinere Wert aus [3% der aktuellen
Prozessgröße, \fIuser_reserve_kbytes\fP] ist.
.IP
Der Vorgabewert in dieser Datei ist der kleinere Wert aus [3% der freien
Seiten, 128 MiB], ausgedrückt in kiB.
.IP
Falls der Wert in dieser Datei auf Null gesetzt wird, darf ein Benutzer
sämtlichen Speicher durch einen einzelnen Prozess belegen (abzüglich der
durch \fI/proc/sys/vm/admin_reserve_kbytes\fP reservierten Menge). Alle
nachfolgenden Versuche, einen Befehl auszuführen, führen dann zu »fork:
Cannot allocate memory«.
.IP
Die Änderung des Wertes in dieser Datei tritt in Kraft, wann immer eine
Anwendung Speicher anfordert.
.TP 
\fI/proc/sys/vm/unprivileged_userfaultfd\fP (seit Linux 5.2)
.\" cefdca0a86be517bc390fc4541e3674b8e7803b0
Diese (schreibbare) Datei legt einen Schalter offen, der steuert, ob nicht
privilegierten Prozessen erlaubt wird, \fBuserfaultfd\fP(2) einzusetzen. Falls
diese Datei den Wert 1 enthält, dann dürfen nicht privilegierte Prozesse
\fBuserfaultfd\fP(2) verwenden. Falls diese Datei den Wert 0 enthält, dann
dürfen nur Prozesse, die über die Capability \fBCAP_SYS_PTRACE\fP verfügen,
\fBuserfaultfd\fP(2) einsetzen. Der Vorgabewert in dieser Datei ist 1.
.SH "SIEHE AUCH"
\fBproc\fP(5), \fBproc_sys\fP(5)
.PP
.SH ÜBERSETZUNG
Die deutsche Übersetzung dieser Handbuchseite wurde von
Martin Eberhard Schauer <Martin.E.Schauer@gmx.de>,
Dr. Tobias Quathamer <toddy@debian.org>,
Chris Leick <c.leick@vollbio.de>,
Erik Pfannenstein <debianignatz@gmx.de>
und
Helge Kreutzmann <debian@helgefjell.de>
erstellt.
.PP
Diese Übersetzung ist Freie Dokumentation; lesen Sie die
.UR https://www.gnu.org/licenses/gpl-3.0.html
GNU General Public License Version 3
.UE
oder neuer bezüglich der
Copyright-Bedingungen. Es wird KEINE HAFTUNG übernommen.
.PP
Wenn Sie Fehler in der Übersetzung dieser Handbuchseite finden,
schicken Sie bitte eine E-Mail an die
.MT debian-l10n-german@lists.debian.org
Mailingliste der Übersetzer
.ME .