Sådan forhindrer du Yum i at opdatere kernen
Når du kører produktionsservere, er den eneste ting, du ikke vil gøre, opgradering af kernen hver gang en ny opdatering kommer ud. Hvorfor? Fordi det er den eneste Linux opdateringsoperation, der kræver en genstart, når den er færdig - og i et produktionsmiljø kan du ofte ikke have nedetid.
Scenariet
Så du har endelig din rpm-baserede server indstillet, stabil og sikker. Livet er godt, og du regner ikke med at du skal gøre noget andet i nogen tid.
Derefter kører du af en eller anden grund på kommandolinjen som root:
#yum -y-d0 opdatering
Det der bare sker for at give et bekræftende svar på alle beskeder til yum-kommandoen. Som også sker for at løbe så stille som muligt. Og hvad sker denne gang for at inkludere en opdatering til kernelpakkerne.
Og nu fungerer det ikke korrekt. Hvordan kunne du have forhindret dette?
Selvom du selvfølgelig og desperat har brug for en ferie nu, bør du besøge din systemopdateringsplan, din dokumentation (som selvfølgelig er omhyggelig, aktuel og tilgængelig) og især konfigurationsfiler, der kontrollerer yum.
Men først, hvorfor ville du ikke gerne opdatere kernen?
- Somme tider går i stykker. En opdatering kan gøre moduler eller drivere uforenelige, så enheder som et trådløst kort er ikke længere funktionelle.
- Bevar versioner på tværs af serverpopulationer. Dette ville helt sikkert gælde, hvis du har en blanding af forskellige serverfordelinger sammen med nogle hjembyggede kasser.
- Kompilér kernen manuelt og dermed omgå den automatiske konfiguration leveret af yum
- Du er forfærdeligt stolt af din oppetid, så det ville ikke være i din bedste interesse at udføre en genstart for at aktivere den nye kerne. Så hvis du aldrig genstarter, er der aldrig behov for at opdatere det.
Hvorfor vil du gerne opdatere kernen?
- Primært - sikkerhed. Kerner har huller ligesom applikationer og, hvis de ikke er patched, kan give muligheder for at kompromittere systemet af de onde.
- Især hvis du ikke bruger et tredjepartsbibliotek, skal du holde din version så opdateret som muligt. Større distrosfrigivelse patches til alle deres inkluderede kode inklusive kernen og stræber efter at teste det før frigivelse for at sikre stabilitet. For ikke at opdatere er at ligge bagud, hvilket kan gøre det vanskeligere, når der udføres en opgradering til en større version.
- At udnytte en ny funktion (eller for at rette en tidligere brudt) ville gøre dig muligvis mere modtagelig over for en kerneopdatering.
For at opdatere kernen skal du bare gøre hvad du gjorde ovenfor. Eller bedre fjerner kommandolinjebrytterne, så du har en vis kontrol over opdateringsprocessen og kan se, hvad der sker. Løb:
#yum opdatering
og følg vejledningen.
Forebyggelse af Yum fra Opdatering af kernen
Men hvis du ikke altid vil blinde have kerneen opdateret, kan du tilføje følgende til din /etc/yum.conf fil:
udelukke = kerne *
Eller hvis du insisterer på at bruge en vaniljekonfigurationsfil og styre alt via CLI, skal du bruge
#yum -exclude = kernel * opdatering
Begge disse metoder eliminerer kernen fra at blive opdateret eller endda inkluderet i den potentielle opdateringsfortegnelse.