DEPMOD
Table des matières
Retour à l'index
NOM
depmod – Génération de fichiers modules.dep et map.
SYNOPSIS
depmod [-b rép_base] [-m rép_module] [-o rép_sortie] [-e] [-E Module.symvers]
[-F System.map] [-n] [-v] [-A] [-P préfixe] [-w] [version]
depmod [-e] [-E Module.symvers] [-F System.map] [-n] [-v] [-P préfixe]
[-w] [version] [nom_de_fichier...]
DESCRIPTION
Les modules du noyau Linux peuvent fournir des services (appelés
« symboles ») à d'autres modules (en utilisant une des variantes
EXPORT_SYMBOL dans le code). Si un second module utilise ce symbole, ce
second module dépend clairement du premier module. Ces dépendances peuvent
devenir assez complexes.
depmod crée une liste de dépendances de module en lisant chaque module
sous <RÉP_BASE>/<RÉP_MODULE>/version. Par défaut
<RÉP_MODULE> est /lib/modules et <RÉP_BASE> est vide.
Voir les options plus haut pour écraser cela lorsque nécessaire. Il
détermine quels symboles chaque module exporte et ceux nécessaires. Cette
liste est écrite dans modules.dep et une version binaire hachée nommée
modules.dep.bin dans le même répertoire. Si des noms de fichier
sont donnés sur la ligne de commande, seuls ces modules sont examinés (ce
qui est rarement utile à moins que tous les modules ne soient
listés). depmod crée aussi une liste des symboles fournis par les
modules dans le fichier nommé modules.symbols et sa version binaire
hachée modules.dep.bin. Enfin, depmod produira un fichier nommé
modules.devname si les modules fournissent des noms de périphérique
spécial (devname) qui doivent être listés dans /dev à l'amorçage (par un
utilitaire tel que systemd-tmpfiles).
Si une version est fournie, le répertoire de module de cette version du
noyau est utilisé à la place de la version actuelle du noyau (telle que
renvoyée par uname -r).
OPTIONS
-a, --all
-
Examiner tous les modules. Cette option est activée par défaut si aucun
nom de fichier n'est donné sur la ligne de commande.
-A, --quick
-
Cette option réalise une analyse pour voir si des modules sont plus récents
que ceux du fichier modules.dep avant qu'un quelconque travail ne soit
entrepris ; s'il n'y en a pas, elle quitte silencieusement au lieu de
régénérer les fichiers.
-b rép_base, --basedir =rép_base
-
Écraser le répertoire de base <RÉP_BASE> où sont situés les
modules. Si des modules ne sont pas actuellement dans le répertoire
(normal) /lib/modules/version, mais dans une zone intermédiaire, un
répertoire de base rép_base peut être spécifié qui est ajouté au début du
nom du répertoire. Ce rép_base est extrait du fichier modules.dep
résultant, donc il est prêt à être déplacé à son emplacement
normal. Utilisez cette option si vous êtes un fournisseur de distribution
qui a besoin de prégénérer les fichiers de métadonnées au lieu d'exécuter
depmod à nouveau plus tard.
Si un chemin relatif est donné, il sera relatif au répertoire de travail
actuel.
Exemple :
-
depmod -b /my/build/staging/dir/
Cette commande s'attend à trouver tous les fichiers en entrée sous
/my/build/staging/dir/lib/modules/$(uname -r) et génère les fichiers
d'index dans le même répertoire.
-mrép_module, --moduledir=rép_module
-
Écraser le répertoire de module <RÉP_MODULE>, qui par défaut est le
préfixe /lib/modules défini au moment de la construction. Cela est
utile lors de la construction du fichier modules.dep dans le
rép_base pour un système qui utilise un préfixe différent (par exemple,
/usr/lib/modules plutôt que /lib/modules).
Les chemins relatifs et absolus sont acceptés, mais ils sont toujours
relatifs au rép_base.
Exemples :
-
depmod -b /tmp/build -m /kernel-modules
depmod -b /tmp/build -m kernel-modules
Cette commande s'attend à trouver tous les fichiers en entrée sous
/tmp/build/kernel-modules/$(uname -r) et génère les fichiers d'index dans
le même répertoire.
Sans l'argument -b, le répertoire module est relatif à /. Exemple :
-
depmod -m machin/truc
Cette commande s'attend à trouver tous les fichiers en entrée sous
/machin/truc/$(uname -r) et génère les fichiers d'index dans le même
répertoire. À moins que la bibliothèque libkmod ne soit préparée à gérer
cet emplacement arbitraire, cela ne fonctionnera pas au moment de
l'exécution.
-o rép_cible, --outdir =rép_cible
-
Définir le répertoire cible où depmod stockera les fichiers
générés. rép_cible sert de racine à ce répertoire, de façon similaire à
l'usage de rép_base. De plus, ce réglage aura la préséance et, s’il est
utilisé avec rép_base, il aboutira à ce que l’entrée soit ce répertoire,
mais que la sortie soit celle définie par rép_cible.
Si un chemin relatif est donné, il sera relatif au répertoire de travail
actuel.
Exemple :
-
depmod -o /my/build/staging/dir/
Cette commande s'attend à trouver tous les fichiers en entrée sous
/lib/modules/$(uname -r) et génère les fichiers d'index sous
/my/build/staging/dir/lib/modules/$(uname -r).
-C,fichier ou répertoire --config =fichier ou répertoire
-
Cette option écrase le répertoire de configuration par défaut. Voir
depmod.d/(5).
-e, --errsyms
-
Lorsque cette option est combinée avec l'option -F, elle annonce tous les
symboles nécessaires à un module et qui ne sont pas fournis par d'autres
modules ou le noyau. Normalement, tous les symboles qui ne sont pas
fournis par les modules sont supposés fournis par le noyau (ce qui pourrait
être vrai dans un monde parfait), mais cette hypothèse ne tient pas, en
particulier lorsque des pilotes supplémentaires mis à jour de parties
tierces sont installés ou sont construits de façon incorrecte.
-E Module.symvers --symvers =Module.symvers
-
Lorsque cette option est combinée avec l'option -e, elle rapporte toutes
les versions des symboles fournis par les modules qui ne correspondent pas
aux versions des symboles fournies par le noyau dans son
Module.symvers. Cette option est mutuellement incompatible avec
-F.
-FSystem.map, --filesyms =System.map
-
Fournie en plus du fichier System.map produit lors de la compilation du
noyau, cette option autorise l'option -e à rapporter les symboles non
résolus. Cette option est mutuellement incompatible avec -E.
-h, --help
-
Afficher un message d'aide puis quitter.
-n, --show, --dry-run
-
Envoyer les divers fichiers map et modules.dep résultants sur la sortie
standard au lieu de les écrire dans le répertoire du module.
-P
-
Quelques symboles préfixes d'architecture avec un caractère
supplémentaire. Cette option permet d’indiquer un caractère de préfixe
(par exemple « _ ») à ignorer.
-v, --verbose
-
En mode bavard, depmod affichera (sur la sortie standard) tous les
symboles dont dépend chaque module et le nom de fichier de module
fournissant le/les symbole(s.)
-V, --version
-
Afficher la version du programme et quitter. Voir les avertissements
ci-dessous lors d’une exécution avec de vieux noyaux.
-w
-
Avertir lors de dépendances dupliquées, d’alias, de versions de
symboles, etc.
COPYRIGHT
Cette page de manuel était originellement sous copyright 2002, Rusty
Russell, IBM Corporation, et en partie sous copyright par Jon Masters et
d'autres.
VOIR AUSSI
depmod.d(5), modprobe(8), modules.dep(5)
BOGUES
Merci d'envoyer les rapports de bogues directement au suivi des bogues de
kmod à https://github.com/kmod-project/kmod/issues/ avec la version
utilisée, les étapes pour reproduire le bogue et le retour espéré.
AUTEURS
De nombreuses contributions proviennent de la liste de diffusion
linux-modules <linux-modules@vger.kernel.org> et de Github. Si
vous avez une copie de kmod.git lui-même, les sorties de
git-shortlog(1) et de git-blame(1) vous indiqueront les auteurs de
certaines parties du projet.
Lucas De Marchi <lucas.de.marchi@gmail.com> est le
responsable actuel du projet.
TRADUCTION
La traduction française de cette page de manuel a été créée par
bubu <bubub@no-log.org>
Cette traduction est une documentation libre ; veuillez vous reporter à la
GNU General Public License version 3
concernant les conditions de copie et
de distribution. Il n'y a aucune RESPONSABILITÉ LÉGALE.
Si vous découvrez un bogue dans la traduction de cette page de manuel,
veuillez envoyer un message à
Index
- NOM
-
- SYNOPSIS
-
- DESCRIPTION
-
- OPTIONS
-
- COPYRIGHT
-
- VOIR AUSSI
-
- BOGUES
-
- AUTEURS
-
- TRADUCTION
-
This document was created by
man2html,
using the manual pages.
Time: 05:06:39 GMT, September 19, 2025