Το apt install f κάνει τι. Σύστημα διαχείρισης πακέτων APT

Μερικές φορές υπάρχουν περιπτώσεις που πρέπει να μάθετε ποια πακέτα είναι εγκατεστημένα στο σύστημα. Αυτό μπορεί να είναι απαραίτητο εάν το θέλετε αντιγράφων ασφαλείαςεγκατεστημένα πακέτα, ελέγξτε την ακεραιότητά τους, μεταφέρετε όλα τα πακέτα σε άλλο σύστημα και για πολλές άλλες εργασίες. Στο Debian, μπορούν να χρησιμοποιηθούν διάφορες μέθοδοι για αυτό.

Στο σημερινό άρθρο, θα δούμε πώς να παραθέσουμε τα εγκατεστημένα πακέτα Debian χρησιμοποιώντας το τερματικό, τη διεπαφή κατάρες και επίσης το GUI. Τέτοιες λίστες μπορούν να χρησιμοποιηθούν όχι μόνο για Κρατήστε αντίγραφο, αλλά και απλώς να επαναλάβετε και να αφαιρέσετε περιττά προγράμματα, καθαρίζοντας έτσι το σύστημα από τα συντρίμμια.

Ο πρώτος τρόπος προβολής των εγκατεστημένων πακέτων Debian είναι με το βοηθητικό πρόγραμμα dpkg. Μπορεί να χρησιμοποιηθεί όχι μόνο στο Debian, αλλά σε όλες τις διανομές που βασίζονται σε αυτό:

dpkg --get-selections | grep -v απεγκατάσταση

dpkg --get-selections | grep -v deinstall > mylist.txt

Μπορείτε επίσης να αφαιρέσετε όλες τις περιττές πληροφορίες και να διατηρήσετε μόνο τα ονόματα των πακέτων:

dpkg -l | grep ^ii | awk "(εκτύπωση $2)" > mylist.txt

Ο επόμενος τρόπος για να ολοκληρώσετε αυτήν την εργασία είναι να χρησιμοποιήσετε το βοηθητικό πρόγραμμα dpkg-query. Είναι παρόμοιο με την προηγούμενη έκδοση, αλλά λίγο πιο απλό. Αυτή η εντολή θα εμφανίσει όλα τα εγκατεστημένα πακέτα μαζί με πληροφορίες σχετικά με αυτά:

Και εδώ, μπορείτε να επιλέξετε μόνο ονόματα πακέτων με την επιλογή -f:

dpkg-query -f "$(binary:Package)\n" -W

Η τρίτη μέθοδος είναι το βοηθητικό πρόγραμμα apt που έχουμε συνηθίσει να χρησιμοποιούμε για την εγκατάσταση εφαρμογών, έχει μια εντολή λίστας:

apt list --εγκατεστημένο

apt list --εγκατεστημένο | grep python

Καλύψαμε το apt με περισσότερες λεπτομέρειες στο άρθρο. Ένα άλλο ενδιαφέρον χαρακτηριστικό του apt είναι να δείτε ποια πακέτα έχουν εγκατασταθεί χειροκίνητα. Για να το κάνετε αυτό, πληκτρολογήστε:

εγχειρίδιο επίδειξης apt-mark

Και μια άλλη επιλογή χρησιμοποιώντας το apt:

apt-cache pkgnames

Το εργαλείο διαχείρισης πακέτων aptitude σάς επιτρέπει επίσης να παραθέσετε τα εγκατεστημένα πακέτα:

αναζήτηση ικανοτήτων "~i!~M"

Επίσης, το aptitude μπορεί να τρέξει σε λειτουργία κατάρες, κάτι που είναι πολύ βολικό:

Ο τελευταίος τρόπος για να δείτε τη λίστα των εγκατεστημένων πακέτων είναι στο αρχείο /var/lib/apt/extended_states. Αυτή είναι μια βάση δεδομένων που περιέχει εγκατεστημένα προγράμματα debian σε αυτή τη μορφή:

Πακέτο: πακέτο_όνομα
Αρχιτεκτονική: αρχιτεκτονική
Αυτόματη εγκατάσταση: 0_ή_1

cat /var/lib/apt/extended_states

Επαναφορά της λίστας των εγκατεστημένων πακέτων

Πολλοί χρήστες δημιουργούν μια λίστα πακέτων όχι μόνο για να τα κοιτάξουν, αλλά για μελλοντική ανάκτηση. Εάν δημιουργήσατε μια λίστα χρησιμοποιώντας dpkg, τότε μπορεί πολύ εύκολα να επαναφερθεί στο σύστημα χρησιμοποιώντας μια παρόμοια εντολή:

