DNF5-CACHING(7) dnf5 DNF5-CACHING(7) NUME dnf5-caching - stocare in cache DESCRIERE Aceasta pagina ii propune sa ofere o prezentare generala a diferitelor instrumente, cum ar fi opiunile de configurare, parametrii din linia de comanda i comenzile, disponibile in DNF5 pentru manipularea datelor din cache i scenariile asociate acestora. LOCAIA DATELOR STOCATE IN CACHE Urmatoarea structura de directoare ilustreaza un director tipic de cache DNF5: /var/cache/libdnf5/ fedora-* | metalink.xml | repodata | | *-comps-Everything.x86_64.xml | | *-primary.xml.zck | | repomd.xml | solv | fedora-group.solvx | fedora.solv temporary_files.toml updates-* metalink.xml packages | bash-5.2.21-1.fc38.x86_64.rpm repodata | *-primary.xml.zck | *-updateinfo.xml.zck | *-comps-Everything.x86_64.xml.gz | repomd.xml solv updates-group.solvx updates-updateinfo.solvx updates.solv Directorul cache radacina implicit este /var/cache/libdnf5, dar cand DNF5 ruleaza ca alt utilizator, utilizeaza cache-ul din ~/.cache/libdnf5 cu aceeai structura. Directorul cache radacina poate fi redefinit folosind opiunea de configurare system_cachedir, iar directorul cache al utilizatorului cu opiunea cachedir. In directorul cache, exista subdirectoare corespunzatoare fiecarui depozit configurat, cum ar fi fedora-* i updates-*. Acestea conin fiiere de metadate in directorul repodata i fiiere cache generate de solver in directorul solv. Fiierele solver, utilizate pentru a imbunatai performana in rezolvarea dependenelor de pachete sau in rularea interogarilor, pot fi activate sau dezactivate la nivel de depozit prin opiunea de configurare build_cache. Directorul packages poate stoca pachete descarcate dintr-un depozit, iar un fiier metalink sau mirrorlist furnizeaza informaii despre locaiile la distana ale datelor din depozit. In plus, directorul cache radacina conine un fiier temporary_files.toml referitor la pachetele stocate temporar in sistem. TIPURI DE METADATE Exista mai multe tipuri de metadate descarcate din locaii de la distana i prelucrate in DNF5. Unele metadate sunt obligatorii i intotdeauna luate in considerare. Fiierul principal de metadate al depozitului, repomd.xml, conine informaii despre fiiere de tip metadate specifice legate de un depozit, cum ar fi sumele de control, dimensiunile fiierelor i locaiile acestora in ierarhia metadatelor. Un alt fiier obligatoriu este fiierul de metadate primary, care furnizeaza informaii detaliate despre pachetele disponibile, inclusiv numele pachetelor, versiunile, dependenele etc. Daca DNF5 este compilat cu suport pentru modularitate, metadatele modules sunt, de asemenea, descarcate i prelucrate. Alte tipuri de metadate sunt opionale i pot fi incarcate in DNF5 in urmatoarele moduri: o Cerere explicita a utilizatorului prin adaugarea tipului solicitat la opiunea de configurare optional_metadata_types o Automat in timpul rularii, in funcie de comanda CLI utilizata o Pentru metadatele filelists, atunci cand utilizatorul trece orice argument pentru ruta fiierului ,,filepath" Iata lista tipurilor de metadate opionale acceptate: o comps: Metadate care conin grupuri de pachete i descrieri ale mediului o filelists: Informaii despre toate fiierele furnizate de pachete o updateinfo: Informaii privind actualizarile i avizele legate de securitate o presto: Informaii referitoare la RPM-urile delta o other: Metadate suplimentare, cum ar fi changelogs (jurnalele de modofocari) In cazul in care metadatele necesare nu sunt prezente in sistem, pot aparea diferite scenarii, cum ar fi returnarea unei interogari goale, emiterea unei erori pentru ca nu exista nicio potrivire pentru un argument sau o eroare la rezolvarea unei tranzacii. STOCAREA IN CACHE A PACHETELOR In mod implicit, DNF5 nu stocheaza in cache datele pachetelor descarcate, deoarece opiunea keepcache este configurata la False. Cu aceasta opiune, de fiecare data cand DNF5 descarca un pachet din locaia la distana, il urmarete in temporary_files.toml din directorul cache al depozitului. Dupa urmatoarea execuie cu succes a tranzaciei, toate fiierele sunt eliminate pe baza acestei liste. Acest proces are loc numai atunci cand tranzacia conine orice aciune de intrare; in caz contrar, pachetele sunt pastrate, luand in considerare cazurile poteniale de utilizare. Atunci cand opiunea keepcache este definita la True, fiierele descarcate nu sunt urmarite i ar putea fi eliminate ulterior, fie manual, fie prin executarea comenzii clean, de exemplu, dnf5 clean packages. Pachetele sunt intotdeauna pastrate atunci cand sunt descarcate utilizand comanda download. PARTAJAREA CACHE-ULUI RADACINA INTRE UTILIZATORI De obicei, DNF5 este rulat cu privilegii de superutilizator pentru a efectua modificari ale sistemului. Cu toate acestea, exista scenarii in care executarea interogarilor fara privilegii ridicate este suficienta. In astfel de cazuri, este posibil sa fie necesara descarcarea de la distana a tuturor metadatelor de depozit pentru contul de utilizator, chiar daca exista date existente in memoria cache a radacinii. In DNF5, atunci cand se verifica daca exista metadate de depozit goale, expirate sau nevalide in timpul rularii sub un cont non-root, se examineaza mai intai locaia utilizatorului root. Daca metadatele sunt prezente acolo, acestea sunt copiate in locaia cache a utilizatorului. Reinei ca aceasta clonare a metadatelor este optimizata atunci cand funcionalitatea ,,copy-on-write" este prezenta in cadrul sistemului de fiiere, cum ar fi btrfs. OPIUNEA CACHEONLY VS PARAMETRU Pentru a instrui DNF5 sa opereze exclusiv cu date din cache, evitand descarcarile din locaii la distana, sunt disponibile doua instrumente. In primul rand, folosind opiunea de configurare cacheonly, putem specifica fie metadata pentru a utiliza numai metadatele de depozit din cache, fie all pentru a include intregul cache, interzicand descarcarea oricarui pachet. Alternativ, atunci cand parametrul --cacheonly este utilizat, acesta stabilete automat opiunea de configurare la all, rezultand o operaie complet bazata pe cache. Utilizarea valorii metadata pentru configuraia cacheonly poate fi avantajoasa atunci cand depozitele opionale sunt temporar indisponibile sau cand tim ca nu sunt necesare pentru cazul nostru actual de utilizare. De asemenea, este utila atunci cand metadatele din cache nu sunt cele mai recente sau au expirat, dar sunt inca funcionale. TERGERE, CREARE, ACTUALIZARE Urmatoarele comenzi sunt utilizate pentru tergerea i crearea manuala a cache-ului: dnf5-clean(8), Comanda <> dnf5-makecache(8), Comanda <> Pentru a fora actualizarea metadatelor inainte de executarea unei comenzi, utilizai parametrul --refresh. AUTOR A se vedea AUTHORS.md in distribuia sursei dnf5. DREPTURI DE AUTOR Contribuitori la proiectul dnf5. 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 . 25 august 2025 DNF5-CACHING(7)