Il /sbin/sysctl è utilizzato per visualizzare, impostare e automatizzare parametri speciali del kernel nella directory /proc/sys/.
Se desiderate una rapida panoramica di tutte le impostazioni configurabili nella directory /proc/sys, digitate il comando /sbin/sysctl-a come utente root. Questo rende possibile di ottenere un elenco molto dettagliato, una piccola parte di tale elenco ha all'incirca il seguente aspetto:
net.ipv4.route.min_delay = 2 kernel.sysrq = 0 kernel.sem = 250 32000 32 128 |
In questo modo si ottengono le stesse informazioni fornite dalla visualizzazione di un singolo file alla volta. L'unica differenza è data dalla posizione del file. Per esempio, /proc/sys/net/ipv4/route/min_delay è elencato come net.ipv4.route.min_delay: gli slash della directory sono sostituiti da punti e la parte proc.sys è presunta.
Il comando sysctl può essere utilizzato al posto di echo per assegnare dei valori a file scrivibili nella directory /proc/sys/. Per esempio, invece di utilizzare questo comando:
echo 1 > /proc/sys/kernel/sysrq |
Il comando sysctl equivaleente è il seguente:
sysctl -w kernel.sysrq="1" kernel.sysrq = 1 |
L'impostazione rapida di singoli valori come questo all'interno di /proc/sys risulta utile quando si sta effettuando una prova, ma non dà risultati altrettanto positivi su un sistema di produzione, in quanto le impostazioni speciali presenti in /proc/sys vanno perdute al riavvio della macchina. Per conservare le impostazioni personali, aggiungetele al file /etc/sysctl.conf.
A ogni riavvio del sistema, il programma init esegue lo script /etc/rc.d/rc.sysinit. Questo script contenente un comando per l'esecuzione di sysctl, utilizzando /etc/sysctl.conf per stabilire i valori passati al kernel. I valori aggiunti a /etc/sysctl.conf avranno effetto subito dopo l'avvio del sistema.