sudo dpkg --διαγραφή επιλογών
$ sudo dpkg --set-selections< mylist.txt

Όλα είναι πολύ απλά. Για να εγκαταστήσετε πακέτα αφού τα προσθέσετε στη λίστα, χρησιμοποιήστε την εντολή:

sudo apt dselect-upgrade

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

xargs< mylist.txt apt install -y

συμπεράσματα

Σε αυτό το άρθρο, εξετάσαμε πώς να παραθέσουμε τα εγκατεστημένα πακέτα Debian. Αυτό μπορεί να είναι πολύ χρήσιμο και είναι αρκετά εύκολο να γίνει. Ελπίζω ότι αυτές οι πληροφορίες ήταν χρήσιμες για εσάς.

ΚΑΤΑΛΛΗΛΟΣ (Προηγμένο εργαλείο συσκευασίας) είναι ένα βοηθητικό πρόγραμμα στο Debian-όπως τα συστήματα που εγκαθιστούν, ενημερώνουν πακέτα και παρακολουθούν τις εξαρτήσεις τους. Σκοπός της δημιουργίας του προγράμματος ήταν η αυτοματοποίηση της διαδικασίας διαχείρισης πακέτων, ιδίως η ενημέρωση και η διατήρηση των εξαρτήσεων, η οποία, στην περίπτωση άμεσης εργασίας με τον διαχειριστή dpkg, γινόταν χειροκίνητα. Τα πακέτα χειρίζονται απευθείας χρησιμοποιώντας το πρόγραμμα apt-get, οι κύριες εντολές για εργασία με τις οποίες θα συζητηθούν παρακάτω.

Γενική δομή της εντολής apt-get

apt-get [επιλογές] εντολή πακέτο1 πακέτο2 ... πακέτοΝ

Οι ακόλουθες επιλογές μπορεί να είναι χρήσιμες όταν εργάζεστε με apt-get:

Ενημέρωση της λίστας των πακέτων που είναι διαθέσιμα για εγκατάσταση

Αυτή η ενέργεια εκτελείται χρησιμοποιώντας την εντολή:

apt-get ενημέρωση

Η ενημέρωση της λίστας είναι ιδιαίτερα σημαντική εάν θέλετε να εγκαταστήσετε την πιο πρόσφατη και σταθερή έκδοση ενός πακέτου. Όταν εκτελείται αυτή η εντολή, το πρόγραμμα σαρώνει τα αρχεία που καθορίζονται στο αρχείο /etc/apt/sources.list.

Εγκατάσταση πακέτου

Για να εγκαταστήσετε ένα πακέτο, χρησιμοποιήστε την εντολή:

apt-get όνομα πακέτου εγκατάστασης

Σαν άποτέλεσμα, ΚΑΤΑΛΛΗΛΟΣθα αναζητήσει την πιο πρόσφατη έκδοση του καθορισμένου πακέτου και θα ελέγξει εάν έχει εξαρτήσεις. Εάν υπάρχουν εξαρτήσεις, θα εμφανιστεί μια λίστα με αυτές και μια πρόταση εγκατάστασης.

[email προστατευμένο]:~# apt-get install aee Ανάγνωση λιστών πακέτων... Ολοκληρώθηκε Δόμηση εξαρτήσεων Ανάγνωση πληροφοριών κατάστασης... Ολοκληρώθηκε Θα εγκατασταθούν τα ακόλουθα επιπλέον πακέτα: libx11-6 libx11-data libxau6 libxcb1 libxdmcp6 Θα εγκατασταθούν τα ακόλουθα ΝΕΑ πακέτα: aee libx11-6 libx11-data libxau6 libxcb1 libxdmcp6 0 αναβαθμισμένη, 6 πρόσφατα εγκατεστημένα, 0 προς κατάργηση και 44 μη αναβαθμισμένα. Πρέπει να αποκτήσετε αρχεία 181 kB/1297 kB. Μετά από αυτή τη λειτουργία, θα χρησιμοποιηθούν 4366 kB επιπλέον χώρου στο δίσκο. Θέλετε να συνεχίσετε;

Εάν δεν υπάρχουν εξαρτήσεις, η διαδικασία εγκατάστασης θα πραγματοποιηθεί αυτόματα χωρίς καμία προτροπή.

Επίσης, κατά την εισαγωγή της εντολής εγκατάστασης πακέτων, μπορείτε να καθορίσετε τα ονόματα των πακέτων που πρέπει να αφαιρεθούν. Για να το κάνετε αυτό, προσθέστε μια παύλα στο τέλος του ονόματος του πακέτου που πρόκειται να αφαιρεθεί. Ένα παράδειγμα τέτοιας μεθόδου εγκατάστασης/απεγκατάστασης φαίνεται παρακάτω:

