UDEVADM(8)

NUME
udevadm - instrument de gestionare udev

SINOPSIS

udevadm [--debug] [--version] [--help]

udevadm info [opțiuni...] [rută-dispozitiv|rută-sistem|id|unitate...]

udevadm trigger [opțiuni] [rută-dispozitiv|rută-sistem|id|unitate...]

udevadm settle [opțiuni...]

udevadm control opțiuni...

udevadm monitor [opțiuni...]

udevadm test [opțiuni...] rută-dispozitiv|rută-sistem|id|unitate...]

udevadm test-builtin [opțiuni...] comanda rută-dispozitiv|rută-sistem|id|unitate...]

udevadm verify [opțiuni...] [fișiere...]

udevadm cat [opțiuni...] [fișiere...]

udevadm wait [opțiuni...] rută-dispozitiv|rută-sistem...

udevadm lock [opțiuni...] comanda...

DESCRIERE

udevadm așteaptă o comandă și opțiuni specifice comenzii. Acesta controlează comportamentul în timpul rulării al systemd-udevd, solicită evenimente de la nucleu, gestionează coada de evenimente și oferă mecanisme simple de depanare.

OPȚIUNI

-d, --debug
    Afișează mesajele de depanare la ieșirea de eroare standard. Această opțiune este implicită în comenzile udevadm test și udevadm test-builtin.

-V, --version
    Afișează informațiile despre versiune și iese.

-h, --help
    Afișează acest mesaj de ajutor și iese.

  udevadm info [opțiuni...] [rută-dispozitiv|rută-sistem|id|unitate...]

Interoghează baza de date udev pentru informații despre dispozitive.

Argumentele poziționale trebuie să fie utilizate pentru a specifica unul sau mai multe dispozitive. Fiecare poate fi un nume de dispozitiv (caz în care trebuie să înceapă cu „/dev/”), o rută de sistem (caz în care trebuie să înceapă cu „/sys/”), un ID de dispozitiv (cum ar fi „n1”, „c5:1” sau „b259:1”, a se vedea sd_device_get_device_id(3)). sau un nume de unitate de dispozitiv systemd (caz în care trebuie să se termine cu „.device”, a se vedea systemd.device(5)).

-q, --query=TIP
    Interoghează baza de date pentru tipul specificat de date privind dispozitivul. TIPurile valide sunt: name, symlink, path, property, all.

--property=NUME
    Atunci când se afișează proprietățile dispozitivului utilizând opțiunea --query=property, limitează afișarea la proprietățile specificate în argument. Argumentul trebuie să fie o listă de nume de proprietăți separate prin virgule. Dacă nu este specificat, sunt afișate toate proprietățile cunoscute.

    Adăugată în versiunea 250.

--value
    Atunci când se afișează proprietățile dispozitivului utilizând opțiunea --query=property, afișează numai valorile acestora și ignoră numele proprietății și „=”.

    Nu poate fi utilizată împreună cu opțiunea -x/--export sau -P/--export-prefix.

    Adăugată în versiunea 250.

-p, --path=RUTĂ_DISPOZITIV
    Ruta „/sys/” a dispozitivului de interogat, de exemplu „[/sys/]/class/block/sda”. Această opțiune este o alternativă la argumentul pozițional cu un prefix „/sys/”. udevadm info --path=/class/block/sda este echivalent cu udevadm info /sys/class/block/sda.

-n, --name=FIȘIER
    Numele nodului dispozitivului sau o legătură simbolică pentru interogare, de exemplu „[/dev/]/sda”. Această opțiune este o alternativă la argumentul pozițional cu un prefix „/dev/”. Comanda udevadm info --name=sda este echivalentă cu udevadm info /dev/sda.

-r, --root
    Afișează rutele absolute în interogarea name sau symlink.

-a, --attribute-walk
    Afișează toate proprietățile sysfs ale dispozitivului specificat care pot fi utilizate în regulile udev pentru a se potrivi cu dispozitivul specificat. Afișează toate dispozitivele de-a lungul lanțului, până la rădăcina sysfs, care pot fi utilizate în regulile udev.

    Această opțiune acceptă modul de ieșire JSON (consultați --json= mai jos). Rețineți că, deoarece această opțiune generează mai multe obiecte JSON, modul JSON-SEQ este activat automat (RFC7464). (Notă: instrumente precum jq[1] acceptă nativ JSON-SEQ prin intermediul opțiunii --seq.)

-t, --tree
    Afișează un arbore sysfs. Aceasta itera recursiv prin ierarhia sysfs și o afișează într-o structură arborescentă. Dacă este specificată o rută, sunt afișate numai subarborele de mai jos și directoarele părinte ale acestuia. Aceasta va afișa atât elemente de dispozitiv, cât și de subsistem.

    Adăugată în versiunea 251.

-x, --export
    Imprimă ieșirea ca perechi cheie/valoare. Valorile sunt închise între ghilimele simple. Aceasta are efect numai atunci când este specificată --query=property sau --device-id-of-file=FIȘIER.

