Depmod - Linux Command - Unix naredba

Ime

depmod - obrađuje opise ovisnosti o modulima koji se mogu nadograditi

Sinopsis

depmod [-aA] [-ehnqrsuvV] [-C configfile ] [-F jezgra ] [-b bazni direktorijum ] [ forced_version ]
depmod [-enqrsuv] [-F kernelsyms ] module1.o module2.o ...

Opis

Namena depomoda i modprobea je da se Linux modularni kernel postane podesan za sve korisnike, administratore i održavače distribucije.

Depmod kreira datoteku zavisnosti poput "Makefile", zasnovanu na simbolima koje nalazi u setu modula navedenih u komandnoj liniji ili iz direktorija navedenih u konfiguracijskoj datoteci. Ovu datoteku zavisnosti kasnije koristi modprobe za automatsko učitavanje tačnog modula ili stega modula.

Normalna upotreba depmoda je da uključi liniju


/ sbin / depmod -a

negde u rc-datotekama u /etc/rc.d , tako da će tačne modulske zavisnosti biti dostupne odmah nakon pokretanja sistema. Imajte na umu da je opcija -a sada neobavezna. Za svrhe pokretanja, opcija -q bi mogla biti prikladnija, jer to onemogućava depomod o nerešenim simbolima.

Takođe je moguće kreirati datoteku zavisnosti odmah nakon sastavljanja novog kernela. Ako uradite " depmod -a 2.2.99 " kada ste sastavili jezgro 2.2.99 i njegove module prvi put, dok se i dalje radi npr. 2.2.98, fajl će se kreirati na ispravnom mjestu. U ovom slučaju, zavisnosti od kernela neće biti garantovane. Pogledajte opcije -F , -C i -b iznad za više informacija o postupanju sa ovim.

Dok gradi odnos između modula i simbola koji izvoze drugi moduli, depmod ne uzima u obzir GPL status modula niti izvezenih simbola. To jest, depmod neće označiti grešku ako se modul bez GPL kompatibilne licence odnosi na simbol GPL samo (EXPORT_SYMBOL_GPL u kernelu). Međutim, insmod će odbiti da reši samo simbole GPL za modele koji nisu GPL, tako da će stvarno opterećenje propasti.

Opcije

-a , -all

Tražite module u svim direktorijima navedenim u (opciono) konfiguracionoj datoteci /etc/modules.conf .

- A , - skok

Uporedite vremenske oznake datoteke i, ako je potrebno, ponašate kao depomod -a . Ova opcija ažurira samo datoteku zavisnosti ako se nešto promeni.

-e , - errsimi

Pokazati sve nerešene simbole za svaki modul.

-h , - pomoć

Prikažite rezime opcija i odmah izađite.

-n , - šou

Napišite datoteku zavisnosti na stdout umjesto u stablu / lib / modula .

-q , - pitanja

Recite depmodu da ćuti i da se ne požali na nedostajuće simbole.

-r , -root

Neki korisnici kompajliraju module pod nekorijenskim korisničkim ID-om, zatim instaliraju module kao root. Ovaj proces može ostaviti module u vlasništvu nekorijenskog korisnika, iako je direktorijum modula u vlasništvu root-a. Ako je korisnik koji nije korijen kompromitovan, uljez može prepisati postojeće module u vlasništvu tog korisnika i koristiti ovu ekspoziciju za bootstrap do root pristupa.

Podrazumevano, modutils će odbaciti pokušaje korištenja modula koji nije u vlasništvu root-a. Određivanje -r će potisnuti grešku i omogućiti rootu učitavanje modula koje nisu u vlasništvu root-a.

Upotreba -r je velika izloženost bezbednosti i nije preporučljiva.

-s , --sloglog

Napišite sve poruke o grešci preko syslog-demona umjesto stderr-a.

-u , - nerazrešeno-greška

depmod 2.4 ne postavlja povratni kod kada postoje nerešeni simboli. Sledeće veliko izdanje modutils (2.5) će postaviti povratni kod za nerešene simbole. Neke distribucije žele ne-nultni povratni kod u modutils 2.4, ali ta promjena može izazvati probleme za korisnike koji očekuju staru ponašanje. Ako želite ne-nultni povratni kod u depodu 2.4, navedite -u . depmod 2.5 će tiho ignorisati -u zastavu i uvek će dati nulti povratni kod za nerešene simbole.

-v , - verbose

Pokažite ime svakog modula dok se obrađuje.

-V , - verzija

Prikazati verziju depmoda .

Sledeće opcije su korisne za osobe koje upravljaju distribucijama:

-b bazni direktorijum , bazirani direktorijum bazira

Ako su stablo direktorija / lib / moduli koji sadrže pod-stabla modula pomereni na nekom drugom mestu da bi se rukovali modulima za različito okruženje, opcija -b govori depmodu gde da pronađe premještenu sliku stabla / lib / modula . Reference datoteka u izlaznoj datoteci depmoda koja je izgrađena, modules.dep , neće sadržati putanju baziranog direktorijuma . To znači da kada se stablo datoteka pomera iz baziranog direktorijuma / lib / modula u / lib / modul u finalnoj distribuciji, sve referencije će biti tačne.

-C configfile , --config configfile

Koristite datoteku configfile umjesto /etc/modules.conf . Varijabla okruženja MODULECONF se također može koristiti za odabir različite konfiguracione datoteke od podrazumevanih /etc/modules.conf (ili /etc/conf.modules (zastarjela)).

Kada varijable okoline

Postavljen je UNAME_MACHINE , modutils će koristiti svoju vrijednost umjesto polja mašine iz uname () syscall-a. Ovo se uglavnom koristi kada sastavljate 64-bitne module u 32-bitnom korisničkom prostoru ili obrnuto, postavite UNAME_MACHINE na vrstu modula koji se gradi. Trenutni moduli ne podržavaju režim potpunog popuštanja modula, ograničen je na izbor između 32 i 64 bitnih verzija arhitekture domaćina.

-F kernelsyms , --filesyms kernelsyms

Prilikom kreiranja datoteka zavisnosti za različite jezgre od tekućeg kernela, važno je da depmod koristi tačan skup simbola kernela kako bi riješio reference kernela u svakom modulu. Ovi simboli mogu biti kopija System.map-a iz drugog jezgra ili kopija izlaza iz / proc / ksyms . Ako vaš kernel koristi verzionirane simbole, najbolje je koristiti kopiju izlaza / proc / ksyms , jer ta datoteka sadrži verzije simbola simbola kernela. Međutim, možete koristiti System.map čak i sa verifikovanim simbolima.

Konfiguracija

Ponašanje depmoda i modprobe može se prilagoditi (opciono) konfiguracionom datotekom /etc/modules.conf .
Pogledajte kompletan opis modprobe (8) i modules.conf (5).

Strategija

Svaki put kada sastavite novi kernel, naredba " make modules_install " kreira novi direktorijum, ali neće promijeniti podrazumevano.

Kada dobijete modul koji nije povezan sa distribucijom jezgre, trebalo bi ga staviti u jedan od direktorijuma nezavisnih od verzije pod / lib / modulima .

Ovo je podrazumevana strategija, koja se može preklapati u /etc/modules.conf .

Vidi Takođe

lsmod (8), ksyms (8)

Važno: Koristite komandu čovjeka ( % čovjek ) da biste videli kako se na vašem računaru koristi komanda.