[email προστατευμένο]. : htop Θα εγκατασταθούν τα ακόλουθα ΝΕΑ πακέτα: aee libx11-6 libx11-data libxau6 libxcb1 libxdmcp6 0 αναβαθμισμένα, 6 πρόσφατα εγκατεστημένα, 1 προς κατάργηση και 43 μη αναβαθμισμένα. Πρέπει να αποκτήσετε αρχεία 1297 kB. Μετά από αυτήν τη λειτουργία, θα χρησιμοποιηθούν 4157 kB επιπλέον χώρου στο δίσκο. Θέλετε να συνεχίσετε;

Όπως μπορείτε να δείτε από το παράδειγμα, το πακέτο aee προετοιμάζεται για εγκατάσταση, ενώ το πακέτο htop προετοιμάζεται για αφαίρεση.

Επανεγκατάσταση πακέτου

Εάν καταστεί απαραίτητο να επανεγκαταστήσετε το πακέτο (καταστροφή αρχείου, περισσότερα νέα έκδοση), μπορεί να γίνει με την ακόλουθη εντολή:

apt-get -- επανεγκαταστήστε το όνομα πακέτου εγκατάστασης

Αφαίρεση πακέτου

Υπάρχουν δύο επιλογές για την αφαίρεση πακέτων:

  • Αφαίρεση του πακέτου εκτός από τα αρχεία διαμόρφωσης (εάν υπάρχουν).

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

apt-get αφαιρέστε το όνομα πακέτου

Αξίζει επίσης να σημειωθεί ότι εάν το πακέτο που αφαιρείται έχει εξαρτήσεις, θα αφαιρεθεί μαζί με αυτές.

  • Πλήρης αφαίρεση πακέτου

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

apt-get -- εκκαθάριση αφαίρεση ονόματος πακέτου

Τα πακέτα που επισημαίνονται για πλήρη αφαίρεση έχουν "*" στο τέλος του ονόματός τους.

  • Απεγκατάσταση και εγκατάσταση με μία εντολή

Επιπλέον, κατά την απεγκατάσταση, μπορείτε να επισημάνετε τη λίστα των πακέτων που πρόκειται να εγκατασταθούν. Για να το κάνετε αυτό, πρέπει να καθορίσετε " + ” στο τέλος του ονόματος του πακέτου. Ένα παράδειγμα μιας τέτοιας εντολής φαίνεται παρακάτω:

[email προστατευμένο]. 1 πρόσφατα εγκατεστημένο, 1 για αφαίρεση και 43 μη αναβαθμισμένο. Πρέπει να αποκτήσετε αρχεία 624 kB. Μετά από αυτή τη λειτουργία, θα χρησιμοποιηθούν 975 kB επιπλέον χώρου στο δίσκο. Θέλετε να συνεχίσετε;

Ενημέρωση πακέτων

apt-get ενημέρωση

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

apt-get -u αναβάθμιση

Καθορισμένη παράμετρος -uχρησιμοποιείται για τη λήψη μιας ολοκληρωμένης λίστας πακέτων που θα προετοιμαστούν για την ενημέρωση.

Ενημέρωση έκδοσης διανομής

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

Το βοηθητικό πρόγραμμα apt-get είναι ένα ισχυρό δωρεάν πρόγραμμα κονσόλας που χρησιμοποιείται και συνεργάζεται με τη βιβλιοθήκη APT (Advanced Packaging Tool) για την εγκατάσταση νέων πακέτων λογισμικού, την κατάργηση υπαρχόντων, την αναβάθμιση εγκατεστημένων και την αναβάθμιση ολόκληρου του λειτουργικού συστήματος.

Το βοηθητικό πρόγραμμα κονσόλας apt-cache χρησιμοποιείται για την αναζήτηση της κρυφής μνήμης για πακέτα λογισμικού APT. ομιλία με απλά λόγια, αυτό το εργαλείο χρησιμοποιείται για την αναζήτηση πακέτων, τη συλλογή πληροφοριών σχετικά με πακέτα και την εύρεση πακέτων διαθέσιμα για εγκατάσταση λειτουργικά συστήματαβασίζεται σε Debian ή Ubuntu.

Πώς μπορώ να λάβω μια λίστα με όλα τα διαθέσιμα πακέτα;

Για να δείτε όλα τα διαθέσιμα πακέτα, εκτελέστε την ακόλουθη εντολή:

