'\" t .TH "OOMD\&.CONF" "5" "" "systemd 256.7" "oomd.conf" .\" ----------------------------------------------------------------- .\" * Define some portability stuff .\" ----------------------------------------------------------------- .\" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ .\" http://bugs.debian.org/507673 .\" http://lists.gnu.org/archive/html/groff/2009-02/msg00013.html .\" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ .ie \n(.g .ds Aq \(aq .el .ds Aq ' .\" ----------------------------------------------------------------- .\" * set default formatting .\" ----------------------------------------------------------------- .\" disable hyphenation .nh .\" disable justification (adjust text to left margin only) .ad l .\" ----------------------------------------------------------------- .\" * MAIN CONTENT STARTS HERE * .\" ----------------------------------------------------------------- .SH "NAME" oomd.conf, oomd.conf.d \- Global \fBsystemd\-oomd\fR configuration files .SH "SYNOPSIS" .PP .RS 4 /etc/systemd/oomd\&.conf .RE .RS 4 /run/systemd/oomd\&.conf .RE .RS 4 /usr/local/lib/systemd/oomd\&.conf .RE .RS 4 /usr/lib/systemd/oomd\&.conf .RE .RS 4 /etc/systemd/oomd\&.conf\&.d/*\&.conf .RE .RS 4 /run/systemd/oomd\&.conf\&.d/*\&.conf .RE .RS 4 /usr/local/lib/systemd/oomd\&.conf\&.d/*\&.conf .RE .RS 4 /usr/lib/systemd/oomd\&.conf\&.d/*\&.conf .RE .SH "DESCRIPTION" .PP These files configure the various parameters of the \fBsystemd\fR(1) userspace out\-of\-memory (OOM) killer, \fBsystemd-oomd.service\fR(8)\&. See \fBsystemd.syntax\fR(7) for a general description of the syntax\&. .SH "CONFIGURATION DIRECTORIES AND PRECEDENCE" .PP The default configuration is set during compilation, so configuration is only needed when it is necessary to deviate from those defaults\&. The main configuration file is loaded from one of the listed directories in order of priority, only the first file found is used: /etc/systemd/, /run/systemd/, /usr/local/lib/systemd/ \&\s-2\u[1]\d\s+2, /usr/lib/systemd/\&. The vendor version of the file contains commented out entries showing the defaults as a guide to the administrator\&. Local overrides can also be created by creating drop\-ins, as described below\&. The main configuration file can also be edited for this purpose (or a copy in /etc/ if it\*(Aqs shipped under /usr/), however using drop\-ins for local configuration is recommended over modifications to the main configuration file\&. .PP In addition to the main configuration file, drop\-in configuration snippets are read from /usr/lib/systemd/*\&.conf\&.d/, /usr/local/lib/systemd/*\&.conf\&.d/, and /etc/systemd/*\&.conf\&.d/\&. Those drop\-ins have higher precedence and override the main configuration file\&. Files in the *\&.conf\&.d/ configuration subdirectories are sorted by their filename in lexicographic order, regardless of in which of the subdirectories they reside\&. When multiple files specify the same option, for options which accept just a single value, the entry in the file sorted last takes precedence, and for options which accept a list of values, entries are collected as they occur in the sorted files\&. .PP When packages need to customize the configuration, they can install drop\-ins under /usr/\&. Files in /etc/ are reserved for the local administrator, who may use this logic to override the configuration files installed by vendor packages\&. Drop\-ins have to be used to override package drop\-ins, since the main configuration file has lower precedence\&. It is recommended to prefix all filenames in those subdirectories with a two\-digit number and a dash, to simplify the ordering\&. This also defines a concept of drop\-in priorities to allow OS vendors to ship drop\-ins within a specific range lower than the range used by users\&. This should lower the risk of package drop\-ins overriding accidentally drop\-ins defined by users\&. It is recommended to use the range 10\-40 for drop\-ins in /usr/ and the range 60\-90 for drop\-ins in /etc/ and /run/, to make sure that local and transient drop\-ins take priority over drop\-ins shipped by the OS vendor\&. .PP To disable a configuration file supplied by the vendor, the recommended way is to place a symlink to /dev/null in the configuration directory in /etc/, with the same filename as the vendor configuration file\&. .SH "[OOM] SECTION OPTIONS" .PP The following options are available in the [OOM] section: .PP \fISwapUsedLimit=\fR .RS 4 Sets the limit for memory and swap usage on the system before \fBsystemd\-oomd\fR will take action\&. If the fraction of memory used and the fraction of swap used on the system are both more than what is defined here, \fBsystemd\-oomd\fR will act on eligible descendant control groups with swap usage greater than 5% of total swap, starting from the ones with the highest swap usage\&. Which control groups are monitored and what action gets taken depends on what the unit has configured for \fIManagedOOMSwap=\fR\&. Takes a value specified in percent (when suffixed with "%"), permille ("โ€ฐ") or permyriad ("โ€ฑ"), between 0% and 100%, inclusive\&. Defaults to 90%\&. .sp Added in version 247\&. .RE .PP \fIDefaultMemoryPressureLimit=\fR .RS 4 Sets the limit for memory pressure on the unit\*(Aqs control group before \fBsystemd\-oomd\fR will take action\&. A unit can override this value with \fIManagedOOMMemoryPressureLimit=\fR\&. The memory pressure for this property represents the fraction of time in a 10 second window in which all tasks in the control group were delayed\&. For each monitored control group, if the memory pressure on that control group exceeds the limit set for longer than the duration set by \fIDefaultMemoryPressureDurationSec=\fR, \fBsystemd\-oomd\fR will act on eligible descendant control groups, starting from the ones with the most reclaim activity to the least reclaim activity\&. Which control groups are monitored and what action gets taken depends on what the unit has configured for \fIManagedOOMMemoryPressure=\fR\&. Takes a fraction specified in the same way as \fISwapUsedLimit=\fR above\&. Defaults to 60%\&. .sp Added in version 247\&. .RE .PP \fIDefaultMemoryPressureDurationSec=\fR .RS 4 Sets the amount of time a unit\*(Aqs control group needs to have exceeded memory pressure limits before \fBsystemd\-oomd\fR will take action\&. Memory pressure limits are defined by \fIDefaultMemoryPressureLimit=\fR and \fIManagedOOMMemoryPressureLimit=\fR\&. Must be set to 0, or at least 1 second\&. Defaults to 30 seconds when unset or 0\&. .sp Added in version 248\&. .RE .SH "SEE ALSO" .PP \fBsystemd\fR(1), \fBsystemd.resource-control\fR(5), \fBsystemd-oomd.service\fR(8), \fBoomctl\fR(1) .SH "NOTES" .IP " 1." 4 ๐Ÿ’ฃ๐Ÿ’ฅ๐Ÿงจ๐Ÿ’ฅ๐Ÿ’ฅ๐Ÿ’ฃ Please note that those configuration files must be available at all times. If /usr/local/ is a separate partition, it may not be available during early boot, and must not be used for configuration.