Takarítás Linux alatt

Szeretnéd azonosítani és eltávolítani, kitakarítani a nem használt alkalmazásadatokat Ubuntu, Fedora, Debian, Arch stb. Linux rendszeren? Ez a szkript képes észlelni és eltávolítani a nem használt alkalmazásadatokat. Nagyon bosszantó, ha eltávolítasz egy alkalmazást, de a beállító könyvtára ott marad a saját könyvtáradban. Egy idő után már viszonylag sok ilyen felesleges adathalmaz szemeteli tele a gépedet. Alapesetben ezeknek lehet szerepe: ha visszateszed a letörölt programot ezek tartalmazzák a saját beállításaidat. De nem mindig kell a régi beállítás, és nem mindig rakod vissza a leszedett programot. Egy nagyobb takarítás manuálisan elég macerás, hiszen egesével kellene letörölni a már nem kívánt mappákat.

Mi is a probléma?

A programok a saját felhasználó beállításokat lementik a felhasználó könyvtárába. De nem távolítják el a program törlésénél. A programok jellemzően (amelyek betartják a szabványt!) a

  • az alkalmazás gyorsítótárát a .cache
  • konfigurációs adatokat a .config
  • a flatpak adatokat a .var/app

mappába mentik. Ezeket ismerni illő, mert esetleg használni is kell a törléseknél az elérési utat. Amit tudni érdemes: ezek ponttal kezdődő mappák, így rejtettek, azaz ha nem látod őket a fájlkezelőben engedélyezd a rejtett féjlok megjelenítését.

A szkript, amelyet bemutatok, az „XDG Unused Data” nevet viseli. Ez egy új projekt, amely eddig a következőként telepített alkalmazásokhoz működik .deb, .rpm, és más natív csomagok. Azaz van egy bizonyos kör amiben jól fog működni, és lesz ahol nem.
Ami fontos: a csomagkezelésnél minden esetben figyelj oda a program eltávolításánál a teljes törlésre, illetve a fel nem használt függőségek korrekt eltávolítására. Ez nem

Előkészületek a takarításhoz

A szkript a „jq”-tól függ, amely a legtöbb Linux-tárolóban elérhető. telepítsd a rendszerednek megfeleő módon.

A következő lépés a program klónozása, használtba vétele.

Tipp: abban a könyvtárban hozz létre (oda klónozd a tárolót) ahol el is éred a PATH-ban. A programoknak legyen egy saját könyvtára, ahol az összes ilyen programot megtalálod. Egy ilyen munkakönyvtárt csak egyszer kell betenni a PATH-ba és minden alkönyvtára (így minden alkönyvtárban lévő program) elérhető lesz.
Ezután vagy felmegyünk a github tárhelyre és letöltjük a programot, vagy terminálban leszedjük a csomagot. Mindegyik megoldás jó, a terminálos lépései:

git clone https://github.com/pawel-0/xdg-unused-data

Ha hibajelet kapsz, hogy nincs fenn a git, akkor telepítsd, a Linux-tárolókban bent van! Ezt a parancsot az előbb megbeszélt könyvtárban érdemes futtatni, mert a letöltéssel létrejön a xdg-unused-data könyvtár és abban lesznek a program állományai.

cd xdg-unused-data/

Belépünk a könyvtárba. Majd futtathatóvá tesszük a programot:

chmod +x ./xdg-unused-data.sh

Fontos látni, hogy ez egy felhasználói szintű engedély, nem kell hozzá sudo jog.

Takarítás megkezdése

./xdg-unused-data.sh

Paranccsal el is indíthatjuk a programot. A ./ itt annyit jelent, hogy az adott könyvtárban, ahol most vagyok az ott található állományra vonatkozik a parancs. Ha az előbb emlegetett könyvtár és PATH rendszert használod, akkor nem feltétlenül kell, mert akkor a PATH-ban lévő állományokat automatikusan megtalálja.
Nyugodtan futtassuk, mert ez egy teszt futatás, amiben csak felderíti a felesleges könyvtárakat, najd kilistázza:

[KmyMoney]: /home/laci/.aqbanking (16.02 kB)
Summary:
Total files: 1
Total size: 16.02 kB

Nekem ennyi volt a szemetelés. Egy olyan programot talált, pontosabban annak a fennmaradt beállítási könyvtárát.

Két lehetőséged van. Az egyik az így felderített könyvtárakat végignézed, és kézzel törlöd őket. Ez a profibb megoldás. Ami automatább, de hordoz kockázatot, ha egy rövid parancssoros megoldás segítségével a megtalált feleslegesnek jelzett könyvtárakat leszedetjük.

./xdg-unused-data.sh | xargs rm -rf

Azaz simán átadjuk a találatokat a törlést végző parancsnak. Ilyenkor kikerül a kontroll a kezünkből, esetleg olyan saját beállítás is eltűnik, amit em akarunk eliminálni.

Hibajavítás

Én nem futottam bele, de lehetséges, hogy más rendszeren kell az alábbi párváltozó megadása:

export XDG_DATA_HOME=$HOME/.local/share 
export XDG_CONFIG_HOME=$HOME/.config 
export XDG_STATE_HOME=$HOME/.local/state 
export XDG_CACHE_HOME=$HOME/.cache

Terminálban simán bemásolod, és amig a terminál fut, adding élnek majd ezek a változók is.

Ha ezután már simán működik a szkript, akkor add meg a .bashrc-ben állandóra. Simán csak be kell írni.

Ahogy látni egy nagyon kezes kis programocska, egy feladatot jól ellát, a takarítást.

 

Ha tetszett a bejegyzés látogass el a blogomba: https://magyarlinux.hu/

A youtube csatornám: https://www.youtube.com/channel/UCk1lOfX4qlaeEk2VhLu5DRg

Ha a bejegyzéshez tartalmi kiegészítést teszel, amit érdemes lehet az eredetibe is elhelyezni, akkor azt jelezd a linuxvideok@protonmail.com címemre! A blog alatti hozzászólásokat nem mindig nézem.

Hozzászólások

csuhas32 képe

Hogy jön ez ide?! – VirtualBox, ezt a hibaüzenetet kapom

Értékelés: 

0
Még nincs értékelve

#1 Nyiss már neki légy oly kedves egy témát és ne ide szemetelj! Köszi!
(Amúgy szerintem a BIOS-ban engedélyezni kellene a virtualizációt..., de remélem jön egy modi, vagy valami hasonló emelt jogú tag és törli ezt a szálat!)

Hogy jön ez ide?! – VirtualBox, ezt a hibaüzenetet kapom

Értékelés: 

0
Még nincs értékelve

#1.1

Adj egy tippet hová tegyem ezt a bejegyzést...A BIOS-ban nem találok utalást virtualizáció engedélyezéssel kapcsolatban.

Kösz a türelmedet.

csuhas32 képe

Hogy jön ez ide?! – VirtualBox, ezt a hibaüzenetet kapom

Értékelés: 

0
Még nincs értékelve

#1.1.1 Navigáció/ Tartalom hozzáadása / Fórumtéma

A Fórum* Érték kiválasztása mezőben én az „-Alkalmazások”-at választanám.