apt-cache pkgnames

Πώς μπορώ να βρω το όνομα και την περιγραφή του πακέτου.

Για να βρείτε το όνομα και την περιγραφή του πακέτου πριν από την εγκατάσταση, χρησιμοποιήστε τη σημαία "αναζήτηση". Χρησιμοποιώντας "αναζήτηση" με apt-cache θα εμφανιστεί μια λίστα με τα πακέτα που ταιριάζουν με σύντομη περιγραφή. Για παράδειγμα, εάν θέλετε να βρείτε την περιγραφή του πακέτου vsftpd: για να το κάνετε αυτό, η εντολή θα ήταν:

αναζήτηση apt-cache vsftpd

Για να βρείτε και να παραθέσετε όλα τα πακέτα των οποίων το όνομα ξεκινά με vsftpd, μπορείτε να χρησιμοποιήσετε την ακόλουθη εντολή:

apt-cache pkgnames vsftpd

Πώς μπορώ να δω πληροφορίες πακέτου;

Για παράδειγμα, εάν θέλετε να δείτε πληροφορίες σχετικά με ένα πακέτο, με μια σύντομη περιγραφή που δείχνει τον αριθμό έκδοσης, τα αθροίσματα ελέγχου, το μέγεθος, το μέγεθος μετά την εγκατάσταση, τις κατηγορίες κ.λπ., μπορείτε να χρησιμοποιήσετε την υποεντολή "εμφάνιση", όπως φαίνεται παρακάτω:

apt-cache εμφάνιση netcat

Πώς μπορώ να ελέγξω τις εξαρτήσεις ενός πακέτου;

Για να ελέγξετε τις εξαρτήσεις ενός συγκεκριμένου πακέτου, μπορείτε να χρησιμοποιήσετε την υποεντολή showpkg για να δείτε εάν αυτές οι εξαρτήσεις είναι εγκατεστημένες ή όχι. Για παράδειγμα, χρησιμοποιήστε την εντολή showpkg μαζί με το όνομα του πακέτου.

apt-cache showpkg vsftpd

Πώς μπορώ να δω τα στατιστικά της προσωρινής μνήμης;

Η υποεντολή στατιστικών θα εμφανίσει πλήρη στατιστικά στοιχεία σχετικά με την κρυφή μνήμη, όπως τον συνολικό αριθμό των πακέτων που βρέθηκαν στην κρυφή μνήμη. Χρησιμοποιήστε αυτήν την εντολή:

στατιστικά apt-cache

Πώς να ενημερώσετε τη λίστα των πακέτων στο σύστημα;

Η εντολή ενημέρωσης χρησιμοποιείται για το συγχρονισμό και την ενημέρωση αρχείων ευρετηρίου πακέτων. Ο συγχρονισμός πραγματοποιείται με τις πηγές που καθορίζονται στο αρχείο /etc/apt/sources.list. Αυτή η εντολή μπορεί να χρησιμοποιηθεί, για παράδειγμα, για την παρακολούθηση σημαντικών ενημερώσεων πακέτων.

Ενημέρωση Sudo apt-get

Πώς να ενημερώσετε τα πακέτα στο σύστημα;

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

αναβάθμιση sudo apt-get

Αλλά αν θέλετε να κάνετε αναβάθμιση ανεξάρτητα από τις απαιτήσεις του πακέτου, χρησιμοποιήστε την υποεντολή dist-upgrade:

sudo apt-get dist-upgrade

Πώς μπορώ να εγκαταστήσω ή να ενημερώσω κάποιο συγκεκριμένο πακέτο;

Η υποεντολή εγκατάστασης χρησιμοποιείται για την εγκατάσταση ή την αναβάθμιση ενός πακέτου.

sudo apt-get εγκατάσταση netcat

Πώς μπορώ να εγκαταστήσω πολλά πακέτα ταυτόχρονα;

Μπορείτε να εισαγάγετε τα ονόματα πολλών πακέτων για να τα εγκαταστήσετε ταυτόχρονα. Για παράδειγμα, για να εγκαταστήσετε τα πακέτα nethogs και goaccess, μπορείτε να εκτελέσετε την ακόλουθη εντολή:

sudo apt-get install nethogs goaccess

Πώς να εγκαταστήσετε πολλά πακέτα με το όνομα "μάσκα".

Με κανονικές εκφράσεις, μπορείτε να προσθέσετε πολλά πακέτα χρησιμοποιώντας ειδικούς χαρακτήρες. Για παράδειγμα, μπορείτε να χρησιμοποιήσετε έναν αστερίσκο για να εγκαταστήσετε όλα τα πακέτα που περιέχουν τη συμβολοσειρά "όνομα" στο όνομά τους:

