Zum Inhalt springen

Sysctl: Unterschied zwischen den Versionen

Aus Foxwiki
 
(40 dazwischenliegende Versionen von 2 Benutzern werden nicht angezeigt)
Zeile 2: Zeile 2:


== Beschreibung ==
== Beschreibung ==
* ''sysctl'' kann sysctl-[[#Dateien|Dateien]] lesen und schreiben
; Benutzerspace-Frontend für Kernel-Parameter
* [[Procfs]] erforderlich
* Zugriff erfolgt über das Pseudo-Dateisystem [[Procfs]]
* das auf ''/proc'' eingehängt sein muss
 
; Schreibzugriffe
Schreibzugriffe über ''sysctl -w'' ändern Werte im laufenden Kernel
* sind jedoch nicht dauerhaft und gehen nach einem Neustart verloren
 
; Einstellungen
Persistent
* [[/etc/sysctl.conf]]  
 
Konfigurationsfragmente
* /run/sysctl.d
* /etc/sysctl.d
* /usr/local/lib/sysctl.d
* /usr/lib/sysctl.d
* /lib/sysctl.d


== Installation ==
== Installation ==
''sysctl'' ist Teil des Pakets [[procps]]
[[sysctl]] ist Teil des Pakets [[procps]]


== Aufruf ==
== Aufruf ==
<syntaxhighlight lang="bash" highlight="1-2" line>
<syntaxhighlight lang="bash" highlight="1-2">
sysctl [options] [variable[=value]] [...]
sysctl [options] [variable[=value]] [...]
</syntaxhighlight>
<syntaxhighlight lang="bash" highlight="1-2">
sysctl -p [file or regexp] [...]
sysctl -p [file or regexp] [...]
</syntaxhighlight>
</syntaxhighlight>
=== Optionen ===
=== Optionen ===
{| class="wikitable sortable options gnu"
{| class="wikitable sortable options gnu big"
|-
|-
! Unix !! GNU !! Parameter !! Beschreibung
! Unix !! GNU !! Parameter !! Beschreibung
|-
|-
| -n || --values || || Do not display the key name when printing values
| -n || --values || || Nur den Wert ausgeben, ohne Parameternamen
|-
| -e || --ignore || || Ignore errors about unknown keys
|-
| -N || --names || || Only display names (maybe useful for programmable completion)
|-
|-
| -q || --quiet || || Do not display the values set to stdout
| -e || --ignore || || Fehler für unbekannte Parameter ignorieren
|-
|-
| -w || --write || || Change sysctl settings
| -N || --names || || Nur Parameternamen ausgeben (z. B. für programmierbare Completion)
|-
|-
| -p || --load || [=FILE] || Load in sysctl settings from the file specified or
| -q || --quiet || || Werte nicht auf stdout ausgeben
* /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
| -w || --write || || Kernel-Parameter (sysctl-Einstellungen) ändern
|-
|-
| || --deprecated || || Include deprecated parameters to --all values listing
| -p || --load || [=FILE] || Einstellungen aus der angegebenen Datei laden, standardmäßig [[/etc/sysctl.conf]]
* "-" als Dateiname: Lesen der Einstellungen von der Standardeingabe
* Mit dieser Option werden Argumente von ''sysctl'' als Dateinamen interpretiert und in der angegebenen Reihenfolge eingelesen
* Der Dateiname kann als regulärer Ausdruck angegeben werden
|-
|-
| -b || --binary || || Print value without new line
| -a || --all || || Alle aktuell verfügbaren Parameter und Werte anzeigen
|-
|-
| || --system || || Load settings from all system configuration files
| || --deprecated || || Veraltete Parameter in die Ausgabe von ''--all'' einbeziehen
* /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
| -b || --binary || || Wert ohne abschließenden Zeilenumbruch ausgeben
|-
|-
| -A || || || Alias of -a
| || --system || || Einstellungen aus allen Systemkonfigurationsdateien laden
* /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]]
|-
|-
| -d || || || Alias of -h
| -r || --pattern pattern || || Nur Parameter anwenden bzw. anzeigen, deren Name zum Muster passt (erweiterte reguläre Ausdrücke)
|-
|-
| -f || || || Alias of -p
| -A || || || Alias für ''-a''
|-
|-
| -X || || || Alias of -a
| -d || || || Alias für ''-h''
|-
|-
| -o || || || Does nothing, exists for BSD compatibility
| -f || || || Alias für ''-p''
|-
|-
| -x || || || Does nothing, exists for BSD compatibility
| -X || || || Alias für ''-a''
|-
|-
| -h || --help || || Display help text and exit
| -o || || || Ohne Funktion, nur aus BSD-Kompatibilitätsgründen vorhanden
|-
| -V || --version || || Display version information and exit
|}
 
=== Parameter ===
 
; variable
* Name eines Schlüssels, der gelesen werden soll
Beispiel
kernel.ostype
 
Anstelle eines „.“ kann auch das Trennzeichen „/“ verwendet werden
 
; variable=value
* wird verwendet, um einen Schlüssel in der Form variable=value zu setzen
* wobei variable der Schlüssel und value der Wert ist, auf den er gesetzt werden soll
* Wenn der Wert Anführungszeichen oder Zeichen enthält, die von der Shell analysiert werden, müssen Sie den Wert möglicherweise in doppelte Anführungszeichen setzen
* Dies erfordert die Verwendung des Parameters -w
 
; 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
 
=== Umgebungsvariablen ===
=== Exit-Status ===
 
== Anwendung ==
<syntaxhighlight lang="bash" highlight="1-8" line>
/sbin/sysctl -a
</syntaxhighlight>
 
<syntaxhighlight lang="bash" highlight="1-8" line>
/sbin/sysctl -n kernel.hostname
</syntaxhighlight>
 
<syntaxhighlight lang="bash" highlight="1-8" line>
/sbin/sysctl -w kernel.domainname="example.com"
</syntaxhighlight>
 
<syntaxhighlight lang="bash" highlight="1-8" line>
/sbin/sysctl -p/etc/sysctl.conf
</syntaxhighlight>
 
<syntaxhighlight lang="bash" highlight="1-8" line>
/sbin/sysctl -a --pattern forward
</syntaxhighlight>
 
<syntaxhighlight lang="bash" highlight="1-8" line>
/sbin/sysctl -a --pattern forward$
</syntaxhighlight>
 
<syntaxhighlight lang="bash" highlight="1-8" line>
/sbin/sysctl -a --pattern 'net.ipv4.conf.(eth|wlan)0.arp'
</syntaxhighlight>
 
<syntaxhighlight lang="bash" highlight="1-8" line>
/sbin/sysctl --system --pattern '^net.ipv6'
</syntaxhighlight>
 
== Konfiguration ==
=== Dateien ===
{| class="wikitable options"
|-
|-
! Datei !! Beschreibung
| -x || || || Ohne Funktion, nur aus BSD-Kompatibilitätsgründen vorhanden
|-
|-
| [[/proc/sys]] ||  
| -h || --help || || Hilfetext anzeigen und beenden
|-
|-
| [[/etc/sysctl.conf]] ||  
| -V || --version || || Versionsinformation anzeigen und beenden
|}
|}


