Passer au contenu principal
Accéder à l'ensemble des vidéos de ce cours en ligne en illimité à partir de 99€HT/an. Voir nos offres

Linux Initiation + Préparation LPI 101

Architecture système : matériel, démarrage et cibles systemd

Retrouver un paramètre du noyau dans proc sys

Accéder à l'ensemble des vidéos de ce cours en illimité à partir de 99€ HT/an.

Architecture système : matériel, démarrage et cibles systemd
00:03:03

Script

Objectif et utilité

Vous allez retrouver le nom exact d'un paramètre du noyau en parcourant /proc/sys, et modifier sa valeur directement dans le fichier qui le représente.

Prérequis et point de départ

  • Voir « Désactiver l'IPv6 avec sysctl ».

Explication et démarche

1. Sous Linux, tout est fichier

Contrairement aux paramètres de certains modules du noyau, qui n'ont pas toujours de représentation sous forme de fichier, les paramètres du noyau lui-même sont tous représentés par des fichiers, dans /proc/sys.

ls /proc/sys

Les sous-dossiers correspondent aux différents sous-systèmes du noyau : net, kernel, vm, fs…

2. Descendre dans l'arborescence

ls /proc/sys/net
ls /proc/sys/net/ipv6
ls /proc/sys/net/ipv6/conf

Dans conf, vous trouvez un dossier par interface réseau, plus default et all. Pour une désactivation complète, choisissez all :

ls /proc/sys/net/ipv6/conf/all
cat /proc/sys/net/ipv6/conf/all/disable_ipv6

3. La correspondance avec sysctl

Le nom net.ipv6.conf.all.disable_ipv6 utilisé par sysctl reprend exactement ce chemin, avec des points à la place des barres obliques.

4. Modifier la valeur sans sysctl

Les paramètres étant des fichiers, vous pouvez les modifier avec des commandes classiques, en tant que root :

sudo -i
echo 0 > /proc/sys/net/ipv6/conf/all/disable_ipv6
ip -c -br address

Les adresses IPv6 sont de retour.

Résultat attendu et vérification

Vous retrouvez le chemin d'un paramètre dans /proc/sys et vous savez en déduire son nom pour sysctl.

Points de vigilance et bonnes pratiques

  • La principale difficulté est de se rappeler que ces paramètres sont dans /proc/sys, et non dans /sys.
  • La modification directe dans /proc/sys est, elle aussi, temporaire.

À retenir et mise en pratique

  • /proc/sys/net/ipv6/conf/all/disable_ipv6 ⇔ net.ipv6.conf.all.disable_ipv6.

Exercice. En parcourant /proc/sys/net/ipv4, retrouvez le paramètre qui active le routage (forwarding) des paquets IPv4 et affichez sa valeur avec sysctl.

Critère de réussite : vous affichez net.ipv4.ip_forward et sa valeur.

Référence

  • Page de manuel proc_sys(5) : https://manpages.debian.org/proc_sys.5
  • Documentation du noyau, /proc/sys : https://docs.kernel.org/admin-guide/sysctl/index.html