-P, --export-prefix=NUME
    Adaugă un prefix la numele cheii valorilor exportate. Aceasta implică --export.

-d, --device-id-of-file=FIȘIER
    Afișează numerele majore/minore ale dispozitivului de bază, pe care se află fișierul. Dacă acest lucru este specificat, toate argumentele poziționale sunt ignorate.

-e, --export-db
    Exportă conținutul bazei de date udev.

-c, --cleanup-db
    Curăță baza de date udev.

-w[SECUNDE], --wait-for-initialization[=SECUNDE]
    Așteaptă ca dispozitivul să fie inițializat. Dacă argumentul SECUNDE nu este specificat, implicit se așteaptă pentru totdeauna.

    Adăugată în versiunea 243.

--subsystem-match[=SUBSYSTEM], --subsystem-nomatch[=SUBSYSTEM]
    Atunci când este utilizată cu --export-db, afișează numai dispozitivele care aparțin sau nu subsistemului dat.

    Adăugată în versiunea 251.

--attr-match[=FIȘIER[=VALOARE]], --attr-nomatch[=FIȘIER[=VALOARE]]
    Atunci când este utilizată cu --export-db, afișează numai dispozitivele care corespund sau nu corespund atributului dat.

    Adăugată în versiunea 251.

--property-match[=CHEIE=VALOARE]
    Atunci când este utilizată cu --export-db, afișează numai dispozitivele care corespund proprietății și valorii date.

    Adăugată în versiunea 251.

--tag-match[=ETICHETA]
    Atunci când este utilizată cu --export-db, afișează numai dispozitivele cu eticheta dată.

    Adăugată în versiunea 251.

--sysname-match[=NUME]
    Atunci când este utilizată cu --export-db, afișează numai dispozitivele cu ruta „/sys” dată.

    Adăugată în versiunea 251.

--name-match[=NUME]
    Atunci când este utilizată cu --export-db, afișează numai dispozitivele cu numele dat în „/dev”.

    Adăugată în versiunea 251.

--parent-match[=NUME]
    Atunci când este utilizată cu --export-db, afișează numai dispozitivele cu dispozitivul părinte dat.

    Adăugată în versiunea 251.

--initialized-match, --initialized-nomatch
    Atunci când este utilizată cu --export-db, afișează numai dispozitivele care sunt inițializate sau respectiv neinițializate.

    Adăugată în versiunea 251.

--json=MODUL
    Afișează ieșirea formatată ca JSON. Așteaptă una dintre următoarele variante: short” (pentru o ieșire cât mai scurtă posibil, fără spații albe sau pauze de linie redundante), „pretty” (pentru o versiune plăcută a acesteia, cu indentare și pauze de linie) sau „off” (pentru a dezactiva ieșirea JSON, implicit).

--no-pager
    Nu canalizează (pipe) ieșirea către un paginator.

Ieșirea generată arată intrarea curentă în baza de date a dispozitivului într-un format laconic. Fiecare linie afișată este prefixată cu unul dintre următoarele caractere:

Tabelul 1. udevadm prefixe de ieșire a informațiilor
Prefix | Semnificație
"P:" | Ruta dispozitivului în „/sys/”
"M:" | Numele dispozitivului în „/sys/” (adică ultima componentă din „R:”)
"R:" | Numărul dispozitivului în „/sys/” (adică sufixul numeric al ultimei componente din „P:”)
"J:" | ID dispozitiv
"U:" | Subsistemul nucleului
"B:" | Subsistemul controlorului
"T:" | Tipul de dispozitiv al nucleului în cadrul subsistemului
"D:" | Nodul dispozitivului nucleului major/minor
"I:" | Indicele interfeței de rețea
"N:" | Numele nodului dispozitivului nucleului
"L:" | Prioritatea legăturii simbolice a nodului dispozitivului
"S:" | Legătură simbolică a nodului dispozitivului
"Q:" | Numărul secvenței dispozitivului de blocuri (DISKSEQ)
"V:" | Controlorul atașat
"E:" | Proprietatea dispozitivului

  udevadm trigger [opțiuni...] [rută-dispozitiv|rută-sistem|id|unitate...]

Solicită evenimente de dispozitiv de la nucleu. Utilizată în principal pentru a reda evenimentele la momentul conectării la rece a sistemului.

Preia specificațiile dispozitivului ca argumente poziționale. A se vedea descrierea lui udevadm info de mai sus.

-v, --verbose
    Afișează lista dispozitivelor care vor fi declanșate.

-n, --dry-run
    Nu declanșează de fapt evenimentul.

-q, --quiet
    Suprimă înregistrarea erorilor din evenimentele de declanșare.

    Adăugată în versiunea 248.

-t, --type=TIP
    Declanșează un anumit tip de dispozitive. Tipurile valabile sunt „all”, „devices” și „subsystems”. Valoarea implicită este „devices”.