sudo apt-get install *name*

Πώς να εγκαταστήσετε πακέτα χωρίς ενημέρωση.

Η χρήση της σημαίας --no-upgrade θα αποτρέψει την αναβάθμιση πακέτων που είναι ήδη εγκατεστημένα.

sudo apt-get install packageName --no-upgrade

Πώς να ενημερώσετε μόνο ορισμένα πακέτα;

Η σημαία --only-upgrade δεν θα εγκαταστήσει νέα πακέτα, θα αναβαθμίσει μόνο τα υπάρχοντα.

sudo apt-get όνομα πακέτου εγκατάστασης --μόνο-αναβάθμιση

Πώς μπορώ να εγκαταστήσω μια συγκεκριμένη έκδοση ενός πακέτου;

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

sudo apt-get install vsftpd=2.3.5-3ubuntu1

Πώς να αφαιρέσετε πακέτα χωρίς να διαγράψετε ρυθμίσεις;

Για να αφαιρέσετε πακέτα λογισμικού χωρίς να αφαιρέσετε τα αρχεία διαμόρφωσής τους (για μελλοντική χρήση), χρησιμοποιήστε την εντολή αφαίρεσης όπως φαίνεται.

sudo apt-get αφαιρέστε vsftpd

Πώς να αφαιρέσετε εντελώς τα πακέτα;

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

sudo apt-get purge vsftpd

Ή μπορείτε να συνδυάσετε και τις δύο εντολές, ως εξής:

sudo apt-get remove --purge vsftpd

Πώς μπορώ να καθαρίσω χώρο στο δίσκο;

Η εντολή καθαρισμού χρησιμοποιείται για την απελευθέρωση χώρου στο δίσκο αφαιρώντας τα αρχεία .deb που προκύπτουν από το τοπικό σας αποθετήριο.

sudo apt-καθαρίζω

Μόλις κατεβάσετε πηγήπακέτο?

Για να κατεβάσετε μόνο τον πηγαίο κώδικα ενός πακέτου, μπορείτε να χρησιμοποιήσετε την επιλογή πηγή --download-only με το όνομα του πακέτου, όπως:

sudo apt-get --download-only source vsftpd

Πώς μπορώ να κατεβάσω και να αποσυσκευάσω ένα πακέτο;

Για να κατεβάσετε και να αποσυσκευάσετε τον πηγαίο κώδικα ενός πακέτου σε έναν ειδικό κατάλογο, εκτελέστε την ακόλουθη εντολή:

sudo apt-get source vsftpd

Πώς μπορώ να κατεβάσω, να αποσυσκευάσω και να μεταγλωττίσω τον πηγαίο κώδικα ενός πακέτου;

Μπορείτε επίσης να κατεβάσετε, να αποσυσκευάσετε και να μεταγλωττίσετε την πηγή πακέτου χρησιμοποιώντας την επιλογή '--compile', όπως φαίνεται παρακάτω:

sudo apt-get --compile source goaccess

Πώς να κατεβάσετε ένα πακέτο χωρίς εγκατάσταση

Χρησιμοποιώντας την επιλογή "λήψη", μπορείτε να κάνετε λήψη οποιουδήποτε πακέτου χωρίς να το εγκαταστήσετε. Για παράδειγμα, η ακόλουθη εντολή θα κατεβάσει μόνο το πακέτο nethogs στον τρέχοντα κατάλογο εργασίας.

sudo apt-get download nethogs

Πώς μπορώ να δω το αρχείο καταγραφής αλλαγών ενός πακέτου;

Η σημαία καταγραφής αλλαγών κατεβάζει το αρχείο καταγραφής αλλαγών του πακέτου και εμφανίζει την έκδοση του πακέτου, εάν είναι εγκατεστημένη.

sudo apt-get changelog vsftpd

Πώς μπορούν να διορθωθούν οι σπασμένες εξαρτήσεις;

Η εντολή "check" είναι ένα διαγνωστικό εργαλείο, χρησιμοποιείται για την ενημέρωση της προσωρινής μνήμης του πακέτου και τον έλεγχο για σπασμένες εξαρτήσεις.

Sudo apt-get check

Πώς μπορώ να βρω και να δημιουργήσω εξαρτήσεις;

Η εντολή build-dep αναζητά και εγκαθιστά τις ενσωματωμένες εξαρτήσεις του απαιτούμενου πακέτου. Εάν το πακέτο δεν βρίσκεται στο τοπικό αποθετήριο, θα λάβετε ένα σφάλμα.

