Zum Inhalt springen

Sysctl: Unterschied zwischen den Versionen

Aus Foxwiki
Zeile 18: Zeile 18:


; variable
; variable
* is the name of a key to read from.
* is the name of a key to read from
* An example is kernel.ostype. The '/' separator is also accepted in place of a '.'.
* An example is kernel.ostype. The '/' separator is also accepted in place of a '.'.


; variable=value
; variable=value
* is used to set a key, in the form variable=value where variable is the key and value is the value to set it to.
* is used to set a key, in the form variable=value where variable is the key and value is the value to set it to
* If the value contains quotes or characters which are parsed by the shell, you may need to enclose the value in double quotes. This requires the -w parameter to use
* If the value contains quotes or characters which are parsed by the shell, you may need to enclose the value in double quotes
* This requires the -w parameter to use


=== Optionen ===
=== Optionen ===
Zeile 34: Zeile 35:
| -e || --ignore || || Ignore errors about unknown keys
| -e || --ignore || || Ignore errors about unknown keys
|-
|-
| -N || --names || || Only print the names. It may be useful with shells that have programmable completion
| -N || --names || || Only print the names (maybe useful for programmable completion)
|-
|-
| -q || --quiet || || Do not display the values set to stdout
| -q || --quiet || || Do not display the values set to stdout
Zeile 40: Zeile 41:
| -w || --write || || Change a sysctl setting
| -w || --write || || Change a sysctl setting
|-
|-
| -p || --load || [=FILE] || Load in sysctl settings from the file specified or /etc/sysctl.conf if none given. Specifying - as filename means reading data from standard input. Using this option will mean arguments to sysctl are files, which are read in the order they are specified. The file argument may be specified as regular expression
| -p || --load || [=FILE] || Load in sysctl settings from the file specified or  
* /etc/sysctl.conf if none given
* Specifying - as filename means reading data from standard input
* Using this option will mean arguments to sysctl are files, which are read in the order they are specified
* The file argument may be specified as regular expression
|-
|-
| -a || --all || || Display all values currently available
| -a || --all || || Display all values currently available
Zeile 46: Zeile 51:
| || --deprecated || || Include deprecated parameters to --all values listing
| || --deprecated || || Include deprecated parameters to --all values listing
|-
|-
| -b || --binary || ||Print value without new line
| -b || --binary || || Print value without new line
|-
|-
| || --system || ||Load settings from all system configuration files. /run/sysctl.d/*.conf /etc/sysctl.d/*.conf /usr/local/lib/sysctl.d/*.conf /usr/lib/sysctl.d/*.conf /lib/sysctl.d/*.conf /etc/sysctl.conf
| || --system || || Load settings from all system configuration files
* /run/sysctl.d/*.conf  
* /etc/sysctl.d/*.conf  
* /usr/local/lib/sysctl.d/*.conf  
* /usr/lib/sysctl.d/*.conf  
* /lib/sysctl.d/*.conf  
* /etc/sysctl.conf
|-
|-
| -r || --pattern pattern || || Only apply settings that match pattern. The pattern uses extended regular expression syntax
| -r || --pattern pattern || || Only apply settings that match pattern. The pattern uses extended regular expression syntax

Version vom 25. Januar 2025, 12:24 Uhr

sysctl - Configure kernel parameters at runtime

Beschreibung

  • sysctl is used to modify kernel parameters at runtime
  • The parameters available are those listed under /proc/sys/
  • Procfs is required for sysctl support in Linux. You can use sysctl to both read and write sysctl data

Installation

Aufruf

sysctl [options] [variable[=value]] [...]
sysctl -p [file or regexp] [...]
variable
  • is the name of a key to read from
  • An example is kernel.ostype. The '/' separator is also accepted in place of a '.'.
variable=value
  • is used to set a key, in the form variable=value where variable is the key and value is the value to set it to
  • If the value contains quotes or characters which are parsed by the shell, you may need to enclose the value in double quotes
  • This requires the -w parameter to use

Optionen

Unix GNU Parameter Beschreibung
-n --values Disable printing of the key name when printing values
-e --ignore Ignore errors about unknown keys
-N --names Only print the names (maybe useful for programmable completion)
-q --quiet Do not display the values set to stdout
-w --write Change a sysctl setting
-p --load [=FILE] Load in sysctl settings from the file specified or
  • /etc/sysctl.conf if none given
  • Specifying - as filename means reading data from standard input
  • Using this option will mean arguments to sysctl are files, which are read in the order they are specified
  • The file argument may be specified as regular expression
-a --all Display all values currently available
--deprecated Include deprecated parameters to --all values listing
-b --binary Print value without new line
--system Load settings from all system configuration files
  • /run/sysctl.d/*.conf
  • /etc/sysctl.d/*.conf
  • /usr/local/lib/sysctl.d/*.conf
  • /usr/lib/sysctl.d/*.conf
  • /lib/sysctl.d/*.conf
  • /etc/sysctl.conf
-r --pattern pattern Only apply settings that match pattern. The pattern uses extended regular expression syntax
-A Alias of -a
-d Alias of -h
-f Alias of -p
-X Alias of -a
-o Does nothing, exists for BSD compatibility
-x Does nothing, exists for BSD compatibility
-h --help Display help text and exit
-V --version Display version information and exit

Parameter

Umgebungsvariablen

Exit-Status

Anwendung

/sbin/sysctl -a
/sbin/sysctl -n kernel.hostname
/sbin/sysctl -w kernel.domainname="example.com"
/sbin/sysctl -p/etc/sysctl.conf
/sbin/sysctl -a --pattern forward
/sbin/sysctl -a --pattern forward$
/sbin/sysctl -a --pattern 'net.ipv4.conf.(eth|wlan)0.arp'
/sbin/sysctl --system --pattern '^net.ipv6'

Veraltete Parameter

  • Die Parameter „base_reachable_time“ und „retrans_time“ sind veraltet
  • Der Befehl „sysctl“ erlaubt keine Änderung der Werte dieser Parameter
  • Benutzer, die unbedingt veraltete Kernel-Schnittstellen verwenden möchten, sollten die Werte auf andere Weise in das /proc-Dateisystem übertragen
Beispiel
echo 256 > /proc/sys/net/ipv6/neigh/eth0/base_reachable_time

Problembehebung

Konfiguration

Dateien

Datei Beschreibung
/proc/sys
/etc/sysctl.conf


Anhang

Siehe auch

Dokumentation

Man-Page
Info-Pages

Links

Projekt
  1. https://github.com/klaver/sysctl
Weblinks