DEPMOD(8) | depmod | DEPMOD(8) |
NUME
depmod - generează modulele .dep și fișierele .map
SINOPSIS
depmod [-b director-bază]
[-m director-moduled] [-o
director-ieșire] [-e] [-E Module.symvers]
[-F System.map] [-n] [-v] [-A] [-P
prefix] [-w] [versiunea]
depmod [-e] [-E Module.symvers]
[-F System.map] [-n] [-v]
[-P prefix]
[-w] [versiunea] [nume-fișier...]
DESCRIERE
Modulele nucleului Linux pot furniza servicii (numite „simboluri”) pentru a fi utilizate de alte module (folosind una dintre variantele EXPORT_SYMBOL din cod). Dacă un al doilea modul utilizează acest simbol, acest al doilea modul depinde în mod clar de primul modul. Aceste dependențe pot deveni destul de complexe.
depmod creează o listă de dependențe ale modulelor prin citirea fiecărui modul din <director-bază>/<director-module>/versiune. În mod implicit <director-module> este „/lib/modules” și <director-bază> este gol. Consultați opțiunile de mai jos pentru a le suprascrie atunci când este necesar. Aceasta determină simbolurile pe care fiecare modul le exportă și de care are nevoie. Această listă este scrisă în modules.dep și într-o versiune binară cu sume de control numită „modules.dep.bin”, în același director. Dacă numele fișierelor sunt date în linia de comandă, sunt examinate numai acele module (ceea ce este rareori util, cu excepția cazului în care sunt enumerate toate modulele). depmod creează, de asemenea, o listă de simboluri furnizate de module în fișierul numit „modules.symbols” și versiunea sa binară cu sume de control, „modules.symbols.bin”. În cele din urmă, depmod va produce un fișier numit „modules.devname” dacă modulele furnizează nume speciale de dispozitive (devname) care ar trebui să fie populate în „/dev” la pornire (de către un instrument precum «systemd-tmpfiles»).
Dacă este furnizată o versiune, atunci se utilizează directorul de module al acelei versiuni de nucleu în loc de versiunea curentă a nucleului (așa cum este returnată de uname -r).
OPȚIUNI
-a, --all
-A, --quick
-b director-bază, --basedir director-bază
Dacă este dată o rută relativă, aceasta este relativă la directorul curent de lucru.
Exemplu:
Aceasta așteaptă toate fișierele de intrare în /my/build/staging/dir/lib/modules/$(uname -r) și generează fișiere index în același director.
-m director-module, --moduledir=director-module
Sunt acceptate rute relative și absolute, dar acestea sunt întotdeauna relative la director-bază.
Exemple:
depmod -b /tmp/build -m kernel-modules
Aceasta așteaptă toate fișierele de intrare în /tmp/build/kernel-modules/$(uname -r) și generează fișiere index în același director.
Fără un argument însoțitor -b, director-module este relativ la /. Exemplu:
Aceasta așteaptă toate fișierele de intrare în /foo/bar/$(uname -r) și generează fișiere index în același director. Dacă „libkmod” nu este pregătită să gestioneze această locație arbitrară, nu va funcționa în timpul execuției.
-o director-ieșire, --outdir=director-ieșire
Dacă este dată o rută relativă, aceasta este relativă la directorul curent de lucru.
Exemplu:
Aceasta așteaptă toate fișierele de intrare sub /lib/modules/$(uname -r) și generează fișiere index sub /my/build/staging/dir/lib/modules/$(uname -r).
-C fișier sau director, --config =fișier sau director
-e, --errsyms
-E Module.symvers, --symvers=Module.symvers
-F System.map, --filesyms=System.map
-h, --help
-n, --show, --dry-run
-P
-v, --verbose
-V, --version
-w
DREPTURI DE AUTOR
Această pagină de manual a avut inițial drepturi de autor în 2002, aparținând lui Rusty Russell, IBM Corporation. Părți din această lucrare sunt protejate prin drepturi de autor pentru Jon Masters și alții.
CONSULTAȚI ȘI
ERORI
Vă rugăm să transmiteți orice raport de eroare la sistemul de urmărire a erorilor al kmod la https://github.com/kmod-project/kmod/issues/, împreună cu versiunea utilizată, pașii de reproducere a problemei și rezultatul așteptat.
AUTORI
Numeroase contribuții au venit de pe lista de discuții linux-modules <linux-modules@vger.kernel.org> și din Github. Dacă aveți o clonă de kmod.git în sine, ieșirea din git-shortlog(1) și git-blame(1) vă poate arăta autorii pentru anumite părți ale proiectului.
Lucas De Marchi <lucas.de.marchi@gmail.com> este responsabilul actual al proiectului.
TRADUCERE
Traducerea în limba română a acestui manual a fost făcută de Remus-Gabriel Chelu <remusgabriel.chelu@disroot.org>
Această traducere este documentație gratuită; citiți Licența publică generală GNU Versiunea 3 sau o versiune ulterioară cu privire la condiții privind drepturile de autor. NU se asumă NICIO RESPONSABILITATE.
Dacă găsiți erori în traducerea acestui manual, vă rugăm să trimiteți un e-mail la translation-team-ro@lists.sourceforge.net.
21 februarie 2025 | kmod |