-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


<noinclude>
<noinclude>
Zeile 148: Zeile 91:
== Anhang ==
== Anhang ==
=== Siehe auch ===
=== Siehe auch ===
{{Special:PrefixIndex/{{BASEPAGENAME}}}}
{{Special:PrefixIndex/{{BASEPAGENAME}}/}}
* [[linux-sysctl-defaults]]
* [[linux-sysctl-defaults]]


==== Dokumentation ====
=== Dokumentation ===


===== Man-Page =====
; Man-Page
* [[sysctl.conf]](5)
* [[sysctl.conf]](5)
* [[regex]](7)
* [[regex]](7)


===== Info-Pages =====
=== Links ===
==== Links ====
==== Projekt ====
===== Projekt =====
# https://github.com/klaver/sysctl
# https://github.com/klaver/sysctl


===== Weblinks =====
==== Weblinks ====


{{DEFAULTSORT:sysctl}}
{{DEFAULTSORT:sysctl}}
Zeile 168: Zeile 110:


[[Kategorie:Linux/Befehl]]
[[Kategorie:Linux/Befehl]]
[[Kategorie:Linux/Kernel]]
[[Kategorie:Sysctl]]
[[Kategorie:Linux/Sicherheit]]
[[Kategorie:Linux/Prozess/Befehl]]
[[Kategorie:Procps]]
[[Kategorie:Linux/Prozesse]]


</noinclude>
</noinclude>

Aktuelle Version vom 4. Dezember 2025, 12:10 Uhr

sysctl - Kernel-Parameter zur Laufzeit konfigurieren

Beschreibung

Benutzerspace-Frontend für Kernel-Parameter
  • Zugriff erfolgt über das Pseudo-Dateisystem Procfs
  • das auf /proc eingehängt sein muss
Schreibzugriffe

Schreibzugriffe über sysctl -w ändern Werte im laufenden Kernel

  • sind jedoch nicht dauerhaft und gehen nach einem Neustart verloren
Einstellungen

Persistent

Konfigurationsfragmente

  • /run/sysctl.d
  • /etc/sysctl.d
  • /usr/local/lib/sysctl.d
  • /usr/lib/sysctl.d
  • /lib/sysctl.d

Installation

sysctl ist Teil des Pakets procps

Aufruf

sysctl [options] [variable[=value]] [...]
sysctl -p [file or regexp] [...]

Optionen

Unix GNU Parameter Beschreibung
-n --values Nur den Wert ausgeben, ohne Parameternamen
-e --ignore Fehler für unbekannte Parameter ignorieren
-N --names Nur Parameternamen ausgeben (z. B. für programmierbare Completion)
-q --quiet Werte nicht auf stdout ausgeben
-w --write Kernel-Parameter (sysctl-Einstellungen) ändern
-p --load [=FILE] Einstellungen aus der angegebenen Datei laden, standardmäßig /etc/sysctl.conf
  • "-" als Dateiname: Lesen der Einstellungen von der Standardeingabe
  • Mit dieser Option werden Argumente von sysctl als Dateinamen interpretiert und in der angegebenen Reihenfolge eingelesen
  • Der Dateiname kann als regulärer Ausdruck angegeben werden
-a --all Alle aktuell verfügbaren Parameter und Werte anzeigen
--deprecated Veraltete Parameter in die Ausgabe von --all einbeziehen
-b --binary Wert ohne abschließenden Zeilenumbruch ausgeben
--system Einstellungen aus allen Systemkonfigurationsdateien laden
  • /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 Nur Parameter anwenden bzw. anzeigen, deren Name zum Muster passt (erweiterte reguläre Ausdrücke)
-A Alias für -a
-d Alias für -h
-f Alias für -p
-X Alias für -a
-o Ohne Funktion, nur aus BSD-Kompatibilitätsgründen vorhanden
-x Ohne Funktion, nur aus BSD-Kompatibilitätsgründen vorhanden
-h --help Hilfetext anzeigen und beenden
-V --version Versionsinformation anzeigen und beenden



Anhang

Siehe auch

Dokumentation

Man-Page

Links

Projekt

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

Weblinks