-c, --action=ACȚIUNEA
    Tipul evenimentului care urmează să fie declanșat. Acțiunile posibile sunt „add”, „remove”, „change”, „move”, „online”, „offline”, „bind” și „unbind”. De asemenea, valoarea specială „help” poate fi utilizată pentru a lista acțiunile posibile. Valoarea implicită este „change”.

--prioritized-subsystem=SUBSISTEM[,SUBSISTEM...]
    Primește o listă de subsisteme separate prin virgulă. La declanșarea evenimentelor pentru dispozitive, dispozitivele din subsistemele specificate și părinții acestora sunt declanșate primele. De exemplu, dacă --prioritized-subsystem=block,net, sunt declanșate mai întâi toate dispozitivele bloc și părinții acestora, apoi toate dispozitivele de rețea și părinții acestora și, în final, celelalte dispozitive. Această opțiune poate fi specificată de mai multe ori și, în acest caz, listele subsistemelor vor fi fuzionate. Adică, --prioritized-subsystem=block --prioritized-subsystem=net este echivalentă cu --prioritized-subsystem=block,net.

    Adăugată în versiunea 251.

-s, --subsystem-match=SUBSISTEM
    Declanșează evenimente pentru dispozitivele care aparțin unui subsistem care coincide specificării făcute. Această opțiune acceptă potrivirea modelelor în stil shell. În cazul în care această opțiune este specificată de mai multe ori, fiecare rezultat care se potrivește este „ORed”, adică toate dispozitivele din fiecare subsistem sunt declanșate.

-S, --subsystem-nomatch=SUBSISTEM
    Nu declanșează evenimente pentru dispozitivele care aparțin unui subsistem care coincide specificării făcute. Această opțiune acceptă potrivirea modelelor în stil shell. Atunci când această opțiune este specificată de mai multe ori, fiecare rezultat al potrivirii este „ANDed”, adică dispozitivele care nu corespund tuturor subsistemelor specificate sunt declanșate.

-a, --attr-match=ATRIBUT=VALOARE
    Declanșează evenimente pentru dispozitivele cu un atribut sysfs care coincide specificării făcute. În cazul în care este specificată o valoare împreună cu numele atributului, conținutul atributului este comparat cu valoarea dată, utilizând un model de comparare în stilul shell. Dacă nu este specificată nicio valoare, este verificată existența atributului sysfs. Atunci când această opțiune este specificată de mai multe ori, fiecare rezultat de potrivire este „ANDed”, adică sunt declanșate numai dispozitivele care au toate atributele specificate.

-A, --attr-nomatch=ATRIBUT=VALOARE
    Nu declanșează evenimente pentru dispozitivele cu un atribut sysfs care coincide specificării făcute. În cazul în care este specificată o valoare împreună cu numele atributului, conținutul atributului este comparat cu valoarea dată utilizând un model de comparare în stilul shell. Dacă nu este specificată nicio valoare, este verificată existența atributului sysfs. Atunci când această opțiune este specificată de mai multe ori, fiecare rezultat de potrivire este „ANDed”, adică sunt declanșate numai dispozitivele care nu au niciunul dintre atributele specificate.

-p, --property-match=PROPRIETATE=VALOARE
    Declanșează evenimente pentru dispozitivele cu o valoare de proprietate care coincide specificării făcute. Această opțiune acceptă potrivirea modelelor în stilul shell. Atunci când această opțiune este specificată de mai multe ori, fiecare rezultat al potrivirii este „ORed”, adică sunt declanșate dispozitivele care au una dintre proprietățile specificate.

-g, --tag-match=ETICHETA
    Declanșează evenimente pentru dispozitivele cu o etichetă care coincide specificării făcute. Atunci când această opțiune este specificată de mai multe ori, fiecare rezultat corespunzător este „ANDed”, adică dispozitivele care au toate etichetele specificate sunt declanșate.

-y, --sysname-match=NUME
    Declanșează evenimente pentru dispozitivele pentru care ultima componentă (adică numele fișierului) a rutei „/sys/” corespunde RUTEI specificate. Această opțiune acceptă potrivirea modelelor în stilul shell. Atunci când această opțiune este specificată de mai multe ori, fiecare rezultat de potrivire este ORed, adică toate dispozitivele care au oricare dintre NUMELE specificate sunt declanșate.

--name-match=NUME
    Declanșează evenimente pentru dispozitivele cu o rută de dispozitiv care coincide specificării făcute. Atunci când această opțiune este specificată de mai multe ori, fiecare rezultat care se potrivește este „ORed”, adică toate dispozitivele specificate sunt declanșate.

    Adăugată în versiunea 218.

-b, --parent-match=RUTĂ_SISTEM
    Declanșează evenimente pentru toți copiii unui anumit dispozitiv. În cazul în care această opțiune este specificată de mai multe ori, fiecare rezultat care coincide este „ORed”, adică toți copiii fiecărui dispozitiv specificat sunt declanșați.

