Pacman - Ένας πανίσχυρος package manager

Panayiotis | Παρ, 04/11/2008 - 11:41 | 6' | 6

Λίγα λόγια για τον Pacman

Ο Pacman είναι το σύστημα διαχείρισης πακέτων του Arch, το οποίο είναι κυριολεκτικά πανίσχυρο, εύκολο στη χρήση και θεωρείται ένα από τα δυνατά σημεία της διανομής. Είναι εφάμιλλος σε αξιοπιστία, ταχύτητα και ευχρηστία με τις άλλες δύο μεγάλες σχολές package management, το apt-get του Debian και το Portage του Gentoo. Είναι αυτός που κρατά το σύστημα ενημερωμένο και εγκαθιστά τα επιθυμητά πακέτα με μια απλή εντολή επιλύοντας ταυτόχρονα όλες τις εξαρτήσεις τους. Είναι γραμμένος σε γλώσσα C που τον καθιστά πολύ γρήγορο και ελαφρύ και χρησιμοποιεί το .tar.gz package format το οποίο ενισχύει επιπλέον την ταχύτητα του. Για περισσότερες πληροφορίες σχετικά με το τι μπορεί να κάνει ο pacman, υπάρχει η man pacman. Τα παρακάτω είναι ένα μικρό δείγμα για το τι μπορούμε να κάνουμε με αυτόν.

Συνήθεις Χρήσεις

Εγκατάσταση και Απεγκατάσταση Πακέτων

Πριν από κάθε εγκατάσταση ή αναβάθμιση πακέτου καλό είναι να συγχρονίζουμε την βάση δεδομένων του συστήματος μας με τα repositories του server που έχουμε επιλέξει

pacman -Sy

ή

pacman --sync --refresh

Για να εγκαταστήσουμε ή αναβαθμίσουμε πακέτα (περιλαμβανομένων και των εξαρτήσεων τους)

pacman -S όνομα_πακέτου_1 όνομα_πακέτου_2

Κάποιες φορές υπάρχουν περισσότερες versions ενός πακέτου σε διαφορετικά αποθετήρια (πχ. extra και testing). Μπορούμε όμως να διευκρινίσουμε ποιο ακριβώς επιθυμούμε να εγκατασταθεί

pacman -S extra/όνομα_πακέτου
pacman -S testing/όνομα_πακέτου

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

pacman -Sy όνομα_πακέτου

Για να απεγκαταστήσουμε ένα πακέτο αφήνοντας όμως τις εξαρτήσεις του εγκατεστημένες

pacman -R όνομα_πακέτου

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

pacman -Rs όνομα_πακέτου

Για να απεγκαταστήσουμε ένα πακέτο χωρίς κανένα έλεγχο εξαρτήσεων

pacman -Rd όνομα_πακέτου

Αναβάθμιση Συστήματος

Ο Pacman μπορεί να αναβαθμίσει όλα τα πακέτα που είναι εγκατεστημένα στο σύστημα με μία και μόνο εντολή. Η διάρκεια της αναβάθμισης εξαρτάται από το πόσο up-to-date είναι το σύστημα μας.

pacman -Su

Όμως η καταλληλότερη εντολή για να συγχρονίζουμε την βάση δεδομένων μας ΚΑΙ να αναβαθμίζουμε το σύστημα μας ταυτόχρονα είναι η

pacman -Syu

Αναζητήσεις στη Βάση Πακέτων

Ο Pacman μπορεί να κάνει αναζήτηση στα αποθετήρια για πακέτα ακόμα και όταν του δώσουμε τμήμα του ονόματος, επιστρέφοντας αποτελέσματα που ταιριάζουν με αυτό το τμήμα

pacman -Ss όνομα_πακέτου

Για αναζήτηση μόνο ανάμεσα στα εγκατεστημένα πακέτα

pacman -Qs όνομα_πακέτου

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

pacman -Si όνομα_πακέτου
pacman -Qi όνομα_πακέτου

Για να πάρουμε τη λίστα των αρχείων που περιέχονται σε ένα πακέτο

pacman -Ql όνομα_πακέτου

Για να πάρουμε μια λίστα αρχείων που είχαν εγκατασταθεί σαν εξαρτήσεις αλλά δεν χρησιμοποιούνται πλέον (orphans)

pacman -Qdt

Για να πάρουμε μια λίστα με αρχεία που είχαμε εγκαταστήσει αλλά δεν είναι πλέον απαραίτητα σε κανένα πακέτο

pacman -Qet

Μπορούμε ακόμα να δούμε σε ποιό πακέτο ανήκει κάποιο αρχείο που υπάρχει στο σύστημα μας

pacman -Qo /path/to/file

Για να πάρουμε μια λίστα με πακέτα που μπορούν να ενημερωθούν

pacman -Qu

Άλλες Χρήσεις

Ο Pacman είναι ένα πολύπλευρο εργαλείο διαχείρισης πακέτων και αυτές είναι μόνο κάποιες από τις δυνατότητες του

Κατέβασμα πακέτου χωρίς να το εγκαθιστά