sudo apt-get build-dep netcat

Πώς μπορώ να διαγράψω αυτόματα την προσωρινή μνήμη Apt-Get;

Η εντολή autoclean αφαιρεί όλα τα αρχεία .deb από το /var/cache/apt/archives για να ελευθερώσει χώρο στον σκληρό σας δίσκο.

sudo apt-get autoclean

Πώς μπορώ να αφαιρέσω αυτόματα τα περιττά πακέτα;

Η υποεντολή autoremove χρησιμοποιείται για την αυτόματη κατάργηση πακέτων που είχαν εγκατασταθεί ως εξαρτήσεις άλλων αλλά δεν χρειάζονται πλέον. Για παράδειγμα, η ακόλουθη εντολή θα αφαιρέσει ένα εγκατεστημένο πακέτο μαζί με τις εξαρτήσεις του.

sudo apt-get autoremove vsftpd

Πληροφορίες ευγενική παραχώρηση του ιστότοπου. Ευχαριστώ.

Προηγμένο εργαλείο συσκευασίας- ένα σύνολο βοηθητικών προγραμμάτων για τη διαχείριση πακέτων λογισμικού σε λειτουργικά συστήματα που βασίζονται στο Debian. Το APT παρέχει ένα φιλικό πρόσθετο στο DPKG και σας επιτρέπει:

    Εγκατάσταση, αφαίρεση και αναβάθμιση πακέτων

    Επίλυση Εξαρτήσεων

    Αναζήτηση για πακέτα με καθορισμένα κριτήρια

    Ξεφυλλίζω λεπτομερείς πληροφορίεςσχετικά με το πακέτο

    Χειριστείτε τα κλειδιά από τα αποθετήρια

Το APT είναι ένα από βασικά προγράμματακαι περιλαμβάνεται στο Ubuntu.

Ρυθμίσεις

Όλα τα αρχεία διαμόρφωσης APT αποθηκεύονται στον κατάλογο /etc/apt.

apt.conf

/etc/apt/apt.confείναι το κύριο αρχείο διαμόρφωσης που χρησιμοποιείται από όλα τα εργαλεία APT. Μια περιγραφή όλων των πιθανών ρυθμίσεων και επιλογών μπορεί να βρεθεί στην τεκμηρίωση για αυτό:

manapt.conf

apt.conf.d

Κατάλογος που περιέχει αρχεία ρυθμίσεων παρόμοια σε σύνταξη. Χρησιμοποιώντας αυτόν τον κατάλογο, μπορείτε να χειριστείτε γρήγορα και εύκολα τις ρυθμίσεις APT προσθέτοντας ή αφαιρώντας έτοιμα αρχεία με ρυθμίσεις.

auth.conf

πηγές.λίστα

πηγές.λίστα.δ

Κατάλογος με αρχεία αποθήκης, κατόπιν ραντεβού παρόμοια με sources.list. Κάθε αποθετήριο περιγράφεται σε ξεχωριστό αρχείο.

Χρήση

Το APT περιλαμβάνει πολλά βοηθητικά προγράμματα που εκτελούν ξεχωριστές εργασίες.

Ξεκινώντας με το Ubuntu 16.04, είναι διαθέσιμο ένα νέο βοηθητικό πρόγραμμα apt που περιέχει τις πιο συχνά χρησιμοποιούμενες εντολές από το apt-get και το apt-cache . Το βοηθητικό πρόγραμμα apt προορίζεται για χρήστες, ενώ το apt-get μπορεί να θεωρηθεί ως εργαλείο χαμηλότερου επιπέδου.

apt-get

apt-getείναι ένα βοηθητικό πρόγραμμα διαχείρισης πακέτων. Το apt-get απαιτεί δικαιώματα υπερχρήστη για να λειτουργήσει.

Βασικές εντολές:

    Ενημέρωση - Ενημερώστε πληροφορίες σχετικά με τα πακέτα που περιέχονται στα αποθετήρια.

    Install foo - Εγκατάσταση πακέτου foo. Η λήψη, η εγκατάσταση και η διαμόρφωση πραγματοποιούνται αυτόματα. Εάν απαιτούνται περισσότερες πληροφορίες για τη διαμόρφωση του πακέτου foo, θα εμφανιστεί ένα μήνυμα στον χρήστη.

    Αναβάθμιση - Αναβάθμιση πακέτων για τα οποία είναι διαθέσιμες νέες εκδόσεις στο αποθετήριο.

    Dist-upgrade - Αναβάθμιση πακέτων που απαιτούν επίλυση εξαρτήσεων (εγκατάσταση πρόσθετων ή κατάργηση πακέτων σε διένεξη).

    Remove foo - Αφαιρέστε το πακέτο foo από το σύστημα.

    Purge foo - Καταργήστε το πακέτο foo και εκκαθαρίστε το σύστημα από τα αρχεία διαμόρφωσής του. Αρχεία ρυθμίσεων στους οικιακούς καταλόγους χρήστη δεν θα διαγραφεί.

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

    Πηγή foo - Getting πηγαίος κώδικαςπακέτο τροφίμων.

