[LINUX] Megtelt boot partíció kitisztítása

Ritkán, de előfordulhat, hogy betelik a /boot partíció a linux gépeken, ilyenkor a régi kerneleket érdemes törölni, de ez nem mindig egyszerű.

A lemez kihasználtságát az alábbi paranccsal tudod megnézni:

df -h

A képen már a tisztogatás utáni állapot látható, így már csak 39%-os foglaltságon áll a /boot partíció

Ilyenkor az apt-get upgrade megszakad a kernel frissítése közben, mivel nincs több hely az adott partíción. Ez folyamatosan hibákat dob, és van olyan is (mint az én esetemben), hogy emiatt már egyáltalán nem futnak le a frissítések, mivel a  korábbiak hibával zárultak le.

Ilyenkor mondaná az ember, hogy akkor a régi, nem használatos kerneleket purge-öljük, de ez azzal jár, hogy az apt-get purge 4.4.0-1xx-generic parancs is hibára fut, mivel az apt csomagkezelő előbb ki akarja javítani a félig feltelepített kerneleket.

A megoldás erre az, ha a már nem használatos kernel fájlokat manuálisan kitöröljük (nagyon fontos, hogy óvatosan járjunk el, és az éppen aktuális és a frissebb kernelt ne töröljük), majd pedig a dpkg csomag kezelővel egyenként töröljük a régi kerneleket.

Nézzük meg, hogy jelenleg a rendszer melyik kernelt használja, ezt pedig jegyezzük fel valahova:

uname -a

Jelenleg a 4.4.0-140-generic linux kernelt használja a szerver.

Menjünk be a /boot mappába és listázzuk ki a fájlokat:

cd /boot
ls -l

Mint látható, minden kernel verzióhoz 6 különböző fájl tartozik.

ÓVATOSAN JÁRJUNK EL, TÖBBSZÖR ELLENŐRIZZÜK, HOGY NEM ÍRUNK-E EL VALAMIT!!!

Mint látható, kernelenként az összes fájl végződése ugyanaz,  így lehet egyszerűsíteni, de csakis óvatosan! Semmiképp se töröld az éppen használt és annál újabb kerneleket!

sudo rm -rf *4.4.0-134-generic *4.4.0-139-generic

Ezzel kitöröltük a 134-es és a 139-es kernel fájljait, így felszabadul egy kis hely (általában ennél jóval több régi kernel van), és tovább haladhatunk.

Listázzuk ki a régi kerneleket:

sudo dpkg --list 'linux-image*'|awk '{ if ($1=="ii") print $2}'|grep -v `uname -r`

Mint látható, a rendszer még úgy veszi, hogy a régi kernelek telepítve vannak, még akkor is, ha a fájlok már nincsenek a helyükön.

Ha most nyomnál egy apt-get purge ‘linuxkernel’-t, akkor először ki akarná javítani a rendszer a hibákat, így újra letöltené és megpróbálná telepíteni őket és egyből betelne a partíció.

Használjuk a DPKG csomagkezelőt, és manuálisan egyenként töröljük a kernel csomagokat:

sudo dpkg --remove linux-image-4.4.0-134-generic

Ha minden fölösleges kernel csomagját töröltük, akkor futtassuk le a következőt, hogy a korábban befejezetlen telepítéseket javítsuk:

sudo apt-get install -f

Hagyjuk, hogy lemenjenek a telepítések/frissítések, majd pedig töröljük a már nem szükséges csomagokat

sudo apt-get autoremove

Ezután ellenőrizzük a /boot partíció telítettségét:

df -h

Ha minden rendben ment, akkor már nincs több teendőnk.

ZoliBen

Kamu.

You may also like...

Vélemény, hozzászólás?

Az e-mail címet nem tesszük közzé. A kötelező mezőket * karakterrel jelöltük

Ez az oldal az Akismet szolgáltatást használja a spam csökkentésére. Ismerje meg a hozzászólás adatainak feldolgozását .