Hoe Yum te voorkomen dat de kernel wordt bijgewerkt
Wanneer u productieservers draait, is het enige dat u niet wilt doen, het upgraden van de kernel telkens wanneer een nieuwe update verschijnt. Waarom? Omdat dat de enige Linux-updatebewerking is die een herstart vereist zodra deze is voltooid - en in een productieomgeving kunt u vaak geen downtime hebben.
Het scenario
Dus je hebt eindelijk je op rpm gebaseerde server ingesteld, stabiel en veilig. Het leven is goed en je denkt niet dat je al een tijdje iets anders moet doen.
Vervolgens wordt u om een of andere reden als root uitgevoerd op de opdrachtregel:
#yum -y -d0 update
Die toevallig een bevestigend antwoord geeft op alle prompts voor het yum-commando. Dat gebeurt ook zo stil mogelijk. En wat gebeurt er deze keer om een update van de kernelpakketten op te nemen.
En nu werken de dingen niet correct. Hoe had je dit kunnen voorkomen??
Hoewel u nu duidelijk en dringend een vakantie nodig heeft, moet u uw systeemupdateschema, uw documentatie (die uiteraard nauwgezet, actueel en direct beschikbaar is) en vooral de configuratiebestanden die yum beheersen, opnieuw bezoeken.
Maar eerst zou je de kernel willen bijwerken?
- Dingen breken soms. Een update kan modules of stuurprogramma's incompatibel maken, zodat apparaten zoals een draadloze kaart niet langer werken.
- Behoud versies over serverpopulaties. Dit zou zeker van toepassing zijn als je een mix van verschillende serverdistributies hebt samen met enkele zelfgemaakte boxen.
- De kernel handmatig gecompileerd, dus de automatische configuratie omzeild door yum
- Je bent vreselijk trots op je uptime, dus het uitvoeren van een reboot om de nieuwe kernel te activeren zou niet in je beste belang zijn. Dus als u nooit opnieuw opstart, hoeft u deze nooit bij te werken.
Waarom zou je de kernel willen bijwerken??
- In de eerste plaats - beveiliging. Kernels hebben gaten net als toepassingen en kunnen, als ze niet worden gepatcht, kansen bieden voor het compromitteren van het systeem door de slechteriken.
- Vooral als u geen repository van derden gebruikt, om uw versie zo actueel mogelijk te houden. Grote distro's geven patches vrij aan alle bijbehorende code inclusief de kernel en proberen deze te testen voordat ze worden vrijgegeven om stabiliteit te garanderen. Niet updaten is achterblijven wat het moeilijker kan maken bij het uitvoeren van een upgrade naar een majorversie.
- Door gebruik te maken van een nieuwe functie (of om een eerder defecte functie te repareren) zou je mogelijk meer vatbaar zijn voor een kernel-update.
Om de kernel bij te werken doe je gewoon wat je hierboven hebt gedaan. Of, beter, elimineer de opdrachtregelopties, zodat u enige controle hebt over het updateproces en kunt zien wat er gebeurt. Rennen:
#yum update
en volg de aanwijzingen.
Voorkomen dat Yum de kernel bijwerkt
Als je echter niet wilt dat de kernel gewoon blindelings wordt bijgewerkt, kun je het volgende toevoegen aan je /etc/yum.conf-bestand:
exclude = kernel *
Of gebruik als u erop staat een vanille-configuratiebestand te gebruiken en alles via de CLI te beheren
#yum -exclude = kernel * update
Beide methoden zorgen ervoor dat de kernel niet wordt bijgewerkt of zelfs wordt opgenomen in de lijst met mogelijke updates.