Mastodon
Connect with us

Open Source

Καθαρισμός χώρου σε Fedora — 7 εντολές που δουλεύουν

Καθαρισμός χώρου σε Fedora — 7 εντολές που δουλεύουν Πλεονάζων ψηφιακός «θόρυβος» σε ένα σύγχρονο σύστημα Το Fedora είναι

Published

on

Καθαρισμός χώρου σε Fedora — 7 εντολές που δουλεύουν

Πλεονάζων ψηφιακός «θόρυβος» σε ένα σύγχρονο σύστημα

Το Fedora είναι γνωστό για τις ενημερώσεις του, την καθαρή ενσωμάτωση upstream τεχνολογιών και τη σταθερότητα που προσφέρει. Παρ’ όλα αυτά, ακόμη κι ένα προσεκτικά ρυθμισμένο σύστημα μπορεί να γεμίσει με αχρείαστα αρχεία: κατεβασμένα πακέτα που έμειναν στην cache, προσωρινά αρχεία από διακομιστές ή εγκαταστάσεις, πιο παλιοί πυρήνες και αρχεία καταγραφής που διογκώνονται με την πάροδο του χρόνου. Το αποτέλεσμα είναι ότι ένα λογικά μικρό root partition (π.χ. 40 GB) μπορεί γρήγορα να φτάσει στο 80–90% χρησιμοποίησης — όχι από ένα ενιαίο μεγάλο αρχείο, αλλά από χιλιάδες μικρά και μεσαία κομμάτια δεδομένων.

Γιατί οι εντολές του τερματικού είναι συχνά προτιμότερες

Αν και υπάρχουν GUI εργαλεία και τρίτες εφαρμογές καθαρισμού, το Fedora παρέχει ισχυρά εργαλεία στη γραμμή εντολών που είναι γρήγορα, προβλέψιμα και ασφαλή όταν τα χρησιμοποιείς σωστά. Δεν χρειάζεται να εγκαταστήσεις επιπλέον εφαρμογές για να κερδίσεις χώρο — με λίγες προσεκτικές εντολές μπορείς να ανακτήσεις αρκετά megabyte ή και gigabyte, χωρίς να διακινδυνέψεις τη λειτουργικότητα του συστήματος. Επίσης, τα command-line βήματα είναι εύκολα να αυτοματοποιηθούν με systemd timers ή cron, πράγμα που βοηθά στη μακροπρόθεσμη συντήρηση.

Καθαρισμός cache του dnf

Η πιο προφανής αρχή είναι να ξεκινήσεις από την cache του dnf. Το dnf αποθηκεύει πακέτα και metadata στο /var/cache/dnf για να κάνει τις επόμενες εγκαταστάσεις πιο γρήγορες. Αυτό όμως σημαίνει ότι μετά από μήνες ενημερώσεων η cache μπορεί να γίνει σημαντική σε μέγεθος. Η εντολή:

sudo dnf clean all

αφαιρεί ό,τι έχει αποθηκευτεί τοπικά. Υπάρχει ένα μικρό trade-off: η επόμενη ενημέρωση μπορεί να πάρει λίγο περισσότερο χρόνο και bandwidth επειδή θα χρειαστεί να ξανακατεβάσει metadata και πακέτα. Σε περιβάλλον με περιορισμένο Internet αυτό πρέπει να ληφθεί υπόψη, αλλιώς είναι μια άμεση και ασφαλής λύση για γρήγορη απελευθέρωση χώρου.

Αφαίρεση ορφανών πακέτων

Κατά την εγκατάσταση λογισμικού το dnf κατεβάζει και εγκαθιστά εξαρτήσεις — βιβλιοθήκες και βοηθητικά πακέτα. Όταν κάποιο πρόγραμμα αφαιρεθεί, οι εξαρτήσεις μπορεί να παραμείνουν. Η εντολή:

sudo dnf autoremove

ελέγχει και αφαιρεί πακέτα που δεν χρειάζονται πλέον από κανένα άλλο πακέτο. Είναι σχετικά ασφαλές, αλλά αν προτιμάς να έχεις οπτική εικόνα, μπορείς πρώτα να δεις τι θεωρείται «unneeded» με:

sudo dnf repoquery –unneeded

Αν η εντολή repoquery δεν υπάρχει, συνήθως την εγκαθιστούμε με dnf-plugins-core ή yum-utils, ανάλογα με το σύστημα. Η προεπισκόπηση μειώνει τον κίνδυνο να αφαιρεθεί κάτι που τυχόν χρειάζεσαι έμμεσα.

Διαχείριση των systemd logs

