Αν εγκαταστήσατε Linux για πρώτη φορά, τότε ίσως να μην είστε εξοικειωμένοι με την ιδέα της οργάνωσης του λογισμικού σε “πακέτα”. Σύντομα θα εξοικειωθείτε με την διαχείριση πακέτων και θα εκτιμήσετε τα πλεονεκτήματα που προσφέρει από άποψη ασφάλειας, ελέγχου και ευκολίας χρήσης.
Έχουμε προσπαθήσει κατασκευάσουμε ένα λειτουργικό σύστημα όπου το υλικό σας να εντοπίζεται αυτόματα και οι οδηγοί που απαιτούνται να γίνονται εγκατάσταση αυτόματα, ώστε να βιώσετε την εμπειρία άμεσης λειτουργικότητας. Το έχουμε επίσης κατασκευάσει έτσι, ώστε να μη χρειάζεται να ψάχνετε στο διαδίκτυο για λογισμικό τρίτων. Μπορεί να έχετε ήδη παρατηρήσει ότι το Linux Mint έρχεται με μια πλήρη σουίτα γραφείου, ένα επαγγελματικής-φύσεως πρόγραμμα για επεξεργασία εικόνων, ένα IM και ένα πρόγραμμα IRC, έναν αντιγραφέα δίσκων και διάφορα προγράμματα αναπαραγωγής πολυμέσων (όπως και πολλά άλλα αξεσουάρ). Μην ανησυχείτε, είναι όλα νόμιμα. Αυτό είναι το ελεύθερο λογισμικό! Και το πραγματικά σπουδαίο περί της διαχείρισης πακέτων στο Linux Mint αλλά και γενικότερα, είναι πως δεν θα χρειαστεί να ψάξετε και πολύ μακριά για επιπλέον λογισμικό, ακόμη και όταν έρθει η ώρα που θα απαιτείτε περισσότερη λειτουργικότητα από το σύστημά σας.
Αυτή η ενότητα αποσκοπεί στο να σας εξηγήσει πως αυτό λειτουργεί και τι πλεονεκτήματα μπορεί να σας φέρει. Είναι λίγο μεγάλη ενότητα, αλλά ευελπιστούμε ότι θα σας παρέχει με επεξηγήσεις της φιλοσοφίας πίσω από την διαχείριση πακέτων και γιατί αυτό θεωρείται Καλό Πράγμα (μια φράση που γράφετε συνήθως με κεφαλαία γράμματα από τους χρήστες Linux και επισημαίνει ότι κάτι είναι αρκετά καλό). Αν βιάζεστε μπορείτε να προχωρήσετε στην επόμενη ενότητα που θα σας δείξει πως πραγματικά να χρησιμοποιήσετε το σύστημα πακέτων.
Τα προβλήματα που προκύπτουν όταν κάνετε περιήγηση σε ιστοσελίδες κατασκευαστών λογισμικού και κάνετε λήψη και εγκατάσταση λογισμικού είναι συνήθως πολλά:
Επιπλέον, ένα πρόβλημα με την λήψη και εγκατάσταση πολλών διαφορετικών προγραμμάτων από πολλές διαφορετικές πηγές, είναι ότι δεν υπάρχει καμία διαχειριστική υποδομή. Πριν πείτε “Σιγά το πράγμα”, σκεφτείτε το πως θα κρατήσετε όλα αυτά τα διαφορετικά κομμάτια λογισμικού ενημερωμένα. Αν θελήσετε να καταργήσετε κάποιο πρόγραμμα, πως θα το καταφέρετε; Το ίδιο το πρόγραμμα υπάρχει πιθανότητα να μην έχει έρθει με μια επιλογή κατάργησης, αλλά ακόμη και αν έχει τέτοια επιλογή, αυτή μάλλον θα αποτύχει να κάνει μια καθαρή και πλήρη απομάκρυνση. Με την πολύ πραγματική έννοια του όρου, όταν εκτελέσατε το αρχείο εγκατάστασης του προγράμματος δώσατε ένα μέρος του ελέγχου του υπολογιστή σας σε ένα πρόγραμμα που κατασκευάστηκε από έναν εντελώς άγνωστο σε εσάς άνθρωπο.
Τέλος, λογισμικό το οποίο διανέμεται με τέτοιο τρόπο είναι συνήθως “στατικό”. Αυτό σημαίνει ότι εκτός του να κάνετε λήψη του ίδιου του προγράμματος, πρέπει να κάνετε λήψη και όλων των βιβλιοθηκών δεδομένων που απαιτούνται για την εκτέλεση του. Επειδή ένας προγραμματιστής άλλης εταιρίας δεν μπορεί να γνωρίζει ποιες βιβλιοθήκες δεδομένων έχετε στο σύστημά σας, ο μόνος τρόπος να εξασφαλίσει ότι το πρόγραμμα θα λειτουργήσει σωστά, είναι να παρέχει όλες τις απαιτούμενες βιβλιοθήκες μαζί με το πρόγραμμα. Αυτό σημαίνει μεγαλύτερου όγκου λήψεις και επίσης όταν χρειαστεί να αναβαθμίσετε μια βιβλιοθήκη, πρέπει να γίνει ξεχωριστά για όλα τα προγράμματα που τη χρησιμοποιούν. Συνοπτικά, η διανομή στατικού λογισμικού έχει ως αποτέλεσμα την επανάληψη αρκετής δουλειάς.
Η διαχείριση πακέτων στο Linux Mint και γενικότερα στα λειτουργικά συστήματα GNU/Linux, έχει καθιερωθεί εδώ και κάμποσο καιρό και είναι η προτιμώμενη μέθοδος διαχείρισης λογισμικού καθώς αποφεύγει όλα αυτά τα προβλήματα. Κάνουμε με ασφάλεια και αυτόματα την εγκατάσταση του λογισμικού μας με αυτόν τον τρόπο, από τις αρχές της δεκαετίας του '90.
Το λογισμικό πρώτα γράφεται από έναν προγραμματιστή, όπως πιθανών θα περιμένατε, και αυτό καταλήγει μέσα απο μια αλυσίδα παραγωγής στο τέλος αυτής γνωστό ως “upstream”. Ως χρήστης μιας διανομής Linux, είναι σαν να βρίσκεστε στο περισσότερο απομακρυσμένο σημείο αυτής της αλυσίδας, το οποίο αναφέρεται ως “downstream”. Όταν ο προγραμματιστής είναι ικανοποιημένος από το πρόγραμμα ή τις ενημερώσεις που έχει κάνει σε αυτό θα διαθέσει τον πηγαίο κώδικα. Επίσης θα επικοινωνήσουν μέσω της τεκμηρίωσης για το ποιές βιβλιοθήκες δεδομένων ή από ποια άλλα προγράμματα επωφελήθηκαν όταν έγραφαν το πρόγραμμα. Αυτό το κάνουν εδώ και αρκετό καιρό και υπάρχουν τυποποιημένες καθώς και αξιοσέβαστες τακτικές για να το επιτύχουν. Σημειώστε ότι, εκτός μερικών εξαιρέσεων (συνήθως κατασκευαστές υλικού που διαθέτουν οδηγούς για Linux όπως η nVidia και η ATI, ή συγκεκριμένες μεγάλες εταιρίες λογισμικού όπως η Adobe, τις οποίες μπορούμε να εμπιστευόμαστε) διαθέτουν τον πραγματικό πηγαίο κώδικα του προγράμματος, δηλαδή, μια λίστα οδηγιών του προγράμματος σε μια ανθρωπίνως αναγνώσιμη μορφή. Αυτό έχει μια σειρά επιπτώσεων, αλλά ως πιο σημαντική γι' αυτή τη συζήτηση σημαίνει ότι, είναι πρόθυμοι το λογισμικό τους να επανεξεταστεί από οποιονδήποτε διαθέτει σύνδεση στο διαδίκτυο. Είναι υπερβολικά δύσκολο να ενσωματώσεις κρυφά κακόβουλο λογισμικό στο πρόγραμμά σου, όταν επιτρέπεις σε όλους να δουν τι ακριβώς έχεις γράψει!
Το λογισμικό τώρα κινείται προς τα κάτω (downstream) στους διαχειριστές πακέτων, που είναι είτε εθελοντές, είτε υπάλληλοι επί πληρωμή που εργάζονται για κάποια διανομή Linux. Είναι δική τους ευθύνη να μεταγλωττίσουν τον πηγαίο κώδικα του λογισμικού, να τον δοκιμάσουν στην διανομή και να σιγουρευτούν ότι λειτουργεί, να επιλύσουν τα όποια προβλήματα αντιμετώπισαν και εν τέλει να πακετάρουν το μεταγλωττισμένο (δηλ. σε γλώσσα-μηχανής) λογισμικό στην κατάλληλη μορφή. Αυτό το πακέτο περιέχει το εκτελέσιμο πρόγραμμα(ή προγράμματα), τα αρχεία ρυθμίσεων και τις οδηγίες που χρειάζεται το λογισμικό διαχείρισης πακέτων για μια επιτυχημένη εγκατάσταση. Σημειώστε ότι συνήθως δεν περιέχει στατικές βιβλιοθήκες, αφού δεν τις χρειάζεται – οι βιβλιοθήκες παρέχονται από άλλα πακέτα και είναι γνωστές ως κοινόχρηστες βιβλιοθήκες. Το λογισμικό διαχείρισης πακέτων θα γνωρίζει αν το συγκεκριμένο πακέτο εξαρτάται από την εγκατάσταση κάποιου άλλου πακέτου για να λειτουργήσει σωστά, διότι όπως θα θυμάστε, οι βιβλιοθήκες δεδομένων και άλλα προγράμματα που χρειάζονται για να λειτουργήσει το πρόγραμμα έχουν δηλωθεί εξ αρχής (upstream) και οι πληροφορίες αυτές περιλαμβάνονται στο πακέτο. Οι οδηγίες είναι επαρκώς λεπτομερείς ακόμη και στο ότι χρειάζεται κάποια συγκεκριμένη έκδοση άλλου πακέτου για να διασφαλιστεί η διαλειτουργικότητα. Το ολοκληρωμένο πακέτο τότε μεταφορτώνεται σε έναν διακομιστή αρχείων που ονομάζεται αποθετήριο λογισμικού.
Από αυτή τη μοναδική τοποθεσία μπορείτε να κάνετε λήψη και εγκατάσταση του προγράμματος που χρειάζεστε. Θα ξέρετε ότι η τοποθεσία είναι αξιόπιστη, διότι θα είναι υπογεγραμμένη με ένα πιστοποιητικό που ο διαχειριστής πακέτων σας θα ελέγξει. Όπως επίσης θα ξέρετε ότι κάθε ξεχωριστό πακέτο που κάνετε εγκατάσταση είναι ασφαλές, διότι κάθε πακέτο ξεχωριστά είναι υπογεγραμμένο από ένα κλειδί GPG, το οποίο θα ελεγχθεί εξίσου από τον διαχειριστή πακέτων. Ο διαχειριστής πακέτων θα εκτελέσει ακόμη και έλεγχο του MD5 sum σε κάθε πακέτο ξεχωριστά, για να εξασφαλίσει ότι όλα πήγαν καλά κατά τη διάρκεια της λήψης, όπως κάναμε προηγουμένως με την εικόνα ISO του DVD. Παρατηρείστε πόσα πράγματα κάνει για εσάς. Εσείς απλά κάθεστε και περιμένετε, πίνοντας καφέ ή συνομιλώντας στο κανάλι #linuxmintusers-gr. Ο διαχειριστής πακέτων έχει κάνει λήψη τα πακέτα που εσείς έχετε επιλέξει, θα ακολουθήσει κατά γράμμα (οι υπολογιστές είναι σχολαστικοί στο να ακολουθούν οδηγίες), τις οδηγίες του πακέτου για να εγκαταστήσει επιτυχώς το λογισμικό, καθώς και όλες τις εξαρτήσεις αυτού, στην σωστή σειρά. Δεν υπάρχει περιθώριο ανθρώπινου λάθους – αν το πακέτο λειτούργησε σωστά στον υπολογιστή του συντηρητή πακέτων, τότε θα πρέπει να λειτουργήσει σωστά και στο δικό σας σύστημα διότι ο διαχειριστής πακέτων θα ακολουθήσει ακριβώς την ίδια διαδικασία.
Όταν έρθει η ώρα να γίνει έλεγχος για αναβαθμίσεις λογισμικού, ο διαχειριστής πακέτων αυτόματα θα συγκρίνει τις εκδόσεις των πακέτων που έχετε με εκείνες που είναι διαθέσιμες στο αποθετήριο και θα αναλάβει να κάνει όλη την απαραίτητη δουλειά για να διατηρήσει το σύστημά σας ασφαλές και σε ομαλή λειτουργία. Οπότε, αν η έκδοση 2.4 του τάδε λογισμικού έχει μεταφορτωθεί στο αποθετήριο ενώ εσείς διαθέτετε την 2.3 στο σύστημά σας, ο διαχειριστής πακέτων θα συγκρίνει αυτές τις δυο εκδόσεις και θα σας προσφέρει προς εγκατάσταση την τελευταία έκδοση, αναλαμβάνοντας φυσικά και όλες τις εξαρτήσεις που ακολουθούν το νεότερο αυτό λογισμικό.
Σας ακούγετε καλό; Γίνεται ακόμη καλύτερο.
Οι άνθρωποι κάνουν λάθη, λάθη που οι υπολογιστές δεν κάνουν και κατά διαστήματα κάτι μπορεί να πάει στραβά. Ίσως να εγκαταστήσετε, κατά λάθος, οδηγούς για το υλικό σας που δεν είναι οι σωστοί και αυτό ίσως να “σπάσει” κάτι. Όλοι το έχουμε κάνει αυτό. Ενδεχομένως να υπάρχει ένα σφάλμα(bug) ή το αγαπημένο σας χαρακτηριστικό του προγράμματος να έχει απομακρυνθεί για κάποιο λόγο από τον προγραμματιστή. Αυτά τα προβλήματα αποδεικνύουν, παραδόξως, τη δύναμη και την ασφάλεια της διαχείρισης πακέτων. Επειδή ο διαχειριστής πακέτων κρατά σχολαστικά εγγραφές για όλα όσα κάνει, είναι σε θέση να αναστρέψει την εγκατάσταση πακέτων, καθαρά και πλήρως. Θα φροντίσει πως απομακρύνοντας κάποιο πακέτο δεν θα επηρεάσει την λειτουργικότητα άλλων, καθώς επίσης μπορείτε να του πείτε να μην αναβαθμίζει συγκεκριμένα πακέτα, επειδή σας αρέσουν όπως είναι, ή ακόμη και να τα επαναφέρει σε μια προηγούμενη έκδοση. Εν τέλει, σε μεγάλο βαθμό η όλη διαδικασία είναι αρκετά ομαδικά-αξιολογήσιμη. Επειδή είστε μέρος μιας μεγάλης κοινότητας χρηστών Linux, όπου όλοι χρησιμοποιείτε τα ίδια αποθετήρια για να προμηθευτείτε το λογισμικό, αν κάτι πάει στραβά να είστε απόλυτα σίγουροι πως θα δημιουργηθεί μεγάλη φασαρία και ότι το πρόβλημα θα επιλυθεί άμεσα! Κατά αυτόν τον τρόπο, η διανομή λογισμικού σε GNU/Linux λειτουργικά συστήματα είναι κατά πολύ βασισμένη στην εμπιστοσύνη, από την στιγμή την οποία ο αρχικός προγραμματιστής διαθέτει τον πηγαίο κώδικα σε όλους ώστε να μπορούν να τον δουν, μέχρι την ανοιχτή συζήτηση στον ιστότοπο της εκάστοτε διανομής. Μπορείτε να είστε βέβαιοι για το λογισμικό που προμηθεύεστε, όχι μόνο λόγω των πρωτοκόλλων ασφαλείας που προαναφέρθηκαν, αλλά επειδή αν κάτι πάει στραβά όλοι θα συζητούν γι' αυτό!
Ας ρίξουμε άλλη μια ματιά στην λίστα των προβλημάτων μας, για να δούμε τι από αυτά έχουμε επιλύσει:
Κάτι τελευταίο. Μπορεί να έχετε ακούσει φήμες ότι το Linux δεν είναι ακόμη έτοιμο, ότι αν χρησιμοποιείτε Linux είναι σαν να βρίσκεστε σε δοκιμαστικό λογισμικό, ή ότι δεν είναι ασταθές. Όλα αυτά είναι μισές αλήθειες. Το Linux δεν θα είναι ποτέ “ολοκληρωμένο”. Από τον πυρήνα Linux μέχρι τα γραφικά στην οθόνη σας, όλα τα στοιχεία του λειτουργικού συστήματος θα βρίσκονται πάντα κάτω από μια μορφή ανάπτυξης. Αυτό συμβαίνει επειδή οι προγραμματιστές εργάζονται σκληρά για να μας κρατάνε ενημερωμένους σύμφωνα με τις τελευταίες εξελίξεις στον προγραμματισμό και την τεχνολογία. Αυτό σε καμία περίπτωση δεν σημαίνει ότι το λογισμικό που σας παρέχετε είναι κακής ποιότητας. Το σύστημα στο οποίο βασίζεται το Linux Mint βρισκόταν κάτω από βαριά ανάπτυξη για περίπου δυο δεκαετίες τώρα, και έχει αποδειχθεί αρκετά ώριμο και σταθερό. Ενώ σίγουρα υπάρχουν ασταθείς εκδόσεις λογισμικού στο λειτουργικό σας σύστημα, δεν θα τις χρησιμοποιήσετε διότι δεν είστε ελεγκτής δοκιμαστικού λογισμικού. Γνωρίζετε ότι δεν είστε ελεγκτής δοκιμαστικού λογισμικού ακριβώς επειδή διαβάζετε αυτόν τον οδηγό. Το λογισμικό που είναι διαθέσιμο για χρήση και βρίσκεται στα αποθετήρια, θα είναι πάντα σταθερό και καλά δοκιμασμένο, εκτός και αν αλλάξετε αυτά τα αποθετήρια με εκείνα που χρησιμοποιούν οι ελεγκτές δοκιμαστικού λογισμικού (που σε αυτή την περίπτωση είστε άξιοι συγχαρητηρίων, μόλις γίνατε δοκιμαστής).
Οπότε, για να συνοψίσουμε με ένα παράδειγμα, όταν κάνετε εγκατάσταση τον Opera, τον Real Player ή το Google Earth στο Linux Mint, αυτές οι εφαρμογές δεν προέρχονται απευθείας από τους αρχικούς προγραμματιστές (Opera, Real και Google). Φυσικά και η αρχική εφαρμογή προέρχεται από τους επίσημους προγραμματιστές, αλλά μόνον όταν έχει δοκιμαστεί και πακεταριστεί καταλλήλως γίνεται διαθέσιμη σε εσάς. Οπότε, με άλλα λόγια, δεν θα πρέπει να χρειαστεί ποτέ να περιηγηθείτε και να ψάξετε στο διαδίκτυο για να βρείτε λογισμικό, καθώς όλα όσα χρειάζεστε είναι διαθέσιμα και ήδη δοκιμασμένα για το σύστημά σας από τις ομάδες του Linux Mint και του Ubuntu. Το μόνο που χρειάζεται να κάνετε είναι να επιλέξετε τι θέλετε να κάνετε.
Το Linux Mint θα αναβαθμίσει και θα ενημερώσει τον εαυτό του αυτόματα μέσω του διαχειριστή ενημερώσεων, ο οποίος δεν θα αναβαθμίσει μόνο το βασικό σας σύστημα αλλά και όλο το λογισμικό που είναι εγκατεστημένο σε αυτό.
Είναι τόσο απλό ! Κάποιες από τις δημοφιλέστερες εφαρμογές οι οποίες δεν είναι εγκατεστημένες από προεπιλογή στο Linux Mint είναι οι Opera, Skype, Acrobat Reader, Google Earth και Real Player.