Cum se creste viteza DNF pe Rocky Linux 10, 9 si 8?

Configurare noua (How To)

Situatie

Instalarea lenta a pachetelor pe Rocky Linux provine de obicei din concurenta conservatoare la download, un mirror distant sau o cale proxy care adauga latenta. DNF gestioneaza instalarea pachetelor, actualizarile si rezolutia dependentelor, deci aceste setari afecteaza rulurile zilnice de dnf install si dnf upgrade. Puteti creste viteza DNF pe Rocky Linux prin activarea download-urilor paralele si a selectiei celui mai rapid mirror in /etc/dnf/dnf.conf, apoi confirmand valorile active inainte de a rula actualizari normale.

Rocky Linux 10, 9 si 8 folosesc aceleasi setari DNF4 pentru acest flux de lucru. Rocky Linux 10 nu foloseste sintaxa de comanda Fedora DNF5 aici, deci mentineti configuratia in dnf.conf si verificati-o cu dnf config-manager --dump.

Cresterea vitezei DNF pe Rocky Linux

Doua setari fac cea mai mare parte din munca utila: max_parallel_downloads controleaza cate pachete poate descarca DNF simultan, iar fastestmirror schimba modul in care DNF alege mirror-urile din datele de metalink sau mirrorlist ale repository-ului. Setarile de siguranta conexe merita intelese, dar de obicei trebuie sa ramana la valorile implicite Rocky Linux.

Setare Implicit Rocky Linux Valoare recomandata Ce schimba
max_parallel_downloads 3 10 Descarca mai multe pachete simultan in timpul instalarii si actualizarilor
fastestmirror False True Selecteaza mirror-uri cu latenta mai mica in loc sa se bazeze doar pe ordinea mirrorlist
gpgcheck 1 1 Verifica semnaturile pachetelor si trebuie sa ramana activat
installonly_limit 3 3 Mentine un set mic de kernel-uri de rezerva disponibile in GRUB
clean_requirements_on_remove True True Permite DNF sa elimine pachetele de dependente care nu mai sunt necesare

Solutie

Pasi de urmat

Verificarea setarilor curente DNF pe Rocky Linux
Subcomanda config-manager provine din dnf-plugins-core. Majoritatea instalatiilor complete Rocky Linux il au deja, dar imaginile minimale de server pot necesita pachetul inainte ca comanda de inspectie sa functioneze:

rpm -q --queryformat '%{NAME}\n' dnf-plugins-core

Un sistem cu pachetul plugin instalat returneaza numele pachetului:

dnf-plugins-core

Daca RPM raporteaza ca dnf-plugins-core nu este instalat, instalati-l din repository-urile Rocky Linux:

sudo dnf install dnf-plugins-core

Inspectati valorile DNF active inainte de a edita fisierul:

dnf config-manager --dump | grep -E 'max_parallel|fastest|gpgcheck|installonly|best|skip_if|clean_req

Sistemele implicite Rocky Linux 10, 9 si 8 returneaza aceste valori relevante:

best = 1
clean_requirements_on_remove = 1
fastestmirror = 0
gpgcheck = 1
installonly_limit = 3
max_parallel_downloads = 3
skip_if_unavailable = 0

Punctul de referinta important este max_parallel_downloads = 3 si fastestmirror = 0. Acestea sunt valorile de schimbat pentru download-uri de pachete mai rapide.

Editarea fisierului de configurare DNF
Deschideti fisierul principal de configurare DNF cu un editor de text:

sudo nano /etc/dnf/dnf.conf

Toate setarile globale DNF apartin sectiunii [main]. Daca oricare dintre chei exista deja, editati linia existenta in loc sa adaugati o intrare duplicata:

max_parallel_downloads=10
fastestmirror=True

