Utilisation de sysctl

La commande sysctl peut faciliter radicalement la visualisation, le réglage et l'automatisation spéciale de paramètres du noyau.

Pour avoir un aperçu rapide de tous les paramètres configurables dans le répertoire /proc/sys, entrez la commande sysctl -a en tant que super-utilisateur. Vous obtiendrez ainsi une longue liste exhaustive ; en voici un court extrait :

net.ipv4.route.min_delay = 2
kernel.sysrq = 0
kernel.sem = 250     32000     32     128

Il s'agit des mêmes informations de base que vous verriez si vous visualisiez chaque fichier individuellement. La seule différence est l'emplacement du fichier. /proc/sys/net/ipv4/route/min_delay est signifié par net.ipv4.route.min_delay, où les barres obliques de répertoire sont remplacées par des points et la portion proc.sys est supposée.

On peut utiliser la commande sysctl au lieu d'echo pour assigner des valeurs à des fichiers modifiables dans le répertoire /proc/sys/. Par exemple, au lieu d'utiliser cette commande :

echo 1 > /proc/sys/kernel/sysrq

Vous pouvez utiliser la commande sysctl :

sysctl -w kernel.sysrq="1"
kernel.sysrq = 1

Le réglage rapide de valeurs individuelles comme celle-ci dans /proc/sys est pratique durant des essais, mais ne fonctionne pas aussi bien sur un système de production car tous les réglages spéciaux /proc/sys sont perdus lorsque le système est redémarré. Pour préserver les réglages qui vous plaisent et faire en sorte qu'ils soient permanents pour le noyau, ajoutez-les au fichier /etc/sysctl.conf.

Chaque fois que le système démarre, le script /etc/rc.d/rc.sysinit est exécuté par init. Ce script contient une commande pour exécuter sysctl utilisant /etc/sysctl.conf en tant que valeur à utiliser. Par conséquent, toute valeur ajoutée à /etc/sysctl.conf sera appliquée dès que le système aura terminé de démarrer.