UDEV(7)                              udev                              UDEV(7)

NUME
       udev - gestionarea dinamica a dispozitivelor

DESCRIERE
       udev furnizeaza software de sistem cu evenimente de dispozitiv,
       gestioneaza permisiunile nodurilor de dispozitiv <?>i poate crea
       legaturi simbolice suplimentare in directorul /dev/ sau redenume<?>te
       interfe<?>ele de re<?>ea. De obicei, nucleul doar atribuie nume de
       dispozitive imprevizibile pe baza ordinii de descoperire. Legaturile
       simbolice sau denumirile semnificative ale dispozitivelor de re<?>ea
       ofera o modalitate de a identifica in mod fiabil dispozitivele pe baza
       proprieta<?>ilor lor sau a configura<?>iei curente.

       Demonul udev, systemd-udevd.service(8), prime<?>te evenimentele
       dispozitivelor ,,uevents" direct de la nucleu ori de cate ori un
       dispozitiv este adaugat sau eliminat din sistem, sau cand acesta i<?>i
       schimba starea. Atunci cand udev prime<?>te un eveniment de dispozitiv,
       acesta compara setul sau configurat de reguli cu diverse atribute ale
       dispozitivului pentru a identifica dispozitivul. Regulile care se
       potrivesc pot furniza informa<?>ii suplimentare despre dispozitiv care
       sa fie stocate in baza de date udev sau care sa fie utilizate pentru a
       crea nume semnificative de legaturi simbolice.

       Toate informa<?>iile despre dispozitiv pe care le proceseaza udev sunt
       stocate in baza de date udev <?>i trimise catre posibilii abona<?>i la
       evenimente. Accesul la toate datele stocate <?>i la sursele de
       evenimente este asigurat de biblioteca libudev.