--initialized-match, --initialized-nomatch
    Atunci când --initialized-match este specificată, declanșează evenimente pentru dispozitivele care sunt deja inițializate de systemd-udevd și ignoră dispozitivele care nu sunt încă inițializate.

    Atunci când --initialized-nomatch este specificată, declanșează evenimente pentru dispozitivele care nu sunt încă inițializate de systemd-udevd și ignoră dispozitivele care sunt deja inițializate.

    De obicei, este esențial ca aplicațiile care intenționează să utilizeze o astfel de potrivire să se asigure că este instalată o regulă udev adecvată care stabilește cel puțin o proprietate pe dispozitivele care vor fi potrivite. Pentru mai multe detalii, consultați secțiunea „DISPOZITIVE INIȚIALIZATE” de mai jos.

        Avertisment
        --initialized-nomatch poate economisi o cantitate semnificativă de timp în comparație cu redeclanșarea tuturor dispozitivelor din sistem și, de exemplu, poate fi utilizată pentru a optimiza timpul de pornire. Cu toate acestea, acest lucru nu este sigur pentru a fi utilizat într-o secvență de pornire în general. În special, atunci când regulile udev pentru un dispozitiv depind de dispozitivele sale părinte (de exemplu, cheile „ATTRS” sau „IMPORT{parent}”, consultați udev(7) pentru mai multe detalii), starea finală a dispozitivului devine ușor instabilă cu această opțiune.

    Adăugată în versiunea 251.

--include-parents
    Declanșează dispozitivele părinte ale dispozitivelor găsite, chiar dacă părinții nu corespund condițiilor filtrului. Acest lucru este util în cazul în care dorim să limităm activitățile de conectare la cald „coldplug” la anumite dispozitive sau subsisteme.

    Adăugată în versiunea 258.

-w, --settle
    În afară de declanșarea evenimentelor, așteaptă, de asemenea, ca aceste evenimente să se încheie. Rețineți că acest lucru este diferit de apelarea udevadm settle. udevadm settle așteaptă ca toate evenimentele să se încheie. Această opțiune așteaptă doar ca evenimentele declanșate de aceeași comandă să se încheie.

    Adăugată în versiunea 238.

--uuid
    Declanșează evenimentele dispozitivelor sintetizate și asociază un UUID aleatoriu cu fiecare. Aceste UUID-uri sunt imprimate la ieșirea standard, o linie pentru fiecare eveniment. Aceste UUID-uri sunt incluse în blocul de mediu uevent (în proprietatea „SYNTH_UUID=”) și pot fi utilizate pentru a urmări livrarea evenimentelor generate.

    Adăugată în versiunea 249.

--wait-daemon[=SECUNDE]
    Înainte de a declanșa uevents, așteaptă ca demonul «systemd-udevd» să fie inițializat. Opțional ia valoarea timpului de așteptare. Timpul de așteptare implicit este de 5 secunde. Acest lucru este echivalent cu invocarea udevadm control --ping înainte de udevadm trigger.

    Adăugată în versiunea 241.

În plus, argumentele poziționale opționale pot fi utilizate pentru a specifica numele dispozitivelor sau rutele „sys”. Acestea trebuie să înceapă cu „/dev/” sau, respectiv, „/sys/”.

  udevadm settle [opțiuni...]

Monitorizează coada de evenimente udev și iese dacă toate evenimentele curente sunt gestionate.

-t, --timeout=SECUNDE
    Numărul maxim de secunde de așteptat până când coada de evenimente devine goală. Valoarea implicită este de 120 de secunde. O valoare de 0 va verifica dacă coada este goală și va reveni întotdeauna imediat. O valoare diferită de zero va returna un cod de ieșire de 0 dacă coada a devenit goală înainte ca timpul de așteptare să fie atins, altfel este diferită de zero.

-E, --exit-if-exists=FIȘIER
    Oprește așteptarea dacă fișierul există.

Consultați systemd-udev-settle.service(8) pentru mai multe informații.

  udevadm control opțiune...

Modifică starea internă a demonului udev care rulează.

-e, --exit
    Semnalizează și așteaptă ca systemd-udevd să iasă. Nicio opțiune, cu excepția --timeout, nu poate fi specificată după această opțiune. Rețineți că systemd-udevd.service conține Restart=always și astfel, ca rezultat, această opțiune repornește systemd-udevd. Dacă doriți să opriți systemd-udevd.service, utilizați următoarele:

        systemctl stop systemd-udevd-control.socket systemd-udevd-kernel.socket systemd-udevd-varlink.socket systemd-udevd.service

-l, --log-level=valoare
    Stabilește nivelul jurnalului intern al systemd-udevd. Valorile valide sunt prioritățile numerice syslog sau reprezentările lor textuale: emerg, alert, crit, err, warning, notice, info și debug.

-s, --stop-exec-queue
    Semnalizează systemd-udevd să oprească execuția evenimentelor noi. Evenimentele primite vor fi puse la coadă.

-S, --start-exec-queue
    Semnalizează systemd-udevd pentru a permite executarea evenimentelor.

-R, --reload
    Trimite un semnal către systemd-udevd pentru a reîncărca fișierele de reguli și alte baze de date, cum ar fi indexul modulelor nucleului. Reîncărcarea regulilor și a bazelor de date nu aplică nicio modificare dispozitivelor deja existente; noua configurație va fi aplicată numai la evenimentele noi.

