Mit sysctl(8) können Sie Änderungen an einem laufenden FreeBSD-System vornehmen. Unter anderem können Optionen des TCP/IP-Stacks oder des virtuellen Speichermanagements verändert werden. Unter der Hand eines erfahrenen Systemadministrators kann dies die Systemperformance erheblich verbessern. Über 500 Variablen können mit sysctl(8) gelesen und gesetzt werden.
Der Hauptzweck von sysctl(8) besteht darin, Systemeinstellungen zu lesen und zu verändern.
Alle auslesbaren Variablen werden wie folgt angezeigt:
%
sysctl -a
Sie können auch eine spezielle Variable, z.B.
kern.maxproc
lesen:
%
sysctl kern.maxproc
kern.maxproc: 1044Um eine Variable zu setzen, benutzen Sie die Syntax
Variable
=
Wert
:
#
sysctl kern.maxfiles=5000
kern.maxfiles: 2088 -> 5000Mit sysctl können Sie Strings, Zahlen oder
Boolean-Werte setzen. Bei Boolean-Werten setzen sie 1
für wahr und 0
für falsch.
Wenn Sie Variablen automatisch während des Systemstarts
setzen wollen, fügen Sie die Variablen in die Datei
/etc/sysctl.conf
ein. Weiteres
entnehmen Sie bitte der Hilfeseite sysctl.conf(5)
und dem Abschnitt 12.10.4, „sysctl.conf
“.
Schreibgeschützte sysctl-Variablen können nur während des Systemstarts verändert werden.
Beispielsweise hat cardbus(4) auf einigen Laptops Schwierigkeiten, Speicherbereiche zu erkennen. Es treten dann Fehlermeldungen wie die folgende auf:
Um dieses Problem zu lösen, muss eine
schreibgeschützte sysctl-Variable verändert
werden. Eine OID kann in der Datei
/boot/loader.conf
überschrieben
werden. Die Datei /boot/defaults/loader.conf
enthält Vorgabewwerte für sysctl-Variablen.
Das oben erwähnte Problem wird durch die Angabe von
hw.pci.allow_unsupported_io_range=1
in
/boot/loader.conf
gelöst.
Danach sollte cardbus(4) fehlerfrei funktionieren.
Wenn Sie Fragen zu FreeBSD haben, schicken Sie eine E-Mail an
<de-bsd-questions@de.FreeBSD.org>.
Wenn Sie Fragen zu dieser Dokumentation haben, schicken Sie eine E-Mail an
<de-bsd-translators@de.FreeBSD.org>.