sysctl(8) è un'interfaccia che permette di effettuare cambiamenti ad un sistema FreeBSD già attivo. Questo include molte opzioni avanzate dello stack TCP/IP e del sistema di memoria virtuale che possono permettere di migliorare drammaticamente le prestazioni ad un sistemista che abbia esperienza. Più di cinquecento variabili di sistema possono essere lette e modificate usando sysctl(8).
In sostanza, sysctl(8) serve a due cose: a leggere e a modificare le impostazioni di sistema.
Per visualizzare tutte le variabili leggibili:
%
sysctl -a
Per leggere una particolare variabile, ad esempio,
kern.maxproc
:
%
sysctl kern.maxproc
kern.maxproc: 1044
Per impostare una particolare variabile, usa l'intuitiva sintassi
variabile
=valore
:
#
sysctl kern.maxfiles=5000
kern.maxfiles: 2088 -> 5000
I valori validi per le variabili di sysctl sono generalmente o
stringhe, o numeri, o valori booleani (un valore booleano può
valere 1
per sì o 0
per
no).
Se vuoi settare in modo automatico alcune variabile ad ogni
avvio della macchina, usa il file /etc/sysctl.conf
.
Per maggiori informazioni guarda la pagina man
di sysctl.conf(5) e la
Sezione 11.10.4, «sysctl.conf
».
In alcuni casi può essere desiderabile modificare i valori di sysctl(8) in sola lettura. Anche se questo talvolta è inevitabile, può essere fatto solo con un riavvio.
Ad esempio in alcuni modelli di laptop il dispositivo cardbus(4) non effettuerà il controllo sugli intervalli di memoria, e fallirà con errori che assomigliano a questi:
cbb0: Could not map register memory device_probe_and_attach: cbb0 attach returned 12
Casi come il precedente richiedono tipicamente la modifica di alcuni
valori predefiniti di sysctl(8) che sono impostati come sola
lettura. Per superare queste situazioni
un utente può mettere degli «OID» di sysctl(8)
nel proprio /boot/loader.conf.local
. I valori
predefiniti sono indicati nel file
/boot/defaults/loader.conf
.
Per risolvere i problemi menzionati qui sopra sarà necessario
modificare hw.pci.allow_unsupported_io_range=1
nel file
suddetto. Ora cardbus(4) funzionerà correttamente.
Questo, ed altri documenti, possono essere scaricati da ftp://ftp.FreeBSD.org/pub/FreeBSD/doc/
Per domande su FreeBSD, leggi la
documentazione prima di contattare
<questions@FreeBSD.org>.
Per domande su questa documentazione, invia una e-mail a
<doc@FreeBSD.org>.