27 "DNF" (Fork of Yum) -komentoa RPM-pakettien hallintaan Linuxissa
DNF eli Dandified YUM on seuraavan sukupolven Package Manager RPM-pohjaiseen jakeluun. Se esiteltiin ensimmäisen kerran Fedora 18:ssa, ja se on korvannut YUM-apuohjelman äskettäisessä Fedora 22:n julkaisussa.
DNF pyrkii parantamaan YUM:n pullonkauloja, kuten suorituskykyä, muistin käyttöä, riippuvuuden resoluutiota, nopeutta ja monia muita tekijöitä. DNF suorittaa paketinhallinnan käyttämällä RPM-, libsolv- ja hawkey-kirjastoa. Vaikka sitä ei ole asennettu CentOS:ään ja RHEL 7:ään, voit yum, dnf ja käyttää sitä yumin rinnalla.
Saatat haluta lukea lisää DNF:stä täältä:
- Syyt Yumin korvaamiseen DNF:llä
DNF:n uusin vakaa julkaisu on 1.0 (julkaisua kirjoitettaessa), joka julkaistiin 11. toukokuuta 2015. Se (ja kaikki aiemmat DNF-versiot) on kirjoitettu pääosin Pythonilla ja se on julkaistu GPL v2 -lisenssillä.
DNF:n asennus
DNF ei ole saatavilla RHEL/CentOS 7 -oletustietovarastoon. Fedora 22 toimitetaan kuitenkin virallisesti toteutettuna DNF:n kanssa.
Jotta voit asentaa DNF:n RHEL/CentOS-järjestelmiin, sinun on ensin asennettava ja otettava käyttöön epel-release-arkisto.
yum install epel-release
OR
yum install epel-release -y
Vaikka ei ole eettistä käyttää "-y" yumin kanssa, koska on suositeltavaa nähdä, mitä järjestelmääsi asennetaan. Jos tällä ei kuitenkaan ole sinulle paljon väliä, voit käyttää '-y':tä yumin kanssa asentaaksesi kaiken automaattisesti ilman käyttäjän väliintuloa.
Asenna seuraavaksi DNF-paketti yum-komennolla epel-release-arkistosta.
yum install dnf
Kun dnf on asennettu onnistuneesti, on aika näyttää sinulle 27 käytännön dnf-komentojen käyttöä ja esimerkkejä, jotka auttavat sinua hallitsemaan paketteja RPM-pohjaisessa jakelussa. helposti ja tehokkaasti.
1. Tarkista DNF-versio
Tarkista järjestelmääsi asennettu DNF-versio.
dnf --version
2. Listaa käytössä olevat DNF-varastot
Vaihtoehto 'repolist' dnf-komennolla näyttää kaikki käytössä olevat tietovarastot järjestelmässäsi.
dnf repolist
3. Listaa kaikki käytössä olevat ja käytöstä poistetut DNF-arkistot
Vaihtoehto 'repolist all' tulostaa kaikki järjestelmässäsi käytössä olevat/poistetut arkistot.
dnf repolist all
4. Listaa kaikki saatavilla olevat ja asennetut paketit DNF:n avulla
Komento "dnf list" näyttää kaikki saatavilla olevat paketit kaikista arkistoista ja asennetuista paketeista Linux-järjestelmässäsi.
dnf list
5. Listaa kaikki asennetut paketit DNF:n avulla
Vaikka "dnf list" -komento näyttää kaikki saatavilla olevat/asennetut paketit kaikista arkistoista. Voit kuitenkin listata vain asennetut paketit käyttämällä vaihtoehtoa "luettelo asennettuna" alla olevan kuvan mukaisesti.
dnf list installed
6. Listaa kaikki saatavilla olevat paketit DNF:n avulla
Vastaavasti luettelo saatavilla -vaihtoehto näyttää kaikki paketit, jotka voidaan asentaa kaikista käytössä olevista arkistoista.
dnf list available
7. Etsi paketti DNF:n avulla
Jos näin on, sinulla ei ole aavistustakaan paketista, jonka haluat asentaa. Tällaisessa tilanteessa voit käyttää 'search'-vaihtoehtoa dnf-komennolla etsiäksesi paketin, joka vastaa sanaa tai merkkijonoa (esim. nano ).
dnf search nano
8. Katso, mikä Tarjoaa tiedoston/alipaketin?
Dnf-vaihtoehto "tarjoaa" etsii paketin nimen, joka tarjoaa tietyn tiedoston/alipaketin. Jos esimerkiksi haluat selvittää, mikä järjestelmässäsi tarjoaa "/bin/bash"?
dnf provides /bin/bash
9. Hanki paketin tiedot DNF:n avulla
Oletetaan, että haluat tietää paketin tiedot ennen sen asentamista järjestelmään. Voit käyttää info-kytkintä saadaksesi yksityiskohtaisia tietoja paketista (esimerkiksi nanosta), kuten alla.
dnf info nano
10. Asenna DNF-paketti
Jos haluat asentaa paketin nimeltä nano, suorita alla oleva komento, joka ratkaisee ja asentaa automaattisesti kaikki tarvittavat riippuvuudet paketille nano.
dnf install nano
11. Paketin päivittäminen DNF:n avulla
Voit päivittää vain tietyn paketin (esim. systemd) ja jättää kaiken järjestelmän koskemattomaksi.
dnf update systemd
12. Tarkista järjestelmäpäivitykset DNF:n avulla
Tarkista kaikkien järjestelmään asennettujen järjestelmäpakettien päivitykset yksinkertaisesti.
dnf check-update
13. Päivitä kaikki järjestelmäpaketit DNF:n avulla
Voit päivittää koko järjestelmän, mukaan lukien kaikki asennetut paketit, seuraavilla komennoilla.
dnf update
OR
dnf upgrade
14. Poista/Poista paketti DNF:n avulla
Poistaaksesi tai poistaaksesi ei-toivotun paketin (kuten nano), voit poistaa paketin poista- tai erase-kytkimellä dnf-komennolla. .
dnf remove nano
OR
dnf erase nano
15. Poista orpopaketit DNF:n avulla
Riippuvuuden tyydyttämiseksi asennetut paketit voivat olla hyödyttömiä, jos muut sovellukset eivät käytä niitä. Poista nämä orpopaketit suorittamalla alla oleva komento.
dnf autoremove
16. Poista välimuistissa olevat paketit DNF:n avulla
Usein kohtaamme vanhentuneita otsikoita ja keskeneräisiä tapahtumia, jotka johtavat virheisiin dnf:n suorittamisen aikana. Voimme puhdistaa kaikki välimuistissa olevat paketit ja etäpakettitietoja sisältävät otsikot yksinkertaisesti suorittamalla.
dnf clean all
17. Pyydä apua tiettyyn DNF-komentoon
Saatat saada apua mihin tahansa tiettyyn dnf-komentoon (kuten clean) suorittamalla alla oleva komento.
dnf help clean
18. Listaa kaikki DNF-komennot ja -asetukset
Luettelo ohje kaikista käytettävissä olevista dnf-komennoista ja vaihtoehdoista yksinkertaisesti kirjoittamalla.
dnf help
19. Näytä DNF:n historia
Voit kutsua dnf-historiaa nähdäksesi luettelon jo suoritetuista dnf-komennoista. Näin voit olla tietoinen siitä, mitä on asennettu/poistettu aikaleimalla.
dnf history
20. Listaa kaikki ryhmäpaketit
Komento "dnf grouplist" tulostaa kaikki saatavilla olevat tai asennetut paketit. Jos mitään ei mainita, se listaa kaikki tunnetut ryhmät.
dnf grouplist
21. Asenna ryhmäpaketti DNF:n avulla
Pakettien ryhmän asentaminen ryhmäpaketiksi (kuten Oppimisohjelmistot) yksinkertaisesti nimellä.
dnf groupinstall 'Educational Software'
22. Päivitä ryhmäpaketti
Päivitetään ryhmäpaketti (kuten Oppimisohjelmisto) suorittamalla alla oleva komento.
dnf groupupdate 'Educational Software'
23. Poista ryhmäpaketti
Voimme poistaa ryhmäpaketin (kuten Oppimisohjelmistot) muodossa.
dnf groupremove 'Educational Software'
24. Asenna paketti tietystä arkistosta
DNF mahdollistaa minkä tahansa tietyn paketin (kuten phpmyadmin) asentamisen reposta (epel) niin yksinkertaisesti kuin
dnf --enablerepo=epel install phpmyadmin
25. Synkronoi asennetut paketit vakaaseen julkaisuun
Komento "dnf distro-sync" tarjoaa tarvittavat vaihtoehdot kaikkien asennettujen pakettien synkronoimiseksi viimeisimpään vakaaseen versioon, joka on saatavilla kaikista käytössä olevista arkistoista. Jos yhtään pakettia ei valita, kaikki asennetut paketit synkronoidaan.
dnf distro-sync
26. Asenna paketti uudelleen
Komento "dnf reinstall nano" asentaa uudelleen jo asennetun paketin (kuten nano).
dnf reinstall nano
27. Päivitä paketti alempaan versioon
Vaihtoehto "downgrade" alentaa nimetyn paketin (esim. acpid) alempaan versioon, jos mahdollista.
dnf downgrade acpid
Näytelähtö
Using metadata from Wed May 20 12:44:59 2015
No match for available package: acpid-2.0.19-5.el7.x86_64
Error: Nothing to do.
Havaintoni: DNF ei alentanut pakettia, kuten sen pitäisi. Se on myös raportoitu bugiksi.
Johtopäätös
DNF on huippuluokan Package Managerin YUM. Sillä on taipumus tehdä paljon prosessointia automaattisesti, mitä monet kokeneet Linux-järjestelmänvalvojat eivät tule kehumaan, kuten uskon. Esimerkkinä:
- DNF ei tunnista
---skip-broken
, eikä vaihtoehtoa ole. - Ei ole mitään muuta kuin resolvedep-komento, vaikka voit suorittaa dnf:n tarjoaman.
- Ei ole olemassa deplist-komentoa pakettiriippuvuuden löytämiseksi.
- Jätät repon pois, mikä tarkoittaa, että poissulkeminen koskee kaikkia toimintoja, toisin kuin yum, joka sulkee nämä repot pois vain asennuksen ja päivitysten yhteydessä jne.
Useat Linux-käyttäjät eivät ole tyytyväisiä Linux-ekosysteemin etenemiseen. Ensin Systemd poisti init system v:n ja nyt DNF korvaa YUM:n aikaisemmin Fedora 22:ssa ja myöhemmin RHEL:ssä ja CentOS:ssä.
Mitä mieltä sinä olet? ovat jakeluita ja koko Linux-ekosysteemi ei arvosta käyttäjiään ja liiku vastoin heidän tahtoaan. Myös IT-alalla sanotaan usein: "Miksi korjata, jos ei ole rikki?", eikä init System V ole rikki eikä YUM.
Tässä kaikki tältä erää. Kerro minulle arvokkaat ajatuksesi alla olevissa kommenteissa. Tykkää ja jaa meistä ja auta meitä leviämään.