Pakettide värskenduste keelamine/lukustamine või musta nimekirja kasutamine Apt tööriista abil


APT tähendab, et Advanced Packaging Tool on veel üks Linuxi põhistest süsteemidest leitud paketihaldur. Algselt kujundatud dpkg jaoks .deb-pakettidega töötamiseks esiotsa, on apt suutnud näidata oma nähtavust Mac OS-is, Open Solarises jne.

Kas soovite Debiani paketihalduse haldamiseks APT ja DPKG käskude kohta teada saada ja õppida, siis kasutage meie põhjalikke artikleid, mis hõlmavad enam kui 30 näidet mõlema tööriista kohta.

Selles artiklis näeme mitmesuguseid tehnikaid paketi installimise, täiendamise ja eemaldamise keelamiseks/lukustamiseks Debian Linuxis ja selle derivaatides nagu Ubuntu ja Linux Mint.

1. Keelake/lukustage pakett, kasutades suvandit hold/unhold Opt-marki

Käsu apt-mark märgib tarkvarapaketi automaatselt installituks või tühistab selle ning seda kasutatakse koos valiku hoidmise või tühistamisega.

  1. ootel - seda valikut kasutatakse paki tagasilükatuks märkimiseks, mis blokeerib paketi installimise, täiendamise või eemaldamise.
  2. unhold - seda valikut kasutatakse paketi varem seatud ooteloleku eemaldamiseks ning paketi installimiseks, täiendamiseks ja eemaldamiseks.

Näiteks kui pakett ütleb, et apache2 pole installimiseks, ajakohastamiseks või desinstallimiseks saadaval, võite terminalis kasutada järgmist käsuõigustega käsku:

# apt-mark hold apache2

Selle paketi värskendamiseks kättesaadavaks muutmiseks asendage lihtsalt sõna „hold” sõnaga „unhold”.

# apt-mark unhold apache2

Pakettide värskenduste blokeerimine APT-eelistuste faili abil

Teine võimalus konkreetse paketi värskenduste blokeerimiseks on lisada selle kirje kataloogi /etc/apt/preferences või /etc/apt/preferences.d/official-package-repositories.pref fail. See fail vastutab teatud pakettivärskenduste värskendamise või blokeerimise eest vastavalt kasutaja määratud prioriteedile.

Paketi blokeerimiseks peate lihtsalt sisestama selle nime, lisafunktsiooni ja millisele prioriteedile soovite selle viia. Siin blokeeriks paketi prioriteet <1 .

Mis tahes paketi blokeerimiseks sisestage selle üksikasjad faili /etc/apt/preferences järgmiselt:

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

Näiteks paketi apache2 värskenduste blokeerimiseks lisage kirje, nagu näidatud:

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

Paketi, millele Pin-prioriteeti rakendame, edasiseks tuvastamiseks saame kasutada muid väljalaske märksõnaga valikuid. Need märksõnad on:

  1. a -> arhiiv
  2. c -> komponent
  3. o -> Päritolu
  4. l -> silt
  5. n -> Arhitektuur

nagu:

Pin: release o=Debian,a=Experimental

See tähendaks määratud paketi hankimist Debiani paketi katsearhiivist.

Pakendi värskenduse lisamine musta nimekirja APT Autoremove File abil

Teine viis paketi installimisest musta nimekirja lisamiseks on selle kirje värskendamine mõnes kataloogis /etc/apt/apt.conf.d/ sisalduvas failis, mis on 01autoremove.

Näidisfail on näidatud allpool:

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";
  };
};

Nüüd peate iga paketi mustas nimekirjas sisestama selle nime Never-MarkAuto-Sections -i. Sisestage lihtsalt pakendi nimi jaotise Never-MarkAuto-Section lõppu ning salvestage ja sulgege fail. See blokeeriks apt selle paketi täiendavate värskenduste otsimiseks.

Näiteks pakendi värskendamise musta nimekirja lisamiseks lisage kirje, nagu näidatud:

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

Kohandatud paketi valik värskendamiseks

Teine võimalus selleks on valida, mida soovite värskendada. Apt-tööriist annab teile vabaduse valida, mida soovite värskendada, kuid selleks peaksite teadma, mida kõik paketid on ajakohastamiseks saadaval.

Selliseks asjaks võib osutuda kasulikuks järgmine käskude komplekt:

a. Kui soovite loetleda, millistel pakettidel on värskendusi ootel.

# apt-get -u -V upgrade

b. Ainult valikuliste pakettide installimiseks.

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

Järeldus

Selles artiklis oleme selgitanud väheseid viise pakettide värskenduste keelamiseks, blokeerimiseks või musta nimekirja kasutamiseks APT-viisi abil. Kui teate mõnda muud eelistatud viisi, andke meile sellest teada kommentaaride kaudu või kui otsisite käsku paketi värskenduse keelamiseks/lukustamiseks, lugege seda artiklit allpool.