Εντολές τερματικού για ενημέρωση

Ξεκίνησε από alkisg, 18 Φεβ 2021, 12:14:47 ΜΜ

« προηγούμενο - επόμενο »

alkisg

Το Ubuntu και τα sch-scripts έχουν επιλογές για ενημερώσεις και για αφαίρεση παλιών πυρήνων και ορφανών πακέτων, αλλά μερικές φορές είναι καλύτερο ή γρηγορότερο να τα κάνουμε αυτά από τερματικό. Η παρακάτω μεγάλη εντολή κάνει ενημερώσεις ΚΑΙ αφαιρεί τα παλιά και ορφανά πακέτα. Είναι καλή τακτική να την τρέχουμε μια φορά τον μήνα:

Κώδικας: Bash
sudo -i
apt update && apt full-upgrade --yes && apt purge --auto-remove $(dpkg -l | awk '/^rc/ { print $2 }')


Προσοχή, υπάρχει μια περίπτωση στις εκατό κάποιος να χρειάζεται τα ορφανά του πακέτα, οπότε αν σας φανεί ότι πάει να σβήσει κάτι σημαντικό, πατήστε όχι!
Να περιγράψω ένα παράδειγμα όπου από κακή προηγούμενη χρήση, δημιουργείται πρόβλημα. Ας υποθέσουμε ότι για κάποιον λόγο κάποτε απεγκαταστήσαμε χειρωνακτικά ένα πακέτο που μας φάνηκε άχρηστο, το οποίο όμως έτυχε να είναι εξάρτηση ενός σημαντικού πακέτου:

Κώδικας: Bash
sudo apt purge apturl
...
Τα ακόλουθα πακέτα θα ΑΦΑΙΡΕΘΟΥΝ:
  apturl* ubuntu-mate-core* ubuntu-mate-desktop*


Η παραπάνω προειδοποίηση μας λέει ότι το ubunt-mate-desktop εξαρτάται από το apturl, κι αν απεγκαταστήσουμε το apturl, θα απεγκατασταθεί μαζί του και το ubuntu-mate-desktop.
Αν πατήσουμε ναι, τότε στη συνέχεια ΟΛΑ τα πακέτα που είχαν εγκατασταθεί μαζί με το ubuntu-mate-desktop θα είναι ορφανά. Και η επόμενη εντολή `apt purge` θα τα διαγράψει, αφήνοντάς μας χωρίς desktop!

Άρα το πρόβλημα δημιουργείται μόνο όταν έχουμε αφαιρέσει χειρωνακτικά κάποια πακέτα στο παρελθόν, όχι μετά από φυσιολογική χρήση.

Τέλος, η παρακάτω εντολή κάνει όλα τα updates, αφαιρεί τα πρόσθετα πακέτα, κάνει δημοσίευση εικονικού δίσκου, και τερματίζει τον εξυπηρετητή. Ό,τι πρέπει για να την τρέξουμε Παρασκευή μεσημέρι πριν φύγουμε:

Κώδικας: Bash
sudo -i
apt update && apt full-upgrade --yes && apt purge --yes --auto-remove $(dpkg -l | awk '/^rc/ { print $2 }') && ltsp image / && poweroff