-p, --property=CHEIE=valoare
    Definește o proprietate globală pentru toate evenimentele.

-m, --children-max=valoare
    Stabilește numărul maxim de evenimente pe care systemd-udevd le va gestiona în același timp. Dacă este specificat 0, atunci numărul maxim este determinat pe baza resurselor sistemului.

--ping
    Trimiteți un mesaj ping către systemd-udevd și așteaptă răspunsul. Acest lucru poate fi util pentru a verifica dacă demonul systemd-udevd rulează.

    Adăugată în versiunea 241.

--trace=BOOLEAN
    Activează/dezactivează înregistrarea traseelor de execuție în systemd-udevd.

    Adăugată în versiunea 258.

--revert
    Anulează configurările stabilite anterior cu udevadm control command. Atunci când sunt specificate, configurările stabilite cu -l/--log-level=, --trace, -m/--children-max= și -p/--property= vor fi șterse.

    Adăugată în versiunea 258.

-t, --timeout=secunde
    Numărul maxim de secunde de așteptat pentru un răspuns de la systemd-udevd.

--load-credentials
    Atunci când este specificată, următoarele acreditări sunt utilizate atunci când sunt transmise:

    udev.conf.*
        Aceste acreditări trebuie să conțină date de configurare udev.conf(5) valide. Din fiecare acreditare corespunzătoare este creat un fișier separat. Exemplu: o acreditare pasată „udev.conf.50-foobar” va fi copiată într-un fișier de configurare „/run/udev/udev.conf.d/50-foobar.conf”.

        Adăugată în versiunea 256.

    udev.rules.*
        Aceste acreditări trebuie să conțină reguli udev(7) valide. Din fiecare acreditare corespunzătoare este creat un fișier separat. Exemplu: o acreditare pasată „udev.rules.50-foobar” va fi copiată într-un fișier de configurare „/run/udev/rules.d/50-foobar.rules”.

        Adăugată în versiunea 256.

    Rețineți că această opțiune nu implică opțiunea --reload. Deci, dacă systemd-udevd rulează deja, vă rugăm să specificați și -reload pentru ca fișierele de reguli udev copiate să fie utilizate de systemd-udevd.

    Adăugată în versiunea 256.

  udevadm monitor [opțiuni...]

Ascultă evenimentele uevents ale nucleului și evenimentele trimise de o regulă udev și imprimă ruta dispozitivului evenimentului în consolă. Acesta poate fi utilizat pentru a analiza calendarul evenimentelor, comparând marcajele temporale ale evenimentului uevent al nucleului și ale evenimentului udev.

-k, --kernel
    Afișează evenimentele uevents ale nucleului.

-u, --udev
    Afișează evenimentul udev după procesarea regulii.

-p, --property
    Afișează, de asemenea, proprietățile evenimentului.

-s, --subsystem-match=șir[/șir]
    Filtrează evenimentele uevents ale nucleului și evenimentele udev după subsistem[/devtype]. Vor trece numai evenimentele cu o valoare care coincide cu subsistemul. Atunci când această opțiune este specificată de mai multe ori, fiecare rezultat de potrivire este „ORed”, adică toate dispozitivele din subsistemele specificate sunt monitorizate.

-t, --tag-match=șir
    Filtrează evenimentele udev după etichetă. Numai evenimentele udev care au atașată o etichetă dată vor trece. Atunci când această opțiune este specificată de mai multe ori, fiecare rezultat care corespunde este „ORed”, adică sunt monitorizate dispozitivele care au una dintre etichetele specificate.

  udevadm test [opțiuni...] rută-dispozitiv|rută-sistem|id|unitate

Simulează rularea unui eveniment udev pentru dispozitivul dat și afișează ieșirea de depanare. Opțiunea --json= poate fi utilă pentru analizarea rezultatului final. Consultați și secțiunea Exemplu.

-a, --action=ACȚIUNEA
    Tipul evenimentului care urmează să fie simulat. Acțiunile posibile sunt „add”, „remove”, „change”, „move”, „online”, „offline”, „bind” și „unbind”. De asemenea, valoarea specială „help” poate fi utilizată pentru a lista acțiunile posibile. Valoarea implicită este „add”.

-N, --resolve-names=early|late|never
    Specifică când udevadm ar trebui să rezolve numele utilizatorilor și grupurilor specificate în regulile udev. Atunci când este stabilită la early (implicit), numele vor fi rezolvate atunci când regulile sunt analizate. Când este stabilită la late, numele vor fi rezolvate în timpul evenimentului care este procesat. Când este stabilită la never, numele nu vor fi niciodată rezolvate și regulile udev relevante vor fi ignorate.

    Adăugată în versiunea 209.

