Red Hat Training

A Red Hat training course is available for Red Hat Enterprise Linux

26.4. Décharger un module

Vous pouvez décharger un module de noyau en exécutant modprobe -r module_name en tant qu'utilisateur root. Par exemple, si le module wacom est déjà chargé dans le noyau, vous pouvez le décharger en exécutant :
~]# modprobe -r wacom
Cependant, cette commande échouera si un processus utilise :
  • le module wacom ;
  • un module dont wacom dépend directement ; ou
  • tout module dont wacom dépend indirectement à travers l'arborescence des dépendances.
Veuillez consulter la Section 26.1, « Répertorier les modules actuellement chargés » pour obtenir davantage d'informations sur l'utilisation de lsmod pour obtenir les noms des modules qui vous empêchent de décharger un certain module.

Exemple 26.4. Décharger un module de noyau

Par exemple, si vous souhaitez décharger le module firewire_ohci, votre session de terminal pourrait ressembler à ceci :
~]# modinfo -F depends firewire_ohci
firewire-core
~]# modinfo -F depends firewire_core
crc-itu-t
~]# modinfo -F depends crc-itu-t
Vous avez compris le fonctionnement de l'arborescence des dépendances (aucune branche ne se trouve dans cet exemple) pour les modules Firewire chargés : firewire_ohci dépend de firewire_core, qui dépend de crc-itu-t.
Vous pouvez décharger firewire_ohci en utilisant la commande modprobe -v -r module_name , où -r est un raccourci pour --remove et -v pour --verbose :
~]# modprobe -r -v firewire_ohci
rmmod firewire_ohci
rmmod firewire_core
rmmod crc_itu_t
La sortie montre que les modules sont déchargés dans l'ordre inverse de celui dans lequel ils ont été chargés, à condition qu'aucun processus ne dépende de l'un des modules en cours de déchargement.

Important

Même si la commande rmmod peut être utilisée pour décharger des modules de noyau, il est recommandé d'utiliser modprobe -r à la place.