max_parallel_downloads=10 permite DNF sa descarce pana la 10 pachete simultan. fastestmirror=True face DNF sa testeze latenta socket-ului TCP si sa aleaga aleatoriu dintre mirror-urile cu mai putin decat de doua ori latenta minima, ceea ce mentine selectia mirror-ului rapida fara a trimite fiecare client la acelasi server.

Salvati fisierul cand sectiunea [main] include valorile optimizate:

[main]
gpgcheck=1
installonly_limit=3
clean_requirements_on_remove=True
best=True
skip_if_unavailable=False
max_parallel_downloads=10
fastestmirror=True

Verificarea setarilor de viteza DNF
Rulati din nou dump-ul de configurare si filtrati-l la cele doua chei legate de viteza:

dnf config-manager --dump | grep -E 'max_parallel|fastest'

Valorile active trebuie sa corespunda acum configuratiei optimizate:

fastestmirror = 1
max_parallel_downloads = 10

Previzualizati mai intai o actualizare reimprospatata daca doriti sa testati metadatele repository fara a instala pachete. Flag-ul --assumeno face DNF sa raspunda nu la promptul de tranzactie dupa ce calculeaza setul de actualizari:

sudo dnf upgrade --refresh --assumeno

Cand sunteti gata sa aplicati actualizarile disponibile, rulati aceeasi actualizare reimprospatata fara --assumeno:

sudo dnf upgrade --refresh

Ajustarea atenta a optiunilor suplimentare DNF

Setarile din aceasta sectiune nu sunt optimizari de viteza pentru majoritatea sistemelor. Mentineti-le la valorile implicite Rocky Linux cu exceptia cazului in care aveti un motiv administrativ specific pentru a modifica verificarea pachetelor, retentia kernel-ului, curatarea dependentelor sau comportamentul de rezolutie a dependentelor.

Verificarea semnaturii pachetelor cu gpgcheck

gpgcheck=1

Rocky Linux seteaza verificarea semnaturii pachetelor in configuratia principala DNF. Lasati gpgcheck=1 activat astfel incat DNF sa verifice pachetele inainte de a le instala. Dezactivarea sa slabeste increderea in pachete si nu trebuie sa faca parte dintr-o optimizare de viteza.

Retentia kernel-ului cu installonly_limit

installonly_limit=3

installonly_limit=3 mentine kernel-ul curent plus kernel-uri de rezerva mai vechi disponibile. Aceasta valoare implicita protejeaza optiunile de rollback dupa o actualizare de kernel, limitand totodata cresterea spatiului pe disc din pachetele de kernel mai vechi.

Curatarea dependentelor cu clean_requirements_on_remove

clean_requirements_on_remove=True

Cand aceasta optiune este activata, DNF poate elimina pachetele de dependente pe care le-a instalat automat si de care niciun pachet instalat nu mai are nevoie. Mentineti valoarea implicita cu exceptia cazului in care intentionati sa pastrati pachetele de dependente dupa eliminari.

Disponibilitatea repository-ului cu skip_if_unavailable

skip_if_unavailable=False

skip_if_unavailable=False face ca erorile de sincronizare a repository-ului sa fie vizibile in loc sa dezactiveze silentios un repository pentru acea rulare. Aceasta este mai sigura pentru actualizarile de securitate deoarece un repository defect sau inaccesibil trebuie investigat, nu ascuns.
Selectia versiunii cu best

best=True

Rocky Linux seteaza best=True, care spune DNF sa prefere cea mai inalta versiune disponibila pentru pachetele solicitate direct sau sa esueze cand dependentele impiedica acel rezultat. Mentineti aceasta valoare implicita astfel incat conflictele de dependente sa fie vizibile la instalari si actualizari.