Για πολύ καιρό, με ροκάνιζε η άγνοια του πώς να κάνω κάποια στοιχειώδη πράγματα στους διαχειριστές πακέτων του Debian, αλλά, όπως συμβαίνει συχνά, δεν υπήρχε κανείς κοντά να ρωτήσει και τα χέρια μου δεν έφτασαν κάπου να γράψω. Και τελικά, οι ερωτήσεις ωρίμασαν και έγραψα την ερώτησή μου στη λίστα αλληλογραφίας του Debian. Φυσικά, αποδείχτηκε ότι έχασα κάτι προφανές, αλλά έμαθα και πολλή μη προφανή χρησιμότητα, γι 'αυτό αποφάσισα να σχεδιάσω ένα φύλλο εξαπάτησης, ίσως κάποιος θα είναι χρήσιμος.

Σύντομη βοήθεια διαχειριστή του Debian

Βασικό και γνωστό
Λήψη πληροφοριών σχετικά με νέα/ενημερωμένα πακέτα
ενημέρωση επάρκειας sudo
Εκσυγχρονίζω
sudo aptitude ασφαλής αναβάθμιση
Αναζήτηση πακέτου με βάση το όνομα πακέτου
λέξη-κλειδί αναζήτησης ικανότητας
Αναζητήστε ένα πακέτο με το ακριβές όνομα
αναζήτηση ικανοτήτων "^name$"
Αναζήτηση με περιγραφή
αναζήτηση ικανοτήτων "?description("key_word")"
Πληροφορίες πακέτου
aptitude εμφάνιση πακέτου_όνομα
Εγκατάσταση
sudo aptitude install package_name
Μετακίνηση
sudo aptitude αφαίρεση πακέτου_όνομα
Πλήρης αφαίρεση (μαζί με ρυθμίσεις παραμέτρων)
sudo aptitude purge package_name
Εκκαθάριση της προσωρινής μνήμης των ληφθέντων πακέτων (απελευθέρωση χώρου)
Το aptitude autoclean # θα καταργήσει μόνο τα παλιά πακέτα Το aptitude clean # θα διαγράψει ολόκληρη την προσωρινή μνήμη
Εγκατάσταση ενός πακέτου που έχει ληφθεί/δημιουργηθεί ξεχωριστά (για να δημιουργήσετε ένα πακέτο από πηγές τρίτων, πρέπει να χρησιμοποιήσετε το βοηθητικό πρόγραμμα checkinstall με τη σημαία -D)
sudo dpkg -i /path/to/package.deb
Για πρόσθετες πληροφορίες
άνθρωπος aptitude sudo aptitude εγκατάσταση aptitude-doc-en
και δείτε την τεκμηρίωση (/usr/share/doc/aptitude/html/en/index.html), για γρήγορη βοήθεια σχετικά με τα μοτίβα αναζήτησης, μεταβείτε εδώ - /usr/share/doc/aptitude/html/en/ch02s04.html . Εάν είστε πολύ τεμπέλης για να βάλετε την αποβάθρα, τότε είναι στο δίκτυο.
Εισαγωγή στο Debian Wiki: wiki.debian.org/Aptitude
Και τώρα κάτι που δεν είναι προφανές ή απαιτεί πλήρη ανάγνωση της τεκμηρίωσης
1. Πώς μπορώ να δω ποια πακέτα θα ενημερωθούν μετά την ενημέρωση;
αναζήτηση ικανοτήτων ?αναβαθμίσιμο
μπορείτε επίσης να χρησιμοποιήσετε (αν βάλετε)
sudo daptup
αλλά μετά την εγκατάσταση, η συνηθισμένη ενημέρωση θα συμπεριφέρεται με τον ίδιο τρόπο