-D DIRECTOR, --extra-rules-dir=DIRECTOR
    De asemenea, încarcă fișierele de reguli udev din directorul specificat. Această opțiune poate fi specificată de mai multe ori. Poate fi util pentru depanarea regulilor udev prin copierea unor fișiere de reguli udev într-un director temporar, editarea lor și specificarea directorului cu această opțiune. Fișierele găsite în directoarele specificate au o prioritate mai mare decât fișierele de reguli din directoarele implicite udev/rules.d utilizate de systemd-udevd. Consultați udev(7) pentru mai multe detalii despre rutele de căutare.

    Adăugată în versiunea 258.

-v, --verbose
    Afișează înregistrările detaliate din timpul procesării regulilor udev.

    Adăugată în versiunea 258.

--json=MODUL
    Afișează ieșirea formatată ca JSON. Așteaptă una dintre următoarele variante: short” (pentru o ieșire cât mai scurtă posibil, fără spații albe sau pauze de linie redundante), „pretty” (pentru o versiune plăcută a acesteia, cu indentare și pauze de linie) sau „off” (pentru a dezactiva ieșirea JSON, implicit).

  udevadm test-builtin [opțiuni...] comanda rută-dispozitiv|fișier|unitate

Rulează o comandă integrată COMANDA pentru dispozitivul RUTĂ_DISPOZITIV și imprimă ieșirea de depanare.

-a, --action=ACȚIUNEA
    Tipul evenimentului care urmează să fie simulat. Acțiunile posibile sunt „add”, „remove”, „change”, „move”, „online”, „offline”, „bind” și „unbind”. De asemenea, valoarea specială „help” poate fi utilizată pentru a lista acțiunile posibile. Valoarea implicită este „add”.

    Adăugată în versiunea 250.

  udevadm verify [opțiuni...] [fișier...]

Verifică corectitudinea sintactică, semantică și stilistică a fișierelor de reguli udev.

Argumentele poziționale pot fi utilizate pentru a specifica unul sau mai multe fișiere pentru verificare. Fiecare argument trebuie să fie o rută absolută către un fișier de reguli udev sau un director care conține fișiere de reguli, sau un nume de fișier de reguli udev (de exemplu 99-systemd.rules). Dacă este specificat un nume de fișier, fișierul va fi căutat în directoarele udev/rules.d care sunt procesate de systemd-udevd și căutat în directorul curent de lucru dacă nu este găsit. Dacă nu sunt specificate fișiere, regulile udev sunt citite din fișierele situate în aceleași directoare udev/rules.d care sunt prelucrate de systemd-udevd. Consultați udev(7) pentru mai multe detalii despre rutele de căutare.

Starea de ieșire este 0 dacă toate fișierele de reguli udev specificate sunt corecte din punct de vedere sintactic, semantic și stilistic și un cod de eroare diferit de zero în caz contrar.

-N, --resolve-names=early|late|never
    Specifică când udevadm ar trebui să rezolve numele utilizatorilor și grupurilor specificate în regulile udev. Atunci când este stabilită la early (implicit), numele vor fi rezolvate atunci când regulile sunt analizate. Când este stabilită la late, numele nu vor fi verificate, deoarece systemd-udevd rezolvă numele în timpul fiecărui eveniment procesat. Când este stabilită la never, numele nu vor fi niciodată rezolvate și regulile relevante vor fi ignorate.

    Adăugată în versiunea 254.

--root=RUTA
    Atunci când se caută fișiere de reguli udev situate în directoarele udev/rules.d, se operează asupra fișierelor aflate sub ruta rădăcină specificată PATH. Atunci când este specificat un nume de fișier și acesta nu este găsit în directoarele udev/rules.d, fișierul va fi căutat în ruta rădăcină specificată PATH, și nu în directorul curent de lucru.

    Adăugată în versiunea 254.

--no-summary
    Nu afișează rezumatul.

    Adăugată în versiunea 254.

--no-style
    Ignoră problemele de stil. Atunci când este specificată, chiar dacă sunt găsite probleme de stil în fișierele de reguli udev, starea de ieșire este 0 dacă nu sunt găsite erori sintactice sau semantice.

    Adăugată în versiunea 254.

  udevadm cat [opțiuni...] [fișier...]

Afișează fișierele de reguli udev sau udev.conf.

Argumentele poziționale pot fi utilizate pentru a specifica unul sau mai multe fișiere pentru verificare. Fiecare argument trebuie să fie o rută absolută către un fișier de reguli udev sau un director care conține fișiere de reguli, sau un nume de fișier de reguli udev (de exemplu 99-systemd.rules). Dacă este specificat un nume de fișier, fișierul va fi căutat în directoarele udev/rules.d care sunt procesate de systemd-udevd și căutat în directorul curent de lucru dacă nu este găsit. Dacă nu sunt specificate fișiere, regulile udev sunt citite din fișierele situate în aceleași directoare udev/rules.d care sunt prelucrate de systemd-udevd. Consultați udev(7) pentru mai multe detalii despre rutele de căutare.

