Amri 27 za DNF (Fork of Yum) za Usimamizi wa Kifurushi cha RPM katika Linux


DNF aka Dandified YUM ni Kidhibiti cha Kifurushi cha kizazi kijacho kwa Usambazaji kulingana na RPM. Ilianzishwa kwanza katika Fedora 18 na imechukua nafasi ya Fedora 22.

DNF inalenga kuboresha vikwazo vya YUM yaani, Utendaji, Matumizi ya Kumbukumbu, Azimio la Utegemezi, Kasi na vipengele vingine vingi. DNF hufanya Usimamizi wa Kifurushi kwa kutumia RPM, libsolv na maktaba ya hawkey. Ingawa haiji kwa kila kisakinishi katika CentOS na RHEL 7 unaweza yum, dnf na kuitumia kando ya yum.

Unaweza kupenda kusoma zaidi kuhusu DNF hapa:

  1. Sababu za Nyuma ya Kubadilisha Yum na DNF

Toleo la hivi punde la DNF ni 1.0 (wakati wa kuandika chapisho) ambalo lilitolewa mnamo Mei 11, 2015. Ni (na matoleo yote ya awali ya DNF) mara nyingi yameandikwa katika Python na hutolewa chini ya Leseni ya GPL v2.

DNF haipatikani katika hazina chaguomsingi ya RHEL/CentOS 7. Hata hivyo meli za Fedora 22 zilizo na DNF zilitekelezwa rasmi.

Ili kusakinisha DNF kwenye mifumo ya RHEL/CentOS, unahitaji kwanza kusakinisha na kuwezesha hazina ya epel-release.

# yum install epel-release
OR
# yum install epel-release -y

Ingawa sio maadili kutumia '-y' na yum kwani inashauriwa kuona kile kinachosakinishwa kwenye mfumo wako. Walakini ikiwa hii haijalishi sana unaweza kutumia '-y' na yum kusakinisha kila kitu kiotomatiki bila kuingilia kati kwa mtumiaji.

Ifuatayo, sasisha kifurushi cha DNF kwa kutumia yum amri kutoka kwa hazina ya kutolewa kwa epel.

# yum install dnf

Baada ya dnf kusakinishwa kwa mafanikio, ni wakati wa kukuonyesha matumizi 27 ya vitendo ya amri za dnf na mifano ambayo itakusaidia kudhibiti vifurushi katika usambazaji wa msingi wa RPM kwa urahisi na kwa ufanisi.

Angalia toleo la DNF iliyosakinishwa kwenye Mfumo wako.

# dnf --version

Chaguo 'repolist' na dnf amri, itaonyesha hazina zote zilizowezeshwa chini ya mfumo wako.

# dnf repolist

Chaguo la 'repolist all' litachapisha hazina zote zilizowezeshwa/zimezimwa chini ya mfumo wako.

# dnf repolist all

Amri ya dnf list itaorodhesha vifurushi vyote vinavyopatikana kutoka kwa hazina zote na vifurushi vilivyosakinishwa kwenye mfumo wako wa Linux.

# dnf list

Wakati amri ya dnf list inaonyesha vifurushi vyote vinavyopatikana/ vilivyosakinishwa kutoka kwa hazina zote. Hata hivyo, una chaguo la kuorodhesha tu vifurushi vilivyosakinishwa kwa kutumia chaguo la orodha iliyosakinishwa kama inavyoonyeshwa hapa chini.

# dnf list installed

Vile vile, chaguo la orodha inayopatikana, itaorodhesha vifurushi vyote vinavyopatikana ili kusakinishwa kutoka kwa hazina zote zilizowezeshwa.

# dnf list available

Iwapo, hujui kuhusu kifurushi unachotaka kusakinisha, katika hali kama hiyo unaweza kutumia chaguo la 'tafuta' na dnf amri kutafuta kifurushi kinacholingana na neno au kamba (sema nano).

# dnf search nano

Chaguo la dnf hutoa kupata jina la kifurushi ambacho hutoa faili maalum/kifurushi kidogo. Kwa mfano, ikiwa ungependa kupata kile kinachotoa '/bin/bash' kwenye mfumo wako?

# dnf provides /bin/bash

Hebu tuchukulie kuwa unataka kujua maelezo ya kifurushi kabla ya kukisakinisha kwenye mfumo, unaweza kutumia swichi ya maelezo ili kupata maelezo ya kina kuhusu kifurushi (sema nano) kama ilivyo hapo chini.

# dnf info nano

Ili kusakinisha kifurushi kinachoitwa nano, endesha tu amri iliyo hapa chini itasuluhisha kiotomatiki na kusanikisha utegemezi wote unaohitajika kwa kifurushi nano.

# dnf install nano

Unaweza kusasisha kifurushi maalum tu (sema systemd) na uache kila kitu kwenye mfumo bila kuguswa.

# dnf update systemd

Angalia sasisho za vifurushi vyote vya mfumo vilivyosakinishwa kwenye mfumo kwa urahisi.

# dnf check-update

Unaweza kusasisha mfumo mzima ikijumuisha vifurushi vyote vilivyosakinishwa na amri zifuatazo.