FI<?>IERE DE REGULI
       Regulile udev sunt citite din fi<?>ierele localizate in directoarele de
       reguli de sistem /usr/lib/udev/rules.d <?>i
       /usr/local/lib/udev/rules.d, in directorul de execu<?>ie volatil
       /run/udev/rules.d <?>i in directorul de administrare locala
       /etc/udev/rules.d. Toate fi<?>ierele de reguli sunt sortate <?>i
       procesate colectiv in ordine lexicala, indiferent de directoarele in
       care se afla. Cu toate acestea, fi<?>ierele cu nume de fi<?>iere
       identice se inlocuiesc reciproc. Fi<?>ierele din /etc/ au cea mai mare
       prioritate, iar fi<?>ierele din /run/ au prioritate fa<?>a de
       fi<?>ierele cu acela<?>i nume din /usr/. Acest lucru poate fi utilizat
       pentru a inlocui un fi<?>ier de reguli furnizat de sistem cu un
       fi<?>ier local, daca este necesar; o legatura simbolica in /etc/ cu
       acela<?>i nume ca un fi<?>ier de reguli din /usr/lib/, care indica
       /dev/null, dezactiveaza in intregime fi<?>ierul de reguli. Fi<?>ierele
       de reguli trebuie sa aiba extensia ,,.rules"; alte extensii sunt
       ignorate.

       Fiecare linie din fi<?>ierul de reguli con<?>ine cel pu<?>in o pereche
       cheie-valoare. Cu excep<?>ia liniilor goale sau a liniilor care incep
       cu ,,#", care sunt ignorate. Exista doua tipuri de chei: match,
       (potrivire) <?>i assignment, (atribuire). Daca toate cheile de
       potrivire se potrivesc cu valorile lor, regula se aplica, iar cheilor
       de atribuire li se atribuie valorile specificate.

       O regula de potrivire poate redenumi o interfa<?>a de re<?>ea, poate
       adauga legaturi simbolice care indica nodul dispozitivului sau poate
       rula un program specificat ca parte a gestionarii evenimentelor.

       O regula consta dintr-o lista de una sau mai multe expresii
       cheie-operator-valoare, separate prin virgule. Fiecare expresie are un
       efect distinct, in func<?>ie de cheia <?>i operatorul utilizat.

   Operatori
       "=="
           Compara pentru egalitate. -- Cheia specificata are valoarea
           specificata.

       "!="
           Compara pentru inegalitate. -- Cheia specificata nu are valoarea
           specificata sau cheia specificata nu este prezenta deloc.

       "="
           Atribuie o valoare la o cheie. Cheile care reprezinta o lista sunt
           reini<?>ializate <?>i se atribuie doar aceasta singura valoare.

       "+="
           Adauga valoarea la o cheie care con<?>ine o lista de intrari.

       "-="
           Elimina valoarea dintr-o cheie care con<?>ine o lista de intrari.

           Adaugata in versiunea 217.

       ":="
           Atribuie o valoare unei chei in mod definitiv; nu permite nicio
           modificare ulterioara.

           Adaugata in versiunea 247.

   Valori
       Valorile sunt scrise ca <?>iruri de caractere intre ghilimele duble,
       cum ar fi ("string"). Pentru a include o ghilimea dubla (") in valoare,
       aceasta trebuie precedata de o bara oblica inversa (\"). Orice alte
       apari<?>ii ale unei bare oblice inverse urmate de un caracter nu sunt
       eludate. Altfel spus, <?>irul "\t\n" este tratat ca patru caractere:
       bara oblica inversa, t minuscula, bara oblica inversa, n minuscula.

       <?>irul poate fi prefixat cu o minuscula e (e"string\n") pentru a marca
       <?>irul ca fiind eludat in stilul C, a se vedea Secven<?>e de eludare
       in C[1]. De exemplu, e"string\n" este interpretat ca fiind format din 7
       caractere: 6 litere minuscule <?>i o linie noua. Acest lucru poate fi
       util pentru a scrie caractere speciale atunci cand un controlor de
       nucleu le solicita.

       <?>irul poate fi prefixat cu un i in minuscula (i"<?>ir") pentru a
       marca faptul ca <?>irul sau modelul se va potrivi fara a <?>ine cont de
       majuscule. De exemplu, i,,foo" se va potrivi cu ,,foo", ,,FOO", ,,FoO"
       <?>i a<?>a mai departe. Prefixul poate fi utilizat numai pentru
       regulile de potrivire (,,==") sau de nepotrivire (,,!="), de exemplu
       ATTR{foo}==i"abcd".

       Re<?>ine<?>i ca NUL nu este permis in niciuna dintre variantele de
       <?>iruri de caractere.

   Chei
       Urmatoarele nume de chei pot fi utilizate pentru a se potrivi cu
       proprieta<?>ile dispozitivelor. Unele dintre chei se potrivesc, de
       asemenea, cu proprieta<?>ile dispozitivelor parinte din sysfs, nu numai
       cu dispozitivul care a generat evenimentul. Daca intr-o singura regula
       sunt specificate mai multe chei care se potrivesc cu un dispozitiv
       parinte, toate aceste chei trebuie sa se potriveasca cu unul <?>i
       acela<?>i dispozitiv parinte.

       ACTION
           Se potrive<?>te cu numele ac<?>iunii evenimentului.

       DEVPATH
           Se potrive<?>te cu ruta la dispozitiv a dispozitivului de
           eveniment.

       KERNEL
           Se potrive<?>te cu numele dispozitivului de eveniment.

       KERNELS
           Cauta in sus in ruta dispozitivului un nume de dispozitiv
           corespunzator.

       NUME
           Se potrive<?>te cu numele unei interfe<?>e de re<?>ea. Poate fi
           utilizata dupa ce cheia NAME a fost stabilita intr-una din regulile
           precedente.

       SYMLINK
           Se potrive<?>te cu numele unei legaturi simbolice care vizeaza
           nodul. Poate fi utilizata dupa ce o cheie SYMLINK a fost stabilita
           intr-una din regulile precedente. Pot exista mai multe legaturi
           simbolice; numai una trebuie sa corespunda. In cazul in care
           operatorul este ,,!=", simbolul returneaza <<true>> numai daca nu
           exista nicio legatura simbolica corespunzatoare.

       SUBSYSTEM
           Se potrive<?>te cu subsistemul dispozitivului de evenimente.

       SUBSYSTEMS
           Cauta in sus in ruta dispozitivului pentru un nume de subsistem de
           dispozitiv corespunzator.

       DRIVER
           Se potrive<?>te cu numele controlorului dispozitivului de
           evenimente. Defini<?>i aceasta cheie numai pentru dispozitivele
           care sunt legate de un controlor in momentul in care este generat
           evenimentul.

       DRIVERS
           Cauta in sus in ruta dispozitivului pentru un nume de controlor de
           dispozitiv corespunzator.

       ATTR{nume-fi<?>ier}
           Se potrive<?>te cu valoarea atributului sysfs al dispozitivului de
           eveniment.

           Spa<?>iul alb la final in valorile atributelor este ignorat, cu
           excep<?>ia cazului in care valoarea de potrivire specificata
           con<?>ine ea insa<?>i un spa<?>iu alb la final.

       ATTRS{nume-fi<?>ier}
           Cauta in sus in ruta dispozitivului un dispozitiv cu valori care se
           potrivesc cu valorile atributelor sysfs. Daca sunt specificate mai
           multe potriviri ATTRS, toate trebuie sa se potriveasca pe acela<?>i
           dispozitiv.

           Spa<?>iul alb la final in valorile atributelor este ignorat, cu
           excep<?>ia cazului in care valoarea de potrivire specificata
           con<?>ine ea insa<?>i un spa<?>iu alb la final.

       SYSCTL{parametru nucleu}
           Se potrive<?>te cu valoarea unui parametru al nucleului.

           Adaugata in versiunea 240.

       ENV{cheie}
           Se potrive<?>te cu o valoare de proprietate a dispozitivului.

       CONST{cheie}
           Se potrive<?>te cu o constanta la nivel de sistem. Cheile acceptate
           sunt:

           "arch"
               Arhitectura sistemului. A se vedea ConditionArchitecture= in
               systemd.unit(5) pentru valorile posibile.

               Adaugata in versiunea 244.

           "virt"
               Mediul de virtualizare a sistemului. A se vedea
               systemd-detect-virt(1) pentru valorile posibile.

               Adaugata in versiunea 244.

           "cvm"
               Tehnologia de virtualizare confiden<?>iala a sistemului. A se
               vedea systemd-detect-virt(1) pentru valorile posibile.

               Adaugata in versiunea 254.

           Cheile necunoscute nu se vor potrivi niciodata.

           Adaugata in versiunea 244.

       TAG
           Se potrive<?>te cu una dintre etichetele dispozitivului. Poate fi
           utilizata dupa ce o cheie TAG a fost stabilita intr-una din
           regulile precedente. Pot exista mai multe etichete; trebuie sa se
           potriveasca doar una dintre ele. In cazul in care operatorul este
           ,,!=", simbolul returneaza <<true>> numai daca nu exista nicio
           eticheta care se potrive<?>te.

       TAGS
           Cauta in sus in ruta dispozitivului pentru un dispozitiv cu
           etichetal care sa se potriveasca. In cazul in care operatorul este
           ,,!=", simbolul returneaza <<true>> numai daca nu exista nicio
           eticheta care se potrive<?>te.

       TEST{masca de mod octal}
           Testeaza existen<?>a unui fi<?>ier. Daca este necesar, se poate
           specifica o masca de mod octal.

       PROGRAM
           Executa un program pentru a determina daca exista o potrivire;
           cheia este adevarata daca programul returneaza succes.
           Proprieta<?>ile dispozitivului sunt puse la dispozi<?>ia
           programului executat in mediu. Ie<?>irea standard a programului
           este disponibila in cheia RESULT.

           Aceasta poate fi utilizata numai pentru sarcini de prim-plan de
           foarte scurta durata. Pentru detalii, a se vedea RUN.

           Re<?>ine<?>i ca mai multe chei PROGRAM pot fi specificate intr-o
           singura regula, iar ,,=", ,,:=" <?>i ,,+=" au acela<?>i efect ca
           <?>i ,,=="&.

       RESULT
           Se potrive<?>te cu <?>irul returnat de ultimul apel PROGRAM.
           Aceasta cheie poate fi utilizata in aceea<?>i regula sau in orice
           regula ulterioara dupa un apel PROGRAM.

       Cele mai multe campuri accepta potrivirea modelelor globale de tip
       shell <?>i modelele alternative. Sunt acceptate urmatoarele caractere
       speciale:

       "*"
           Se potrive<?>te cu zero sau mai multe caractere.

       "?"
           Se potrive<?>te cu orice caracter unic.

       "[]"
           Se potrive<?>te cu orice caracter unic specificat intre parantezele
           drepte. De exemplu, <?>irul de caractere ,,tty[SR]" se potrive<?>te
           fie cu ,,ttyS", fie cu ,,ttyR". De asemenea, sunt acceptate
           intervalele prin intermediul caracterului ,,-". De exemplu, pentru
           a se potrivi cu intervalul tuturor cifrelor, se poate utiliza
           modelul ,,[0-9]". In cazul in care primul caracter care urmeaza
           dupa ,,[" este un ,,!", toate caracterele care nu sunt incluse sunt
           potrivite.

       "|"
           Separa modelele alternative. De exemplu, <?>irul de modele
           ,,abc|x*" se va potrivi fie cu ,,abc", fie cu ,,x*".

           Adaugata in versiunea 217.

       Se pot atribui valori urmatoarelor chei:

       NUME
           Numele care trebuie utilizat pentru o interfa<?>a de re<?>ea. A se
           vedea systemd.link(5) pentru un mecanism de nivel superior de
           stabilire a numelui interfe<?>ei. Numele unui nod de dispozitiv nu
           poate fi modificat de udev, ci doar pot fi create legaturi
           simbolice suplimentare.

       SYMLINK
           Numele unei legaturi simbolice care vizeaza nodul. Fiecare regula
           de potrivire adauga aceasta valoare la lista de legaturi simbolice
           care urmeaza sa fie create.

           Setul de caractere pentru a numi o legatura simbolica este limitat.
           Caracterele permise sunt ,,0-9A-Za-z#+-.:=@_/", secven<?>e de
           caractere UTF-8 valide <?>i codificarea hexazecimala ,,\x00". Toate
           celelalte caractere sunt inlocuite cu un caracter ,,_".

           Se pot specifica mai multe legaturi simbolice prin separarea
           numelor prin caracterul de spa<?>iu. In cazul in care mai multe
           dispozitive au acela<?>i nume, legatura indica intotdeauna
           dispozitivul cu cea mai mare prioritate de legatura. In cazul in
           care dispozitivul curent dispare, legaturile sunt reevaluate, iar
           dispozitivul cu urmatoarea prioritate a legaturii ,,link_priority"
           mai mare devine proprietarul legaturii. In cazul in care nu este
           specificata nicio prioritate a legaturii, ordinea dispozitivelor
           (<?>i care dintre ele de<?>ine legatura) este nedefinita.

           Numele legaturilor simbolice nu trebuie sa intre niciodata in
           conflict cu numele implicite ale nodurilor de dispozitiv ale
           nucleului, deoarece acest lucru ar avea ca rezultat un comportament
           imprevizibil.

       OWNER, GROUP, MODE
           Permisiunile pentru nodul de dispozitiv. Fiecare valoare
           specificata inlocuie<?>te valoarea implicita compilata.

       SECLABEL{modul}
           Aplica eticheta specificata pentru modulul de securitate Linux la
           nodul dispozitivului.

           Adaugata in versiunea 209.

       ATTR{cheie}
           Valoarea care trebuie sa fie scrisa intr-un atribut sysfs al
           dispozitivului de eveniment.

       SYSCTL{parametru nucleu}
           Valoarea care trebuie sa fie scrisa in parametrul nucleului.

           Adaugata in versiunea 220.

       ENV{cheie}
           Define<?>te o valoare a unei proprieta<?>i a dispozitivului. Numele
           proprieta<?>ilor cu un ,,." la inceput nu sunt stocate in baza de
           date <?>i nici nu sunt exportate in evenimente sau instrumente
           externe (executate, de exemplu, cu ajutorul cheii de potrivire
           PROGRAM).

       TAG
           Ata<?>eaza o eticheta la un dispozitiv. Aceasta este utilizata
           pentru a filtra evenimentele pentru utilizatorii
           func<?>ionalita<?>ii de monitorizare a libudev sau pentru a enumera
           un grup de dispozitive etichetate. Implementarea poate func<?>iona
           eficient numai daca doar cateva etichete sunt ata<?>ate unui
           dispozitiv. Este destinata a fi utilizata numai in contexte cu
           cerin<?>e specifice de filtrare a dispozitivelor, <?>i nu ca un
           indicator de uz general. O utilizare excesiva poate duce la o
           gestionare ineficienta a evenimentelor.

       RUN{tip}
           Specifica un program care urmeaza sa fie executat dupa procesarea
           tuturor regulilor pentru evenimentul respectiv. Cu ,,+=", aceasta
           invocare se adauga la lista, iar cu ,,=" sau ,,:=", inlocuie<?>te
           orice con<?>inut anterior al listei. Va rugam sa re<?>ine<?>i ca
           ambele tipuri ,,program" <?>i ,,builtin" descrise mai jos au o
           lista comuna, astfel incat <?>tergerea listei cu ,,:=" <?>i ,,="
           afecteaza ambele tipuri.

           tip poate fi:

           "program"
               Executa un program extern specificat ca valoare atribuita. Daca
               nu se indica o ruta absoluta, se a<?>teapta ca programul sa se
               afle in /usr/lib/udev; in caz contrar, trebuie specificata ruta
               absoluta.

               Aceasta este valoarea implicita in cazul in care nu este
               specificat niciun tip.

           "builtin"
               Ca <?>i program, dar folose<?>te unul dintre programele
               incorporate, in loc de unul extern.

               Adaugata in versiunea 199.

           Numele programului <?>i urmatoarele argumente sunt separate prin
           spa<?>ii. Ghilimelele simple pot fi folosite pentru a specifica
           argumentele cu spa<?>ii.

           Acest lucru poate fi utilizat numai pentru sarcini de prim-plan de
           foarte scurta durata. Rularea unui proces de evenimente pentru o
           perioada lunga de timp poate bloca toate evenimentele ulterioare
           pentru acest dispozitiv sau pentru un dispozitiv dependent.

           Re<?>ine<?>i ca rularea programelor care acceseaza re<?>eaua sau
           monteaza/demonteaza sisteme de fi<?>iere nu este permisa in cadrul
           regulilor udev, din cauza sandbox-ului implicit care este impus in
           systemd-udevd.service.

           Nu este permisa pornirea demonilor sau a altor procese care ruleaza
           mult timp; procesele bifurcate, deta<?>ate sau nu, vor fi omorate
           necondi<?>ionat dupa terminarea gestionarii evenimentelor. Pentru a
           activa procesele cu execu<?>ie indelungata din regulile udev,
           furniza<?>i o unitate de serviciu <?>i introduce<?>i-o intr-un
           dispozitiv udev folosind proprietatea de dispozitiv SYSTEMD_WANTS.
           Pentru detalii, consulta<?>i systemd.device(5).

       LABEL
           O eticheta numita catre care poate sari o eticheta GOTO.

       GOTO
           Sare la urmatoarea eticheta LABEL cu un nume corespunzator.

       IMPORT{tip}
           Importa un set de variabile ca proprieta<?>i ale dispozitivului, in
           func<?>ie de tip:

           "program"
               Executa un program extern specificat ca valoare atribuita <?>i,
               daca se intoarce cu succes, importa rezultatul acestuia, care
               trebuie sa fie in format de cheie de mediu. Specificarea rutei
               de acces, separarea comenzii/argumentului <?>i punerea intre
               ghilimele func<?>ioneaza ca in RUN.

               Adaugata in versiunea 199.

           "builtin"
               Similar cu ,,program", dar utilizeaza unul dintre programele
               incorporate <?>i nu unul extern.

               Adaugata in versiunea 199.

           "file"
               Importa un fi<?>ier text specificat ca valoare atribuita, al
               carui con<?>inut trebuie sa fie in format de cheie de mediu.

           "db"
               Importa o singura proprietate specificata ca valoare atribuita
               din baza de date a dispozitivului curent. Acest lucru
               func<?>ioneaza numai daca baza de date este deja completata de
               un eveniment anterior.

           "cmdline"
               Importa o singura proprietate din linia de comanda a nucleului.
               Pentru fanioanele simple, valoarea proprieta<?>ii este
               stabilita la ,,1".

           "parent"
               Importa cheile stocate de la dispozitivul parinte prin citirea
               intrarii din baza de date a dispozitivului parinte. Valoarea
               atribuita lui IMPORT{parent} este utilizata ca filtru pentru
               numele cheilor care urmeaza sa fie importate (cu aceea<?>i
               potrivire de tip global de tip shell utilizata pentru
               compara<?>ii).

           Aceasta poate fi utilizata numai pentru sarcini de prim-plan de
           foarte scurta durata. Pentru detalii, a se vedea RUN.

           Re<?>ine<?>i ca mai multe chei IMPORT{} pot fi specificate intr-o
           singura regula, iar ,,=", ,,:=" <?>i ,,+=" au acela<?>i efect ca
           <?>i ,,=="& adevarata in cazul in care importul are succes, cu
           excep<?>ia cazului in care se utilizeaza ,,!=" ca operator, ceea ce
           face ca cheia sa fie adevarata in cazul in care importul nu a
           reu<?>it.

       OP<?>IUNI
           Op<?>iuni pentru reguli <?>i dispozitive:

           link_priority=valoare
               Specifica prioritatea legaturilor simbolice create.
               Dispozitivele cu priorita<?>i mai mari suprascriu legaturile
               simbolice existente ale altor dispozitive. Valoarea implicita
               este 0.

           string_escape=none|replace
               Atunci cand se utilizeaza ,,replace", caracterele eventual
               nesigure din <?>irurile atribuite la NAME, SYMLINK <?>i
               ENV{cheie} sunt inlocuite. In cazul in care se utilizeaza
               ,,none", nu se efectueaza nicio inlocuire. Atunci cand nu este
               activata, inlocuirea se efectueaza pentru NAME, SYMLINK, dar nu
               <?>i pentru ENV{cheie}. Nu este definita in mod implicit.

           static_node=
               Aplica permisiunile specificate in aceasta regula la nodul de
               dispozitiv static cu numele specificat. De asemenea, pentru
               fiecare eticheta specificata in aceasta regula, creeaza o
               legatura simbolica in directorul
               /run/udev/static_node-tags/eticheta care sa arate catre nodul
               de dispozitiv static cu numele specificat. Crearea nodurilor de
               dispozitive statice este realizata de systemd-tmpfiles inainte
               de pornirea systemd-udevd. Este posibil ca nodurile statice sa
               nu aiba un dispozitiv de nucleu corespunzator; ele sunt
               utilizate pentru a declan<?>a incarcarea automata a modulelor
               de nucleu atunci cand sunt accesate.

           watch
               Monitorizeaza nodul dispozitivului cu inotify; cand nodul este
               inchis dupa ce a fost deschis pentru scriere, se sintetizeaza
               un eveniment de modificare uevent.

           nowatch
               Dezactiveaza monitorizarea unui nod de dispozitiv cu inotify.

           db_persist
               Activeaza fanionul (sticky bit) pe intrarea in baza de date
               udev a dispozitivului de evenimente. Proprieta<?>ile
               dispozitivului sunt apoi pastrate in baza de date chiar <?>i
               atunci cand se apeleaza udevadm info --cleanup-db. Aceasta
               op<?>iune poate fi utila in anumite cazuri (de exemplu,
               dispozitivele Device Mapper) pentru a pastra starea
               dispozitivului la tranzi<?>ia de la initrd.

               Adaugata in versiunea 241.

           log_level=nivel
               Prime<?>te un nume de nivel de jurnal, cum ar fi ,,debug" sau
               ,,info", sau o valoare speciala ,,reset". Atunci cand este
               specificat un nume de nivel de jurnal, nivelul maxim de jurnal
               este schimbat la nivelul respectiv. Atunci cand se stabile<?>te
               ,,reset", nivelul de jurnal specificat anterior este revocat.
               Valoarea implicita este nivelul de jurnal al procesului
               principal din systemd-udevd.

               Aceasta poate fi utila la depanarea evenimentelor pentru
               anumite dispozitive. Re<?>ine<?>i ca nivelul de jurnal este
               aplicat atunci cand linia care include aceasta regula este
               procesata. Prin urmare, pentru depanare, se recomanda ca acest
               nivel sa fie specificat mai devreme, de exemplu, pe prima linie
               din 00-debug.rules.

               Exemplu de depanare a procesarii uevent pentru interfe<?>ele de
               re<?>ea:

                   # /etc/udev/rules.d/00-debug-net.rules
                   SUBSYSTEM=="net", OPTIONS="log_level=debug"

               Adaugata in versiunea 248.

       Campurile ENV, GROUP, MODE, NAME, OWNER, PROGRAM, RUN, SECLABEL <?>i
       SYMLINK accepta substitu<?>ii simple de <?>iruri de caractere.
       Substitu<?>iile RUN sunt efectuate dupa ce toate regulile au fost
       procesate, chiar inainte de executarea programului, permi<?>and
       utilizarea proprieta<?>ilor dispozitivului stabilite de regulile de
       potrivire anterioare. Pentru toate celelalte campuri, substitu<?>iile
       sunt efectuate in timp ce regula individuala este procesata.
       Substitu<?>iile disponibile sunt:

       $kernel, %k
           Numele nucleului pentru acest dispozitiv.

       $number, %n
           Numarul nucleului pentru acest dispozitiv. De exemplu, ,,sda3" are
           numarul dat de nucleu 3.

       $devpath, %p
           Ruta la dispozitiv a dispozitivului.

       $id, %b
           Numele dispozitivului care se potrive<?>te atunci cand se cauta in
           sus in ruta dispozitivului pentru SUBSYSTEMS, KERNELS, DRIVERS <?>i
           ATTRS.

       $driver
           Numele controlorului dispozitivului care se potrive<?>te atunci
           cand se cauta in sus in ruta dispozitivului pentru SUBSYSTEMS,
           KERNELS, DRIVERS <?>i ATTRS.

       $attr{fi<?>ier}, %s{fi<?>ier}
           Valoarea unui atribut sysfs gasit la dispozitivul la care toate
           cheile regulii au corespuns. Daca dispozitivul care corespunde nu
           are un astfel de atribut, iar un test anterior KERNELS, SUBSYSTEMS,
           DRIVERS sau ATTRS a selectat un dispozitiv parinte, atunci se
           utilizeaza atributul din acel dispozitiv parinte.

           In cazul in care atributul este o legatura simbolica, ultimul
           element din <?>inta legaturii simbolice este returnat ca valoare.

       $env{cheie}, %E{cheie}
           O valoare a proprieta<?>ii dispozitivului.

       $major, %M
           Numarul major al nucleului pentru dispozitiv.

       $minor, %m
           Numarul minor al nucleului pentru dispozitiv.

       $result, %c
           <?>irul returnat de programul extern solicitat cu PROGRAM. Se poate
           selecta o singura parte a <?>irului, separata de un caracter de
           spa<?>iu, specificand numarul par<?>ii ca atribut: ,,%c{N}". In
           cazul in care numarul este urmat de caracterul ,,+", aceasta parte
           <?>i toate celelalte par<?>i ale <?>irului rezultat sunt inlocuite:
           ,,%c{N+}".

       $parent, %P
           Numele nodului dispozitivului parinte.

       $name
           Numele actual al dispozitivului. Daca nu este modificat de o
           regula, acesta este numele dispozitivului din nucleu.

       $links
           O lista de legaturi simbolice curente, separate prin spa<?>ii.
           Valoarea este stabilita numai in timpul unui eveniment de eliminare
           sau daca o regula anterioara a atribuit o valoare.

       $root, %r
           Valoarea udev_root.

       $sys, %S
           Punctul de montare sysfs.

       $devnode, %N
           Numele nodului dispozitivului.

       %%
           Caracterul ,,%" insu<?>i.

       $$
           Caracterul ,,%" insu<?>i.

CONSULTA<?>I <?>I
       systemd-udevd.service(8), udevadm(8), systemd.link(5)

NOTE
        1. Secven<?>e de eludare in C
           https://en.wikipedia.org/wiki/Escape_sequences_in_C#Table_of_escape_sequences

TRADUCERE
       Traducerea in limba romana a acestui manual a fost facuta de Remus-
       Gabriel Chelu <remusgabriel.chelu@disroot.org>

       Aceasta traducere este documenta<?>ie gratuita; citi<?>i Licen<?>a
       publica generala GNU Versiunea 3
       <https://www.gnu.org/licenses/gpl-3.0.html> sau o versiune ulterioara
       cu privire la condi<?>ii privind drepturile de autor.  NU se asuma
       NICIO RESPONSABILITATE.

       Daca gasi<?>i erori in traducerea acestui manual, va rugam sa
       trimite<?>i un e-mail la <translation-team-ro@lists.sourceforge.net>.

systemd 257.3                                                          UDEV(7)