--root=RUTA
    Atunci când se caută fișiere de reguli udev situate în directoarele udev/rules.d, se operează asupra fișierelor aflate sub ruta rădăcină specificată PATH. Atunci când este specificat un nume de fișier și acesta nu este găsit în directoarele udev/rules.d, fișierul va fi căutat în ruta rădăcină specificată PATH, și nu în directorul curent de lucru.

    Adăugată în versiunea 258.

--tldr
    Afișează numai părțile „interesante” ale fișierelor de configurare, ignorând comentariile și liniile goale și titlurile secțiunilor urmate numai de comentarii și linii goale&.

    Adăugată în versiunea 258.

--config
    Afișează fișierele udev.conf(5), în loc de fișierele de reguli udev. Atunci când este specificată, niciun fișier de reguli udev nu poate fi specificat.

    Adăugată în versiunea 258.

  udevadm wait [opțiuni...] rută-dispozitiv|rută-sistem...

Așteaptă ca dispozitivele sau legăturile simbolice de dispozitive să fie create și inițializate de systemd-udevd. Fiecare rută de dispozitiv trebuie să înceapă cu „/dev/” sau „/sys/”, de exemplu „/dev/sda”, „/dev/disk/by-path/pci-0000:3c:00.0-nvme-1-part1”, „/sys/devices/pci0000:00/0000:00:00:1f.6/net/eth0” sau „/sys/class/net/eth0”. Aceasta poate lua mai multe dispozitive. Acest lucru poate fi util pentru așteptarea dispozitivelor care sunt procesate de systemd-udevd după, de exemplu, partiționarea sau formatarea dispozitivelor.

-t, --timeout=SECUNDE
    Numărul maxim de secunde de așteptat pentru crearea, inițializarea sau eliminarea dispozitivelor specificate sau a legăturilor simbolice de dispozitive. Valoarea implicită este „infinity”.

    Adăugată în versiunea 251.

--initialized=BOOLEAN
    Verifică dacă systemd-udevd a inițializat dispozitivele. Valoarea implicită este „true”. Când este „false”, comanda verifică numai dacă dispozitivele specificate există. Definiți „false” la această opțiune dacă nu există reguli udev pentru dispozitivele specificate, deoarece dispozitivele nu vor fi niciodată considerate ca fiind inițializate în acest caz. Consultați secțiunea „DISPOZITIVE INIȚIALIZATE” de mai jos pentru mai multe detalii.

    Adăugată în versiunea 251.

--removed
    Atunci când este specificată, comanda așteaptă ca dispozitivele să fie eliminate în loc să fie create sau inițializate. Dacă se specifică acest lucru, --initialized= va fi ignorată.

    Adăugată în versiunea 251.

--settle
    Atunci când este specificată, urmărește și coada de evenimente udev și așteaptă ca toate evenimentele din coadă să fie procesate de systemd-udevd.

    Adăugată în versiunea 251.

  udevadm lock [opțiuni...] comanda...

udevadm lock ia o blocare exclusivă (consultativă) a unui dispozitiv bloc (sau a tuturor dispozitivelor specificate), conform Blocarea accesului la dispozitivul de blocuri[2] și invocă un program cu blocările luate. Atunci când programul invocat iese, blocajele sunt eliberate automat, iar valoarea sa de returnare este propagată drept cod de ieșire al udevadm lock.

Acest instrument este util în special pentru a se asigura că systemd-udevd.service(8) nu sondează un dispozitiv cu blocuri în timp ce se fac modificări la acesta, de exemplu crearea de partiții sau formatarea sistemelor de fișiere. Rețineți că multe instrumente care interfațează cu dispozitive bloc suportă în mod nativ luarea blocajelor relevante, a se vedea, de exemplu, comutatorul --lock al sfdisk(8).

Comanda așteaptă ca argumente cel puțin un dispozitiv bloc specificat prin --device= sau --backing= și o linie de comandă de executat.

--device=DISPOZITIV, -d DISPOZITIV
    Ia o rută către un nod de dispozitiv al dispozitivului de blocat. Această opțiune poate fi utilizată de mai multe ori (și în combinație cu --backing=) pentru a bloca mai multe dispozitive. În cazul în care este specificat un nod de dispozitiv de bloc de partiție, dispozitivul de bloc „întreg” care îl conține este determinat automat și utilizat pentru blocare, în conformitate cu specificațiile. În cazul în care sunt specificate mai multe dispozitive, acestea sunt deduplicate, sortate după major/minor al nodurilor lor de dispozitive și apoi blocate în ordine.

    Această opțiune trebuie utilizată cel puțin o dată, pentru a specifica cel puțin un dispozitiv de blocat. Alternativ, utilizați opțiunea --backing=, a se vedea mai jos.

    Adăugată în versiunea 251.

--backing=RUTA, -b RUTA
    Dacă este specificată o rută către un nod de dispozitiv, identic cu --device=. Totuși, această opțiune acceptă alternativ o rută către un fișier sau director obișnuit, caz în care dispozitivul bloc al sistemului de fișiere pe care se află fișierul/directorul este determinat automat și utilizat ca și cum ar fi fost specificat cu --device=.

    Adăugată în versiunea 251.