Τα logs του systemd καταγράφονται από το journalctl και μπορούν με την πάροδο του χρόνου να φτάσουν σε gigabytes, ειδικά αν τρέχουν πολλά services ή βρίσκεται σε κατάσταση debugging. Μπορείς να περιορίσεις το μέγεθος των καταγραφών με:

sudo journalctl –vacuum-size=200M

ώστε να διατηρούνται παλαιότερα logs μέχρι οι καταγραφές να φτάσουν συνολικά τα 200 MB. Εναλλακτικά, μπορείς να κρατήσεις μόνο δεδομένα μιας συγκεκριμένης χρονικής περιόδου:

sudo journalctl –vacuum-time=2d

Επιπλέον, η μόνιμη ρύθμιση γίνεται στο /etc/systemd/journald.conf με παραμέτρους όπως SystemMaxUse και SystemMaxFileSize. Προσοχή: αν κρατάς logs για debugging ή auditing, μην σβήσεις ό,τι χρειάζεσαι για διερεύνηση προβλημάτων.

Καθαρισμός κάδου ανακύκλωσης και χρηστών

Πολλοί χρήστες «διαγράφουν» μέσω του περιβάλλοντος επιφάνειας εργασίας και τα αρχεία πάνε στον κάδο, αλλά δεν αφαιρούνται πραγματικά. Ο κατάλογος του χρήστη για τον κάδο βρίσκεται στο ~/.local/share/Trash/. Για μόνιμο καθαρισμό:

rm -rf ~/.local/share/Trash/*

Αυτό είναι μόνιμο και δεν υπάρχει undo, οπότε βεβαιώσου ότι δεν χρειάζεσαι κάτι από εκεί. Συνήθως απελευθερώνει γρήγορα αρκετό χώρο όταν έχεις μεταφέρει μεγάλα αρχεία στον κάδο χωρίς να τον αδειάσεις.

Καθαρισμός /var/tmp και ο ρόλος των προσωρινών αρχείων

Το Linux έχει δύο κύριες θέσεις για προσωρινά αρχεία: /tmp, που κατά κανόνα καθαρίζεται στη reboot, και /var/tmp, που διατηρείται ανάμεσα στα reboots. Πολλά εργαλεία και installers αποθηκεύουν μερικά κομμάτια στο /var/tmp και συχνά αυτά δεν διαγράφονται αυτόματα μετά το τέλος της εγκατάστασης. Για να τα καθαρίσεις:

sudo rm -rf /var/tmp/*

Είναι γενικά ασφαλές, αλλά απόφυγε να το εκτελέσεις κατά τη διάρκεια μιας μεγάλης εγκατάστασης ή ενημέρωσης. Εναλλακτικά, μπορείς να βασιστείς στο systemd-tmpfiles και τις ρυθμίσεις στο /etc/tmpfiles.d/ για πιο ελεγχόμενο καθαρισμό (π.χ. systemd-tmpfiles –clean).

Καθαρισμός χρηστικού cache χωρίς βλάβη στην απόδοση

Τα caches χρηστών στο ~/.cache μπορούν να φουσκώσουν, ειδικά αν χρησιμοποιείς browsers ή πακέτα που αποθηκεύουν μεγάλες εικόνες και thumbnails. Αντί να διαγράψεις τα πάντα, μια πιο ισορροπημένη προσέγγιση είναι να αφαιρέσεις αρχεία που δεν έχουν πρόσβαση για μεγάλο διάστημα:

find ~/.cache -type f -atime +30 -delete

Αυτό κρατάει τα πρόσφατα και ενεργά cache αντικείμενα και αφαιρεί ό,τι δεν έχει χρησιμοποιηθεί τον τελευταίο μήνα. Έτσι διατηρείται η απόδοση όπου χρειάζεται, ενώ εξαφανίζονται τα άχρηστα αποτυπώματα.

Αφαίρεση παλαιών πυρήνων — προσοχή στην εκτέλεση

Το Fedora διατηρεί πολλαπλούς πυρήνες για λόγους ασφαλείας: αν ο νέος πυρήνας αποτύχει, μπορείς να κάνεις boot σε έναν παλαιότερο. Κάθε πυρήνας καταλαμβάνει συνήθως 200–400 MB με modules και initramfs. Για να κρατήσεις, για παράδειγμα, τον τρέχοντα πυρήνα και έναν προηγούμενο, μπορείς να τρέξεις:

sudo package-cleanup –oldkernels –count=2

Αν η εντολή λείπει, εγκατέστησε yum-utils ή τα εργαλεία που παρέχονται από τη διανομή σου. Μην προσπαθήσεις να διαγράψεις χειροκίνητα αρχεία μέσα στο /boot — η σωστή διαχείριση γίνεται από τον package manager. Επίσης, προτείνεται να κάνεις reboot πριν και μετά τέτοιες αλλαγές αν έχεις αμφιβολίες για την κατάσταση του σύστημάτος.

Τι δεν πρέπει να πειράζεις πρόχειρα

Υπάρχουν περιοχές του συστήματος που μπορεί να φαίνονται σαν εύκολα targets αλλά είναι επικίνδυνες να διαγραφούν απευθείας. Απέφυγε να σβήσεις χειροκίνητα:

  • /boot — περιέχει πυρήνες και αρχεία του bootloader.
  • ~/.config — προσωπικές ρυθμίσεις εφαρμογών και επιφάνειας εργασίας.
  • /var/log — αν και μερικά logs μπορούν να περισωθούν, μην διαγράψεις όλο το φάκελο χωρίς λόγο.

Χρησιμοποίησε τα κατάλληλα εργαλεία (dnf, package-cleanup, journalctl, systemd-tmpfiles) αντί για τυχαίες rm εντολές σε κρίσιμους φακέλους.

Αυτοματισμός και προγραμματισμός συντήρησης

Το να κάνεις αυτές τις ενέργειες χειροκίνητα κάθε φορά είναι κουραστικό. Μπορείς να αυτοματοποιήσεις κομμάτια της διαδικασίας με systemd timers (π.χ. ένα timer που τρέχει εβδομαδιαία ένα σκριπτ με dnf clean all, autoremove και vacuum journal) ή με cron jobs για πιο απλά σενάρια. Εναλλακτικά, ρύθμισε τις παραμέτρους στο journald.conf και tmpfiles.d ώστε το ίδιο το σύστημα να περιορίζει αυτόματα μεγέθη και χρόνο ζωής αρχείων.

Ειδικές περιπτώσεις: Silverblue και άλλες παραλλαγές Fedora

Αν χρησιμοποιείς Fedora Silverblue ή άλλη immutable έκδοση που βασίζεται σε rpm-ostree, η διαδικασία καθαρισμού είναι διαφορετική: η διαχείριση πακέτων δεν γίνεται με dnf στην ίδια έννοια, και οι δίσκοι μπορεί να γεμίζουν από snapshots του ostree. Σε τέτοιες περιπτώσεις έλεγξε τα εργαλεία του rpm-ostree (π.χ. rpm-ostree cleanup or ostree prune) και τα btrfs/zfs snapshots αν είναι ενεργά. Η παραδοσιακή λίστα εντολών μπορεί να μην ισχύει αυτούσια για immutable συστήματα.

Γιατί έχει σημασία

Η ελευθέρωση χώρου δεν είναι μόνο για να νιώσεις καλύτερα βλέποντας περισσότερα gigabytes ελεύθερα. Ένα στριμωγμένο root partition μπορεί να προκαλέσει αποτυχημένες ενημερώσεις, να επιβραδύνει εφαρμογές που ψάχνουν χώρο για temporary αρχεία και, σε ακραίες περιπτώσεις, να οδηγήσει σε απώλεια λειτουργικότητας. Επιπλέον, η σωστή συντήρηση μειώνει την ανάγκη για μεγαλύτερα SSDs — ιδιαίτερα χρήσιμο σε laptops με μικρούς δίσκους — και διατηρεί το σύστημα προβλέψιμο και ασφαλές.

Τι σημαίνει για τους χρήστες

Οι χρήστες που τρέχουν Workstation σε φορητό με 128 ή 256 GB SSD θα δουν άμεσα όφελος από τα παραπάνω. Διαχειριστές servers που φιλοξενούν υπηρεσίες σε Fedora μπορούν να αποτρέψουν προβλήματα που προκύπτουν κατά τις αναβαθμίσεις. Όμως, πάντα ισχύει η βασική αρχή: προτού καθαρίσεις, κοίταξε τι θα διαγραφεί. Μια προληπτική λογική — preview, backup, και προγραμματισμός — κάνει τον καθαρισμό ασφαλή.

Συμπέρασμα

Με εφτά απλές αλλά σωστά χρησιμοποιημένες εντολές μπορείς να ανακτήσεις σημαντικό χώρο σε κάθε Fedora εγκατάσταση. Από το dnf clean all και το dnf autoremove, μέχρι το journalctl –vacuum-size, τον καθαρισμό ~/.cache και /var/tmp, κάθε βήμα εξυπηρετεί διαφορετικό κομμάτι του «θορύβου». Ο σωστός καθαρισμός βελτιώνει τη λειτουργία, μειώνει το ρίσκο σε ενημερώσεις και — με λίγη αυτοματοποίηση — διατηρεί το σύστημά σου καθαρό χωρίς να χρειαστείς τρίτες εφαρμογές.

Advertisement