Jinsi ya Kuzima/Kufunga au Usasisho wa Kifurushi cha Orodha Nyeusi kwa kutumia Apt Tool


APT inamaanisha Advanced Packaging Tool ni kidhibiti kingine cha kifurushi kinachopatikana kwenye mifumo ya msingi ya Linux. Hapo awali iliundwa kama sehemu ya mbele ya dpkg kufanya kazi na vifurushi vya .deb, apt amefaulu kuonyesha mwonekano wake kwenye Mac OS, Open Solaris n.k.

Unataka kujifunza na kujua vyema amri za APT na DPKG ili kudhibiti udhibiti wa kifurushi cha Debian, kisha utumie makala yetu ya kina ambayo yatajumuisha zaidi ya mifano 30+ kwenye zana zote mbili.

Katika makala haya tutaona mbinu mbalimbali za kulemaza/kufunga kifurushi kutoka kwa kusakinisha, kusasisha na kuondoa katika Debian Linux na viambajengo vyake kama vile Ubuntu na Linux Mint.

1. Zima/Funga Kifurushi Kwa kutumia ‘apt-mark’ yenye Chaguo la kushikilia/kushikilia

Amri ya apt-mark itatia alama au kubatilisha alama ya kifurushi cha programu kuwa kimesakinishwa kiotomatiki na kitatumika kwa chaguo la kushikilia au kusimamisha.

  1. shikilia - chaguo hili linalotumika kutia alama kwenye kifurushi kuwa kimezuiliwa, ambacho kitazuia kifurushi kusakinishwa, kuboreshwa au kuondolewa.
  2. sitasita - chaguo hili lilitumika kuondoa kizuizi kilichowekwa awali kwenye kifurushi na kuruhusu kusakinisha, kuboresha na kuondoa kifurushi.

Kwa mfano, kwa kufanya kifurushi kusema apache2 haipatikani kwa kusakinisha, kusanikisha au kusanidua, unaweza kutumia amri ifuatayo kwenye terminal na upendeleo wa mizizi:

# apt-mark hold apache2

Ili kufanya kifurushi hiki kipatikane kwa sasisho, badilisha tu 'shikilia' na 'sitasita'.

# apt-mark unhold apache2

Kuzuia Usasisho wa Kifurushi Kwa Kutumia Faili ya Mapendeleo ya APT

Njia nyingine ya kuzuia masasisho ya kifurushi mahususi ni kuongeza ingizo lake katika /etc/apt/preferences au /etc/apt/preferences.d/official-package-repositories.pref faili. Faili hii ina jukumu la kusasisha au kuzuia masasisho fulani ya kifurushi kulingana na kipaumbele kilichobainishwa na mtumiaji.

Ili kuzuia kifurushi, unahitaji tu kuingiza jina lake, kipengele cha ziada, na kwa kipaumbele gani unataka kuipeleka. Hapa, kipaumbele < 1 kingezuia kifurushi.

Kwa kuzuia kifurushi chochote, ingiza tu maelezo yake katika faili /etc/apt/preferences kama hii:

Package: <package-name> (Here, '*' means all packages)
Pin: release *
Pin-Priority: <less than 0>

Kwa mfano kuzuia sasisho za kifurushi apache2 ongeza kiingilio kama inavyoonyeshwa:

Package: apache2
Pin: release o=Ubuntu
Pin-Priority: 1

Tunaweza kutumia chaguo zingine zilizo na nenomsingi la kutolewa kwa kubainisha zaidi kifurushi ambacho tunatumia Kipaumbele cha Pini. Maneno muhimu hayo ni:

  1. a -> Hifadhi
  2. c -> Sehemu
  3. o -> Asili
  4. l -> Lebo
  5. n -> Usanifu

kama:

Pin: release o=Debian,a=Experimental

Inamaanisha kuvuta kifurushi kilichotajwa kutoka kwa kumbukumbu ya majaribio ya kifurushi cha Debian.

Orodhesha sasisho la Kifurushi kwa kutumia APT Autoremove Faili

Njia nyingine ya kuorodhesha kifurushi kutoka kwa usakinishaji ni kusasisha ingizo lake katika mojawapo ya faili zilizomo kwenye saraka ya /etc/apt/apt.conf.d/ ambayo ni 01autoremove.

Sampuli ya faili imeonyeshwa hapa chini:

APT
{
  NeverAutoRemove
  {
        "^firmware-linux.*";
        "^linux-firmware$";
  };

  VersionedKernelPackages
  {
        # linux kernels
        "linux-image";
        "linux-headers";
        "linux-image-extra";
        "linux-signed-image";
        # kfreebsd kernels
        "kfreebsd-image";
        "kfreebsd-headers";
        # hurd kernels
        "gnumach-image";
        # (out-of-tree) modules
        ".*-modules";
        ".*-kernel";
        "linux-backports-modules-.*";
        # tools
        "linux-tools";
  };

  Never-MarkAuto-Sections
  {
        "metapackages";
        "restricted/metapackages";
        "universe/metapackages";
        "multiverse/metapackages";
        "oldlibs";
        "restricted/oldlibs";
        "universe/oldlibs";
        "multiverse/oldlibs";
  };
};

Sasa, ili kuorodhesha kifurushi chochote, unahitaji tu kuingiza jina lake katika Never-MarkAuto-Sections. Ingiza tu jina la kifurushi mwishoni katika Never-MarkAuto-Section na Hifadhi na Ufunge faili. Hii ingezuia apt ya kutafuta sasisho zaidi za kifurushi hicho.

Kwa mfano, kuorodhesha kifurushi kutoka kwa kusasishwa ongeza kiingilio kama inavyoonyeshwa:

Never-MarkAuto-Sections
  {
        "metapackages";
        "restricted/metapackages";
        "universe/metapackages";
        "multiverse/metapackages";
        "oldlibs";
        "restricted/oldlibs";
        "universe/oldlibs";
        "multiverse/oldlibs";
        "apache2*";
  };
};

Uteuzi Maalum wa Kifurushi kwa Usasishaji

Njia nyingine mbadala ya hii ni kuchagua unachotaka kusasisha. Chombo kinachofaa hukupa uhuru wa kuchagua unachotaka kusasisha, lakini kwa hili unapaswa kuwa na maarifa juu ya ni vifurushi vyote vinapatikana kwa uboreshaji.

Kwa jambo kama hilo, seti zifuatazo za amri zinaweza kusaidia:

a. Ili Kuorodhesha ni vifurushi gani vina masasisho yanayosubiri.

# apt-get -u -V upgrade

b. Ili kusakinisha vifurushi vilivyochaguliwa pekee.

# apt-get --only-upgrade install <package-name>

Hitimisho

Katika makala haya, tumeelezea njia chache za kuzima/kuzuia au kuorodhesha masasisho ya vifurushi kwa kutumia njia ya APT. Ikiwa unajua njia nyingine yoyote inayopendekezwa, tujulishe kupitia maoni au ikiwa ulikuwa unatafuta yum amri ya kuzima/funga sasisho la kifurushi, basi soma nakala hii hapa chini.