2. Πώς μπορώ να μάθω τι έχει αλλάξει στα πακέτα που θα ενημερωθούν;
Μπορείτε να δοκιμάσετε
sudo aptitude changelog package_name
για κάθε πακέτο.
Αλλά είναι καλύτερα να εγκαταστήσετε το apt-listchanges, τότε πριν από οποιαδήποτε εγκατάσταση ενημέρωσης θα εμφανιστεί μια λίστα αλλαγών, οι προεπιλεγμένες ρυθμίσεις δεν είναι πολύ βολικές, επομένως είναι καλύτερο να ρυθμίσετε ξανά τον εαυτό σας, για παράδειγμα, επιλέξτε τη μορφή εξόδου (ενώ χρησιμοποιώ κείμενο , το pager είναι μάλλον καλύτερο για μεγάλες ενημερώσεις), μην στέλνετε email, ζητήστε επιβεβαίωση, εμφανίστε όλες τις πληροφορίες. Για να το κάνετε αυτό, πρέπει να τρέξετε
sudo dpkg-reconfigure apt-listchanges
3. Τι πρέπει να κάνω εάν η ενημέρωση χαλάσει κάτι και πρέπει να επαναφερθεί;
Δεν υπάρχει επαναφορά, μπορείτε να προσπαθήσετε να βρείτε την προηγούμενη έκδοση του πακέτου
sudo aptitude έκδοση package_name
και εγκαταστήστε το
sudo aptitude εγκατάσταση πακέτο_όνομα=έκδοση
4. Πώς να βρείτε όλα τα μη αυτόματα εγκατεστημένα πακέτα;
υπάρχει μια παραλλαγή της εντολής (αναζήτηση ικανοτήτων "~i!~M"), αλλά δυστυχώς δεν δίνει το επιθυμητό αποτέλεσμα, επομένως η ερώτηση παραμένει ανοιχτή, υπάρχουν πολλοί τρόποι που βασίζονται στην ανάλυση των αρχείων καταγραφής
/var/log/aptitude (+ περιστρεφόμενα κομμάτια) /var/log/installer/initial-status.gz /var/log/dpkg.log (+ περιστρεφόμενα κομμάτια)
αλλά δεν υπάρχει απλή και έτοιμη λύση, ναι, θεωρητικά μπορεί να χαθούν πληροφορίες κατά τη διάρκεια των περιστροφών, πρέπει να ρυθμίσετε

5. Πώς να προβάλετε τη λίστα των αρχείων σε ένα πακέτο;
εάν το πακέτο είναι εγκατεστημένο
dpkg -L name_package
για τυχόν πακέτα βάλε apt-file και
apt-file list package_name
6. Πώς μπορώ να δω σε ποιο πακέτο ανήκει ένα αρχείο;
dpkg -S όνομα_αρχείου
7. Πώς να αφαιρέσετε όλα τα πακέτα όπου υπάρχει κλειδί στο όνομα του πακέτου;
sudo aptitude κάθαρση ~ikey
8. Πώς να αφαιρέσετε τις υπόλοιπες ρυθμίσεις παραμέτρων από τα πακέτα που αφαιρέθηκαν;
sudo aptitude κάθαρση ~ γ
9. Πώς να βρείτε το πακέτο πακέτου που περιέχει το αρχείο lib.so:
apt-file αναζήτηση lib.so
10. Πώς να μετατρέψετε το πακέτο rpm σε deb;
alien --to-deb /path/to/file.rpm
11. Πώς να βρείτε τη λίστα με τους εγκατεστημένους πυρήνες;
dpkg --list linux-* | grep ii
12. Πώς να εγκαταστήσετε ένα πακέτο από δοκιμαστικό ή πειραματικό;
Πρέπει να γράψετε για αυτό το θέμα ξεχωριστά (για παράδειγμα, όπως αυτό), αλλά εν συντομία, υπάρχουν εντολές για αυτό
sudo aptitude -t testing package_name
ή
sudo aptitude package_name/testing
13. Πώς μπορώ να αφαιρέσω ένα μεταπακέτο αλλά να διατηρήσω μία από τις εξαρτήσεις;
θα πρέπει να διαβάσετε την τεκμηρίωση σχετικά με το κλειδί unmarkauto ή να κοιτάξετε εδώ.

14. Πώς να μάθετε τι είναι φρικτό σύστημα αρχείωνπαρελθόν το σύστημα διαχείρισης πακέτων;
Υπάρχει ένα βοηθητικό πρόγραμμα cruft, αν και το θέμα της ερμηνείας των αποτελεσμάτων (αρχείο αναφοράς) είναι ακόμα ανοιχτό
sudo cruft -d / -r report --ignore /home --ignore /var --ignore /tmp
15. Ποια είναι τα πρόσθετα αποθετήρια;
Debian - wiki.debian.org/UnofficialRepositories
Ubuntu - πολλά πράγματα

mob_info