MODPROBE.D(5) modprobe.d MODPROBE.D(5) NUME modprobe.d - directorul de configurare pentru modprobe SINOPSIS /etc/modprobe.d/*.conf /run/modprobe.d/*.conf /usr/local/lib/modprobe.d/*.conf /usr/lib/modprobe.d/*.conf /lib/modprobe.d/*.conf DESCRIERE Deoarece comanda modprobe poate adauga sau elimina mai mult de un modul, datorita faptului ca modulele au dependene, avem nevoie de o metoda de specificare a opiunilor care trebuie utilizate cu acele module. De asemenea, le putem utiliza pentru a crea nume-alias convenabile: nume alternative pentru un modul, sau pot inlocui comportamentul normal al comenzii modprobe pentru cei cu cerine speciale (cum ar fi inserarea mai multor module). Reinei ca numele modulelor i ale numelor-alias (precum alte nume de module) pot avea ,,-" sau ,,_" in ele: ambele sunt interschimbabile in toate comenzile modulelor, deoarece conversia semnelor de subliniere are loc automat. FORMAT DE CONFIGURARE Fiierele de configurare conin cate o comanda pe linie, liniile goale i liniile care incep cu ,,#" fiind ignorate (util pentru adaugarea de comentarii). Un ,,\" la sfaritul unei linii face ca aceasta sa continue pe linia urmatoare, ceea ce face fiierele puin mai ordonate. Consultai seciunea COMENZI de mai jos pentru mai multe informaii. DIRECTOARELE DE CONFIGURARE I PRECEDENA Fiierele de configurare sunt citite din directoarele enumerate in SINOPSIS in aceasta ordine de prioritate. Odata ce un fiier cu numele de fiier dat este incarcat, orice fiier cu acelai nume din directoarele urmatoare este ignorat. Toate fiierele de configurare sunt sortate in ordine lexicografica, indiferent de directorul in care se afla . Fiierele de configurare pot fi fie complet inlocuite (prin a avea un nou fiier de configurare cu acelai nume intr-un director cu prioritate mai mare), fie parial inlocuite (prin a avea un fiier de configurare care este ordonat ulterior). NOTA: Directoarele de configurare pot fi modificate prin intermediul variabilei de mediu MODPROBE_OPTIONS. A se vedea seciunea MEDIU din modprobe(8). COMENZI alias caracter-Joker nume-modul Acest lucru va permite sa dai nume alternative pentru un modul. De exemplu: ,,alias my-mod really_long_modulename" inseamna ca putei utiliza <> in loc de <>. De asemenea, putei utiliza caractere-joker de tip shell, astfel incat ,,alias my-mod* really_long_modulename" inseamna ca <> are acelai efect. Nu putei avea nume-alias catre alte nume-alias (aceasta este o nebunie), dar numele-alias pot avea opiuni, care vor fi adaugate la orice alte opiuni. Reinei ca modulele pot conine, de asemenea, propriile lor nume-alias pe care le putei vedea utilizand modinfo. Aceste nume-alias sunt utilizate in ultima instana (adica daca nu exista un modul real, comanda install, remove sau alias in configurare). blacklist nume-modul Modulele pot conine propriile lor nume-alias: de obicei, acestea sunt nume-alias care descriu dispozitivele pe care le administreaza, cum ar fi ,,pci:123...". Aceste nume-alias ,,interne" pot fi anulate prin cuvintele-cheie normale ,,alias", dar exista cazuri in care doua sau mai multe module administreaza aceleai dispozitive sau un modul pretinde in mod eronat ca administreaza un dispozitiv pe care nu il administreaza: cuvantul-cheie blacklist indica faptul ca toate numele-alias interne ale respectivului modul trebuie ignorate. install nume-modul comanda... Aceasta comanda instruiete modprobe sa execute comanda dvs. in loc sa insereze modulul in nucleu in mod normal. Comanda poate fi orice comanda shell: acest lucru va permite sa efectuai orice fel de procesare complexa dorii. De exemplu, daca modulul ,,fred" funcioneaza mai bine cu modulul ,,barney" deja instalat (dar nu depinde de acesta, deci modprobe nu il va incarca automat), ai putea spune <>, care ar face ceea ce dorii. Observai --ignore-install, care impiedica al doilea modprobe sa ruleze din nou aceeai comanda install. Vedei i comanda remove de mai jos. Viitorul pe termen lung al acestei comenzi ca soluie la problema furnizarii de dependene de module suplimentare nu este asigurat i se intenioneaza inlocuirea acestei comenzi cu un avertisment cu privire la eventuala sa eliminare sau depreciere la un moment dat intr-o versiune viitoare. Utilizarea sa complica determinarea automata a dependenelor modulelor de catre instrumentele de distribuie, cum ar fi <> (deoarece acestea trebuie acum sa interpreteze cumva ceea ce ar putea face comenzile install. Intr-o lume perfecta, modulele ar furniza toate informaiile de dependena fara utilizarea acestei comenzi i se lucreaza in prezent la implementarea suportului de dependene ,,soft" (opionale) in cadrul nucleului Linux. Daca utilizai irul ,,$CMDLINE_OPTS" in comanda, acesta va fi inlocuit de orice opiuni specificate in linia de comanda modprobe. Acest lucru poate fi util deoarece utilizatorii se ateapta ca <> sa transmita modulului argumentul ,,opt=1", chiar daca exista o comanda install in fiierul de configurare. Astfel, exemplul nostru de mai sus devine <>. options nume-modul opiune... Aceasta comanda va permite sa adaugai opiuni la modulul nume-modul (care poate fi un alias) de fiecare data cand acesta este introdus in nucleu: fie direct (utilizand <>), fie pentru ca modulul introdus depinde de acest modul. Toate opiunile sunt adaugate impreuna: ele pot proveni de la o intrare option pentru modulul in sine, pentru un alias i din linia de comanda. remove nume-modul comanda... Aceasta este similara cu comanda install de mai sus, cu excepia faptului ca este invocata atunci cand se executa <>. softdep nume-modul pre: module... post: module... Comanda softdep va permite sa specificai dependenele modulelor ,,soft", sau opionale. nume-modul poate fi utilizat fara aceste module opionale instalate, dar de obicei cu unele caracteristici lipsa. De exemplu, un controlor pentru un HBA de stocare poate necesita incarcarea unui alt modul pentru a utiliza caracteristicile de gestionare. modulele pre-deps i post-deps sunt liste de nume i/sau nume-alias ale altor module pe care <> va incerca sa le instaleze (sau sa le elimine) in ordine inainte i dupa modulul principal dat in argumentul nume-modul. Exemplu: Sa presupunem ca ,,softdep c pre: a b post: d e" este prevazut in configurare. Executarea <> este acum echivalenta cu <> fara softdep. Opiunile precum ,,--use-blacklist" sunt aplicate tuturor modulelor specificate, in timp ce parametrii modulului se aplica numai modulului c. Nota: daca exista comenzi install sau remove cu acelai argument nume-modul, softdep are intaietate. weakdep nume-modul module... Comanda weakdep va permite sa specificai dependene slabe de modul. Acestea sunt similare cu pre softdep, cu diferena ca spaiul utilizatorilor nu incearca sa incarce acea dependena inaintea modulului specificat. In schimb, nucleul poate solicita una sau mai multe dintre acestea in timpul testarii modulului, in funcie de hardware-ul la care este asociat. Scopul modulului weak este de a permite unui controlor sa specifice ca o anumita dependena poate fi necesara, astfel incat aceasta sa fie prezenta in sistemul de fiiere (de exemplu, in initramfs) atunci cand modulul respectiv este testat. Exemplu: Sa presupunem ,,weakdep c a b". Un program care creeaza un initramfs tie ca ar trebui sa adauge a, b i c la sistemul de fiiere, deoarece a i b pot fi necesare/dorite la momentul rularii. Atunci cand c este incarcat i este testat, acesta poate efectua apeluri la request_module(), determinand incarcarea lui a sau b. COMPATIBILITATE O versiune viitoare a <> va veni cu un avertisment puternic pentru a evita utilizarea install aa cum s-a explicat mai sus. Acest lucru se va intampla odata ce suportul pentru dependenele soft in nucleu va fi complet. Acest suport va completa suportul softdep existent in cadrul acestui instrument, oferind astfel de dependene direct in cadrul modulelor. DREPTURI DE AUTOR Aceasta pagina de manual a fost iniial publicata cu drepturi de autor 2004, Rusty Russell, IBM Corporation. CONSULTAI I modprobe(8), modules.dep(5) AUTORI Numeroase contribuii au venit de pe lista de discuii linux-modules i din Github. Daca avei o clona de kmod.git in sine, ieirea din git-shortlog(1) i git-blame(1) va poate arata autorii pentru anumite pari ale proiectului. Lucas De Marchi este responsabilul actual al proiectului. TRADUCERE Traducerea in limba romana a acestui manual a fost facuta de Remus- Gabriel Chelu Aceasta traducere este documentaie gratuita; citii Licena publica generala GNU Versiunea 3 sau o versiune ulterioara cu privire la condiii privind drepturile de autor. NU se asuma NICIO RESPONSABILITATE. Daca gasii erori in traducerea acestui manual, va rugam sa trimitei un e-mail la . kmod 26 august 2024 MODPROBE.D(5)