# dnf update
OR
# dnf upgrade

Ili kuondoa au kufuta kifurushi chochote kisichohitajika (sema nano), unaweza kutumia swichi ya ondoa au futa kwa amri ya dnf ili kuiondoa.

# dnf remove nano
OR
# dnf erase nano

Vifurushi hivyo ambavyo vilisakinishwa ili kukidhi utegemezi vinaweza kutokuwa na maana ikiwa havitumiwi na programu zingine. Ili kuondoa vifurushi hivyo vya watoto yatima tekeleza amri iliyo hapa chini.

# dnf autoremove

Muda mwingi tunakumbana na vichwa vilivyopitwa na wakati na miamala ambayo haijakamilika ambayo husababisha makosa wakati wa kutekeleza dnf. Tunaweza kusafisha vifurushi vyote vilivyoakibishwa na vichwa vilivyo na habari ya kifurushi cha mbali kwa kutekeleza.

# dnf clean all

Unaweza kupata msaada wa amri yoyote maalum ya dnf (sema safi) kwa kutekeleza amri iliyo hapa chini.

# dnf help clean

Kuorodhesha usaidizi kwenye amri zote za dnf zinazopatikana na chaguo chapa tu.

# dnf help

Unaweza kupiga simu historia ya dnf kutazama orodha ya amri za dnf zilizotekelezwa tayari. Kwa njia hii unaweza kufahamu ni nini kilisakinishwa/kuondolewa kwa muhuri wa wakati.

# dnf history

Amri ya dnf grouplist itachapisha vifurushi vyote vinavyopatikana au vilivyowekwa, ikiwa hakuna kitu kilichotajwa, kitaorodhesha makundi yote yanayojulikana.

# dnf grouplist

Ili kusakinisha Kikundi cha vifurushi vilivyowekwa pamoja kama kifurushi cha kikundi (sema Programu ya Kielimu) kama.

# dnf groupinstall 'Educational Software'

Wacha tusasishe Kifurushi cha Kikundi (sema Programu ya Kielimu) kwa kutekeleza amri iliyo hapa chini.

# dnf groupupdate 'Educational Software'

Tunaweza kuondoa Kifurushi cha kikundi (sema Programu ya Kielimu) kama.

# dnf groupremove 'Educational Software'

DNF inafanya uwezekano wa kusakinisha kifurushi chochote maalum (sema phpmyadmin) kutoka kwa repo (epel) kwa urahisi kama,

# dnf --enablerepo=epel install phpmyadmin

Amri ya dnf distro-sync itatoa chaguo muhimu ili kusawazisha vifurushi vyote vilivyosakinishwa kwa toleo thabiti la hivi karibuni linalopatikana kutoka kwa hazina yoyote iliyowezeshwa. Ikiwa hakuna kifurushi kilichochaguliwa, vifurushi vyote vilivyosakinishwa vinasawazishwa.

# dnf distro-sync

Amri ya dnf reinstall nano itasakinisha tena kifurushi ambacho tayari kimewekwa (sema nano).

# dnf reinstall nano

Chaguo la shusha daraja litashusha gredi kifurushi kilichotajwa (sema acpid) hadi toleo la chini ikiwezekana.

# dnf downgrade acpid
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.

Uchunguzi wangu: DNF haipunguzi kifurushi kama inavyopaswa kufanya. Pia imeripotiwa kama mdudu.

Hitimisho

DNF ni hali ya juu ya mwisho ya sanaa Kidhibiti Furushi YUM. Inaelekea kufanya usindikaji mwingi kiatomati ambayo haitasifiwa na Msimamizi wa Mfumo wa Linux mwenye uzoefu, kama ninavyoamini. Kwa mfano:

  1. --skip-broken haitambuliwi na DNF na hakuna mbadala.
  2. Hakuna kitu kama amri ya 'resolvedep' hata hivyo unaweza kuendesha dnf hutoa.
  3. Hakuna amri ya ‘deplist‘ ya kupata utegemezi wa kifurushi.
  4. Hujumuisha repo, inamaanisha kutengwa kunatumika kwa utendakazi wote, tofauti na yum ambayo haijumuishi repo hizo pekee wakati wa kusakinisha na kusasisha, n.k.

Watumiaji kadhaa wa Linux hawafurahishwi jinsi Linux Ecosystem inavyosonga. Mfumo wa kwanza ulioondolewa wa Systemd v na sasa DNF itabadilisha YUM hivi karibuni katika Fedora 22 na baadaye katika RHEL na CentOS.

Nini unadhani; unafikiria nini? ni usambazaji na mfumo mzima wa ikolojia wa Linux hauthamini watumiaji wake na unaenda kinyume na mapenzi yao. Pia inasemwa mara nyingi katika tasnia ya TEHAMA - \Kwa nini kurekebisha, ikiwa haijavunjwa?, na wala init System V haijavunjwa wala YUM.

Hayo ni yote kwa sasa. Tafadhali nijulishe mawazo yako muhimu katika maoni hapa chini. Like na share nasi tusaidie kusambaa.