Ajustarea download-urilor paralele pentru conexiunea voastra
max_parallel_downloads=10 este un punct de plecare, nu o promisiune de benchmark. Daca DNF incepe sa reincerce download-uri, VPN-ul devine instabil sau o conexiune Wi-Fi slaba se simte mai rau, reduceti valoarea si testati urmatorul ciclu normal de actualizare.

  • 5 – Mai bun pentru Wi-Fi nesigur, linkuri VPN sau conexiuni VPS mai mici
  • 10 – Cel mai bun punct de plecare pentru majoritatea sistemelor Rocky Linux
  • 15 pana la 20 – Merita testat doar pe conexiuni rapide si stabile unde tranzactiile DNF mari isi petrec in continuare cea mai mare parte din timp descarcand pachete

Referinta completa optimizata dnf.conf
Folositi aceasta sectiune completa [main] ca referinta la revizuirea fisierului. Nu suprascrieteti setarile personalizate de proxy, cache sau administrative de care sistemul vostru are deja nevoie:

[main]
gpgcheck=1
installonly_limit=3
clean_requirements_on_remove=True
best=True
skip_if_unavailable=False
max_parallel_downloads=10
fastestmirror=True

Dupa salvarea fisierului, rulati din nou dnf config-manager --dump | grep -E 'max_parallel|fastest'. Cele doua valori trebuie sa apara ca max_parallel_downloads = 10 si fastestmirror = 1.

Resetarea setarilor de viteza DNF pe Rocky Linux
Daca optimizarea nu ajuta reteaua voastra, redeschideti /etc/dnf/dnf.conf si returnati cele doua setari de viteza la valorile implicite Rocky Linux:

sudo nano /etc/dnf/dnf.conf
max_parallel_downloads=3
fastestmirror=False

Puteti de asemenea elimina ambele linii complet, deoarece acestea sunt valorile implicite runtime. Verificati valorile active dupa salvarea fisierului:

dnf config-manager --dump | grep -E 'max_parallel|fastest'
fastestmirror = 0
max_parallel_downloads = 3

Depanare probleme de viteza si configurare DNF

Comanda config-manager lipseste

Daca verificarea setarilor esueaza, pachetul plugin lipseste sau plugin-urile DNF sunt dezactivate:

dnf config-manager --dump

O comanda plugin lipsa poate arata astfel:

No such command: config-manager. Please use /usr/bin/dnf --help

It could be a DNF plugin command, but loading of plugins is currently disabled.

Instalati dnf-plugins-core, apoi rulati din nou verificarea setarilor:

sudo dnf install dnf-plugins-core

dnf config-manager --dump | grep -E 'max_parallel|fastest'

DNF raporteaza o valoare de configurare invalida

DNF valideaza valorile booleene cand citeste configuratia. O greseala de tastare precum fastestmirror=maybe poate produce un avertisment in timpul verificarii setarilor:

Invalid configuration value: fastestmirror=maybe in /etc/dnf/dnf.conf; invalid boolean value 'maybe'

Editati /etc/dnf/dnf.conf si folositi valori booleene suportate precum True, False, 1 sau 0. Apoi rulati din nou dump-ul de configurare filtrat pentru a confirma valoarea corectata.

Download-urile DNF sunt in continuare lente

fastestmirror=True masoara latenta, nu debitul real al mirror-ului. Daca download-urile raman lente, verificati mai intai intrarile proxy deoarece un proxy, VPN sau gateway de retea fortat poate domina viteza mirror-ului:

grep -R --line-number -E '^[[:space:]]*proxy[[:space:]]*=' /etc/dnf/dnf.conf /etc/yum.repos.d/*.repo || echo "No DNF proxy entries found"

Un sistem fara suprascrieri proxy DNF returneaza:

No DNF proxy entries found

Daca apare o linie proxy, confirmati ca proxy-ul este intentionat si accesibil. Dupa schimbarea setarilor de proxy sau mirror, reimprospatati din nou metadatele:

sudo dnf clean metadata

sudo dnf makecache --refresh

Tip solutie

Permanent

Voteaza

(6 din 7 persoane apreciaza acest articol)

Despre Autor

Leave A Comment?