pacman -Sw όνομα_πακέτου

Εγκατάσταση τοπικού πακέτου (όχι από κάποιο αποθετήριο)

pacman -U /path/to/package/όνομα_πακέτου-version.pkg.tar.gz

Μπορούμε ακόμα να δηλώσουμε και ένα URL

pacman -U http://www.examplepackage/repo/examplepkg.tar.gz

Μπορούμε να καθαρίσουμε τη package cache (/var/cache/pacman/pkg)

pacman -Scc

Πηγή αυτού του οδηγού είναι το αντίστοιχο Archlinux Wiki.

Φόρουμ
Δώσε αστέρια!

MO: (ψήφοι: 0)

Σχόλια

Μιας και το εγκατέστησα φίλε Παναγιώτη το Arch, να σε ρωτήσω κάτι. Δεν υπάρχει κάποιο gui για τον pacman; Όχι ότι με ενοχλεί η κονσόλα, αλλά να μη γράφω συνέχεια :-)

ostvarivanje]Μιας και το εγκατέστησα φίλε Παναγιώτη το Arch, να σε ρωτήσω κάτι. Δεν υπάρχει κάποιο gui για τον pacman; Όχι ότι με ενοχλεί η κονσόλα, αλλά να μη γράφω συνέχεια :-)

υπάρχει gui -αυτή την στιγμή δεν το θυμάμαι- αλλά είναι εξαιρετικά κατώτερο.

Αν θες πάντως για να μην γράφεις τεράστιες εντολές φτιάξε aliases.

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

Σε terminal ως root μπαίνεις στο /root, δηλαδή δίνεις

cd /root

Εκεί ανοίγεις με κάποιον editor το αρχείο .bashrc, για παράδειγμα

nano .bashrc

και συμπληρώνεις μια λίστα από aliases που σου φαίνονται εσένα προσωπικά χρήσιμες εντολές

για παράδειγμα εγώ έχω

alias R='pacman -R'
alias Rcns='pacman -Rcns'
alias S='pacman -S'
alias Ss='pacman -Ss'
alias Sy='pacman -Sy'
alias Syu='pacman -Syu'
alias clr='clear'
alias ping='ping -c4'
alias updatevirus='freshclam'
alias virus='clamscan -r -i --bell"

Κάποια απο τα παραπάνω είναι για εντολές του pacman  για παράδειγμα δεν χρειάζεται πλέον σε terminal να γράψω ξανά για upgrade του συστήματος το

pacman -Syu, αρκεί μόνο ένα Syu και πάει λέγοντας

Το ίδιο μπορείς να κάνεις και με εντολές που εκτελείς σαν απλός χρήστης. Να προσθέσεις στο .bashrc που είναι στο home folder σου -όχι στου root- τις εντολές που θες.

Προφανώς τα aliases που έχω εγώ παραπάνω είναι αυτά που με βολεύουν, ο κάθε ένας μπορε'να βάλει αυτά που του αρέσουν ή μπορεί να θυμάται ευκολότερα

μπορείς ν'αλλάξεις το username σου από linuxNeophyte σε linuxΦυτ :-p

είσαι κορυφή

ostvarivanje]Μιας και το εγκατέστησα φίλε Παναγιώτη το Arch, να σε ρωτήσω κάτι. Δεν υπάρχει κάποιο gui για τον pacman; Όχι ότι με ενοχλεί η κονσόλα, αλλά να μη γράφω συνέχεια :-)

LinuxNeophyte]υπάρχει gui -αυτή την στιγμή δεν το θυμάμαι- αλλά είναι εξαιρετικά κατώτερο.

Αν και προσωπικά μου ταιριάζει περισσότερο ο τρόπος σκέψης του LinuxNeophyte, αν θες οπωσδήποτε γραφικό περιβάλλον υπάρχει στο AUR ο shaman που έχει αρκετές ομοιότητες με το synaptic και είναι εξίσου αξιόπιστος.

Αν αποφασίσεις να τον δοκιμάσεις βάλε τον shaman 1.0beta2-2 και όχι τον shaman-svn 485-4.

Arch Linux, Keep It Simple

Το δοκίμασα, αλλά λίγο και δεν τρελάθηκα κιόλας. Άρχισε να μου αρέσει περισσότερο ο pacman. Στον shaman μπορείς να χρησιμοποιήσεις το aur;

ostvarivanje]Το δοκίμασα, αλλά λίγο και δεν τρελάθηκα κιόλας. Άρχισε να μου αρέσει περισσότερο ο pacman. Στον shaman μπορείς να χρησιμοποιήσεις το aur;

Δεν ξέρω αν από τις ρυθμίσεις του μπορεί να βλέπει και το AUR. Για να είμαι ειλικρινής δεν τον χρησιμοποιώ, στον πρότεινα μόνο γιατί ζήτησες GUI και γιατί έχω διαβάσει θετικά σχόλια. Με pacman και yaourt αισθάνομαι ότι καλύπτομαι απόλυτα.

Arch Linux, Keep It Simple