Στο σημερινό Quick Tip θα δούμε πως κάνουμε εγκατάσταση πακέτων .deb μέσα από το τερματικό, αλλά αντί να χρησιμοποιήσουμε το dpkg θα χρησιμοποιήσουμε το apt που χρησιμοποιούμε και για ενημερώσεις.
Είναι ελάχιστες οι περιπτώσεις που θα χρειαστεί να κάνετε εγκατάσταση κάποιο πακέτο .deb σε διανομές Debian/Ubuntu. Παρόλα αυτά όταν χρειαστεί να το κάνουμε συνήθως το κάνουμε με δύο τρόπους:
- διπλό κλικ στο πακέτο και ξεκινάει η εγκατάσταση με π.χ. gdebi-gtk ή το κέντρο λογισμικού ubuntu.
- από το τερματικό δίνοντας την εντολή
dpkg -i
και την διαδρομή του πακέτου.
Το πρόβλημα με το dpkg -i
είναι ότι δεν ασχολούνταν ποτέ με την εγκατάσταση τυχών εξαρτήσεων του προγράμματος που κάνουμε εγκατάσταση. Με αποτέλεσμα σχεδόν πάντα πρέπει να τρέχουμε μια συνοδευτική εντολή sudo apt install -f
για να συμμαζέψει τον χαμό που προκάλεσε το dpkg
Αντί του dpkg
λοιπόν μπορούμε να χρησιμοποιήσουμε απευθείας το apt
το οποίο ξέρουμε, έχουμε συνηθίσει και φυσικά κάνει αυτόματα την εγκατάσταση των εξαρτήσεων του προγράμματος.
Εγκατάσταση προγράμματος από deb πακέτο
Ας δούμε την διαδικασία με ένα απλό παράδειγμα.
Έστω λοιπόν ότι ήμαστε σε Debian/Ubuntu/Linux Mint κλπ και είδαμε στο cerebrux για ένα πρόγραμμα που ονομάζεται uCareSystem
(βλέπε πληροφορίες) που κάνει συντήρηση στο λειτουργικό. Αν π.χ. θέλουμε να το κάνουμε εγκατάσταση μέσα από το τερματικό (π.χ. επειδή έτσι έχουμε συνηθίσει, ή είμαστε σε server περιβάλλον χωρίς γραφικά) τότε θα χρησιμοποιήσουμε το apt
για την εγκατάστασή του.
Πάμε λοιπόν να κατεβάσουμε το πρόγραμμα από το επίσημο αποθετήριο του:
ή μπορούμε π.χ. να το κατεβάσουμε μέσω τερματικού :
wget https://github.com/Utappia/uCareSystem/releases/download/v4.4.0/ucaresystem-core_4.4.0_all.deb
Σε κάθε περίπτωση θα καταλήξετε με ένα πακέτο ucaresystem-core_4.4.0_all.deb
. Για να το εγκαταστήσετε δίνετε:
sudo apt install ./ucaresystem-core_4.4.0_all.deb
Αυτό το ./
είναι σημαντικό να μην το παραλείψετε διότι σε διαφορετική περίπτωση είναι σαν να λέτε στο apt
«ψάξε το ucaresystem-core_4.4.0_all.deb στα αποθετήρια» οπότε και θα σας εμφανίσει ότι το πακέτο δεν βρέθηκε.
Να σημειώσουμε ότι προγράμματα Linux που εγκαθίστανται με αυτόν τον τρόπο, ενημερώνονται με νέες εκδόσεις ΜΟΝΟ εφόσον υπάρχει και στα αποθετήρια. Για παράδειγμα, το ucaresystem-core
αν και μπήκε με αυτό τον τρόπο είναι σχεδιασμένο να προσθέτει αυτόματα το αποθετήριο του οπότε και ο χρήστης λαμβάνει αυτόματα τις ενημερώσεις.
Τέλος θα πρέπει να θυμίσουμε ότι θέλει ιδιαίτερη προσοχή από πού κατεβάζετε τα .deb
αρχεία, μιας και μπορεί να εγκυμονούν κινδύνους για το Linux όπως είχαμε μελετήσει στο σχετικό άρθρο εδώ.
Σας φάνηκε χρήσιμο;
Πείτε μας τη γνώμη σας για το σημερινό tip. Δείτε και τα υπόλοιπα Tips ή πείτε μας τα δικά σας tips στα σχόλια ή επικοινωνήστε μαζί μας.
πολυ καλό
Ευχαριστώ Αθανάσιε !
Το gdebi δουλεύει κι από γραμμή εντολών (με δικαιώματα υπερχρήστη).
Πχ. #gdebi *.deb
Το gdebi δεν είναι όμως προεγκατεστημενο σε όλες τις deb διανομές όποτε δεν έχει νόημα να το εγκαταστήσεις από τερματικό για να το τρέξεις από το τερματικό ενώ ήδη υπάρχει το apt ;)
Ναι. Ειδικά αν θες, να κρατήσεις την εγκατάστασή σου minimal (που είναι πολύ δύσκολο, τώρα πια), ισχύει.
Πάντως, αυτό είναι μια απ’ τις πραγματικά μεγάλες δυνατότητες του Unix:
Υπάρχουν πολλοί εναλλακτικοί τρόποι διαχείρισης του συστήματός σου και μπορείς να διαλέξεις αυτόν που σου ταιριάζει καλύτερα.