--timeout=SECUNDE, -t SECUNDE
    Specifică cât timp să se aștepte cel mult până când toate blocajele pot fi luate. Are o valoare în secunde sau în unitățile de timp obișnuite acceptate, consultați systemd.time(7). Dacă este specificată ca zero, se încearcă blocarea și, dacă nu se reușește, invocarea va eșua imediat. Dacă este trecută ca „infinity” (valoarea implicită), invocarea va aștepta indefinit până când se poate obține blocarea. Dacă blocarea nu poate fi obținută în timpul specificat, comanda specificată nu va fi executată și invocarea va eșua.

    Adăugată în versiunea 251.

--print, -p
    În loc să blocheze dispozitivele specificate și să execute o comandă, afișează doar rutele dispozitivelor care vor fi blocate și nu execută nicio comandă. Această comandă este utilă pentru a determina dispozitivul bloc „întreg” în cazul în care este specificat un dispozitiv bloc de partiție. Dispozitivele vor fi sortate în funcție de numărul major al nodului lor de dispozitiv folosit ca cheie de ordonare primară și numărul minor ca cheie de ordonare secundară (adică sunt afișate în ordinea în care ar fi blocate). Rețineți că numărul de linii afișate aici poate fi mai mic decât numărul de opțiuni --device= și --backing= specificate, în cazul în care acestea se referă la aceleași dispozitive „întregi”.

    Adăugată în versiunea 251.

DISPOZITIVE INIȚIALIZATE

Dispozitivele inițializate sunt cele pentru care cel puțin o regulă udev a finalizat deja execuția - pentru orice acțiune, cu excepția acțiunii „remove” - care a stabilit o proprietate sau altă configurare a dispozitivului (și astfel are o intrare în baza de date a dispozitivelor udev). Dispozitivele nu mai sunt considerate inițializate dacă se observă o acțiune „remove” pentru acestea (care le elimină intrarea în baza de date a dispozitivelor udev). Rețineți că dispozitivele care nu au reguli udev nu sunt niciodată considerate inițializate, dar pot fi totuși anunțate prin API-ul sd-device (sau similar).

EXEMPLU

Exemplu 1. Formatarea unui sistem de fișiere

Preia o blocare pe dispozitivul blocului de rezervă în timpul creării unui sistem de fișiere, pentru a se asigura că systemd-udevd nu sondează sau anunță noul super-bloc înainte ca acesta să fie scris complet:

    # udevadm lock --device=/dev/sda1 mkfs.ext4 /dev/sda1

Exemplu 2. Formatarea unui sistem de fișiere RAID

Similar, dar preia blocări pe mai multe dispozitive simultan:

    # udevadm lock --device=/dev/sda1 --device=/dev/sdb1 mkfs.btrfs /dev/sda1 /dev/sdb1

Exemplu 3. Copierea într-un sistem de fișiere

Preia o blocare pe dispozitivul blocului de rezervă în timpul copierii unei imagini pregătite a sistemului de fișiere, pentru a se asigura că systemd-udevd nu sondează sau anunță noul super-bloc înainte ca acesta să fie complet scris:

    # udevadm lock -d /dev/sda1 dd if=fs.raw of=/dev/sda1

Exemplu 4. Predicția redenumirii interfeței de rețea

Pentru a prezice numele unei interfețe de rețea, se poate utiliza udevadm test:

    $ udevadm test /sys/class/net/wlan0 --json=pretty 2>/dev/null | jq .networkInterface.name
    "wlp59s0"

Exemplu 5. Prezicerea legăturilor simbolice ale unui nod de dispozitiv

Pentru a prezice legăturile simbolice către un nod de dispozitiv, poate fi utilizat udevadm test:

    $ udevadm test /dev/nvme0n1p1 --json=pretty 2>/dev/null | jq .node.symlinks
    [
      "/dev/disk/by-diskseq/1-part1",
      "/dev/disk/by-id/nvme-WDC_PC_SN720_SDAQNTW-512G-1001_192290802247-part1",
      "/dev/disk/by-id/nvme-WDC_PC_SN720_SDAQNTW-512G-1001_192290802247_1-part1",
      "/dev/disk/by-id/nvme-eui.1922908022470001001b448b44ccb9d6-part1",
      "/dev/disk/by-path/pci-0000:3c:00.0-nvme-1-part/by-partnum/1",
      "/dev/disk/by-path/pci-0000:3c:00.0-nvme-1-part1"
    ]
    $ udevadm test /dev/input/event3 --json=pretty 2>/dev/null | jq .node.symlinks
    [
      "/dev/input/by-path/platform-i8042-serio-0-event-kbd"
    ]

CONSULTAȚI ȘI

udev(7), systemd-udevd.service(8), udev.conf(5)

NOTE

1.  jq
    https://jqlang.github.io/jq/manual/

2.  Blocarea accesului la dispozitivul de blocuri
    https://systemd.io/BLOCK_DEVICE_LOCKING

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 (https://www.gnu.org/licenses/gpl-3.0.html) 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.