Τα συστήματα Linux είναι δημοφιλή για πολλούς λόγους, αλλά η εγκατάσταση εφαρμογών δεν είναι ένας από αυτούς. Οι εφαρμογές στο Linux παραδίδονται ως πακέτα και διατίθενται σε κάθε είδους γεύσεις. Τα συστήματα συσκευασίας διαφέρουν ως προς την εγκατάσταση, τη χρηστικότητα και τους μηχανισμούς ενημέρωσης.
Παρακάτω, θα εξετάσουμε και θα συγκρίνουμε τρεις σημαντικές μορφές πακέτων: Snap, AppImage και Flatpak, όλες ανεξάρτητες διανομής.
Τι είναι οι μορφές πακέτων;
Οι μορφές πακέτων είναι αρχεία που περιέχουν κώδικα προγράμματος και τα μεταδεδομένα που απαιτούνται για την εκτέλεσή τους. Το Linux υποστηρίζει πολλές μορφές πακέτων και οι προγραμματιστές μπορούν να επιλέξουν να συσκευάσουν την εφαρμογή τους σε οποιαδήποτε μορφή θέλουν. Ως χρήστης, θα πρέπει να κατεβάσετε το απαιτούμενο πακέτο και να το εγκαταστήσετε μέσω ενός διαχειριστή πακέτων για να εκτελέσετε την εφαρμογή.
Ubuntu και άλλες διανομές που βασίζονται στο Debian Χρησιμοποιήστε το .deb μορφή πακέτου εγγενώς, ενώ χρησιμοποιούν τα Fedora, RHEL και CentOS
.rpm. Τα εγγενή πακέτα είναι γρήγορα, καθώς έχουν σχεδιαστεί και μεταγλωττιστεί ειδικά για ένα σύστημα, ενώ μοιράζονται επίσης βιβλιοθήκες, διατηρώντας τις εφαρμογές μικρότερες. Ωστόσο, τα εγγενή πακέτα απαιτούν από τους χρήστες να ενημερώνουν και να διατηρούν οι ίδιοι τις εξαρτήσεις.Τα ανεξάρτητα πακέτα διανομής όπως το Snap, το AppImage και το Flatpak παρέχουν εφαρμογές που μπορούν να εκτελεστούν σε διαφορετικά μηχανήματα. Καταργούν τα προβλήματα εξάρτησης που αντιμετωπίζουν πολλοί χρήστες Linux καθημερινά και κάνουν τη ζωή πολύ πιο εύκολη για τους προγραμματιστές. Ωστόσο, αυτό οδηγεί επίσης σε μεγαλύτερα δυαδικά αρχεία.
Snap vs. AppImage vs. Flatpak
Όπως αναφέρθηκε παραπάνω, και τα τρία Snap, AppImage και Flatpak παρέχουν μέσα για τη συσκευασία εφαρμογών ανεξάρτητα από τη διανομή Linux. Ας ρίξουμε μια προσεκτική ματιά σε μερικά από τα αξιοσημείωτα χαρακτηριστικά τους καθώς και στα πλεονεκτήματα και τα μειονεκτήματά τους.
1. Θραύση
Το Snap είναι ένα σύστημα συσκευασίας που αναπτύχθηκε από την Canonical και έχει σημαντική εταιρική υποστήριξη. Όταν εγκαθιστάτε την snap έκδοση μιας εφαρμογής, περιλαμβάνει όλες τις βιβλιοθήκες και τις εξαρτήσεις που απαιτούνται για την εκτέλεση αυτής της εφαρμογής. Αυτό εξοικονομεί στους συντηρητές εφαρμογών τον χρόνο που απαιτείται για την ανάπτυξη διαφορετικών εκδόσεων για διαφορετικά συστήματα.
Μπορείς εγκαταστήστε snaps από το Snap Store απευθείας ή μέσω της γραμμής εντολών. Πολλές δημοφιλείς διανομές Linux έχουν υιοθετήσει το Snap, συμπεριλαμβανομένων των Ubuntu, Manjaro, Linux Mint, Debian, Kali και RHEL. Ένα άλλο βασικό πλεονέκτημα των εφαρμογών Snap είναι ότι εκτελούνται επίσης σε συστήματα IoT και Cloud χωρίς τροποποιήσεις.
Τα Snaps επιτρέπουν επίσης στους χρήστες να έχουν πολλές εκδόσεις της ίδιας εφαρμογής. Η αυτοενημερούμενη φύση των snaps διασφαλίζει ότι οι χρήστες δεν χρειάζεται να ανησυχούν για μη αυτόματες ενημερώσεις. Ωστόσο, δεδομένου ότι τα πακέτα snap περιέχουν όλες τις απαραίτητες εξαρτήσεις, είναι πιο ογκώδη από τη βανίλια .deb ή .rpm πακέτα. Επιπλέον, η snap έκδοση πολλών εφαρμογών εκτελείται πιο αργά από το AppImages ή το Flatpaks.
Ακολουθούν ορισμένες εντολές snap που μπορεί να είναι χρήσιμες εάν μόλις ξεκινάτε με αυτές. Η λειτουργία κάθε εντολής παρατίθεται ως σχόλια.
# εγκαταστήστε το VLC Media Player
snap install vlc# λίστα εγκατεστημένα snaps
snap λίστα# ενημέρωση του VLC Media Player
snap refresh vlc# επαναφέρετε το VLC Media Player στην προηγούμενη έκδοση
snap revert vlc
# αφαιρέστε το VLC Media Player
snap αφαιρέστε vlc
2. AppImage
Το AppImage είναι ένας πολύ καλός τρόπος για να δοκιμάσετε νέες εφαρμογές χωρίς να τις εγκαταστήσετε στον υπολογιστή σας. Η ιδέα πίσω από το AppImage είναι αρκετά απλή: ένα αρχείο ανά εφαρμογή. Με αυτόν τον τρόπο, οι προγραμματιστές μπορούν να εξασφαλίσουν τη φορητότητα των εφαρμογών τους και οι χρήστες μπορούν να δοκιμάσουν νέα πακέτα χωρίς εγκατάσταση. Ένα σημαντικό πλεονέκτημα των AppImages είναι ότι δεν απαιτούν δικαιώματα sudo στο Linux.
Για να δοκιμάσετε ένα AppImage, το μόνο που χρειάζεται να κάνετε είναι να κατεβάσετε το πακέτο, να το κάνετε εκτελέσιμο και να το εκτελέσετε. Είναι παρόμοιο με το πώς .exe τα αρχεία λειτουργούν στα Windows.
Σχετιζομαι με: Μπορεί το Linux να εκτελεί αρχεία Windows EXE;
AppImageHub είναι το κεντρικό αποθετήριο για τα πακέτα AppImage και περιέχει πολλές δημοφιλείς εφαρμογές. Μπορείτε επίσης να κάνετε λήψη του AppImages από ιστότοπους προμηθευτών, εάν παρέχονται. Αλλά μείνετε μακριά από AppImages που έχουν ληφθεί από μη αξιόπιστη πηγή.
Τα AppImages είναι συνήθως πιο γρήγορα από τα snaps ή τα flatpaks και χρειάζονται λιγότερο χώρο αποθήκευσης. Είναι επίσης εύκολο να αφαιρεθούν καθώς μπορείτε να διαγράψετε αρχεία AppImage όποτε θέλετε χωρίς να διακόψετε άλλες διαδικασίες του συστήματος.
Ακολουθούν οι εντολές που απαιτούνται για την εκτέλεση ενός αρχείου AppImage στο Linux από τη γραμμή εντολών:
# χορηγήστε άδεια εκτέλεσης στο αρχείο
chmod a+x *.AppImage
# εκτελέστε το AppImage
./*.AppImage
3. Flatpak
Το Flatpak είναι ένα άλλο σύστημα διαγνωστικής συσκευασίας που αποστέλλει εφαρμογές με τις απαιτούμενες εξαρτήσεις. Οι χρήστες μπορούν να βρουν και να εγκαταστήσουν flatpaks από το κατάστημα διανομής δημοφιλών συστημάτων Linux ή μέσω του CLI.
Το Flatpak είναι ένα αποκεντρωμένο σύστημα, που σημαίνει ότι μπορείτε να αποκτήσετε πακέτα από πολλά repos ή τηλεχειριστήρια (με όρους Flatpak). Flathub είναι το πιο δημοφιλές τηλεχειριστήριο και έχει χιλιάδες εφαρμογές.
Οι εφαρμογές Flatpak εκτελούνται σε ένα sandbox από προεπιλογή, ένα περιβάλλον εφαρμογής ξεχωριστό από το χρόνο εκτέλεσης του κεντρικού συστήματος. Αυτό το sandbox περιλαμβάνει όλα όσα χρειάζονται για την εκτέλεση του λογισμικού. Η απομονωμένη φύση των πακέτων Flatpak τα καθιστά εγγενώς ασφαλή και οι αλλαγές συστήματος μπορούν να συμβούν μόνο εάν ο χρήστης παρέχει ρητή άδεια.
Ωστόσο, τα πακέτα Flatpak καταλαμβάνουν συνήθως περισσότερο χώρο από τα Snaps ή τα AppImages. Είναι επίσης πιο αργά σε σύγκριση με τα AppImages αλλά πιο γρήγορα από τα πακέτα Snap. Το Flatpak είναι εγκατεστημένο από προεπιλογή σε σύγχρονες διανομές Linux. Εάν δεν συμβαίνει αυτό, μπορείτε να το εγκαταστήσετε χρησιμοποιώντας τις ακόλουθες εντολές:
Σε Ubuntu/Debian:
sudo apt εγκατάσταση flatpak
Στο Arch Linux:
sudo pacman -S flatpak
Σε Fedora, RHEL και CentOS:
sudo dnf εγκατάσταση flatpak
Μπορείτε να προσθέσετε το αποθετήριο Flathub στο σύστημά σας χρησιμοποιώντας το παρακάτω απόσπασμα:
flatpak remote-add --αν-δεν-υπάρχει flathub \ https://flathub.org/repo/flathub.flatpakrepo
Χρησιμοποιήστε το εγκατάσταση flatpak εντολή για εγκατάσταση πακέτων. Η παρακάτω εντολή εγκαθιστά το VLC flatpak από το Flathub:
flatpak εγκατάσταση flathub org.videolan. VLC
Snap vs. AppImage vs. Flatpak: Ποιο δρόμο να πάτε;
Δεδομένου ότι και οι τρεις μορφές πακέτων είναι ανεξάρτητες από το λειτουργικό σύστημα, μπορείτε να επιλέξετε να χρησιμοποιήσετε οποιαδήποτε από αυτές. Ωστόσο, υπάρχουν σενάρια όπου το καθένα ξεπερνά τα άλλα. Για παράδειγμα, αν η ταχύτητα της εφαρμογής και το μέγεθος του προγράμματος έχουν μεγαλύτερη σημασία για εσάς, τότε το AppImage θα ήταν η ιδανική λύση.
Αλλά αν θέλετε να εκτελέσετε την εφαρμογή σας σε διαφορετικές πλατφόρμες, το Snaps θα πρέπει να είναι ο καλύτερος τρόπος. Το Flatpaks, από την άλλη πλευρά, προσφέρει περισσότερο έλεγχο στους προγραμματιστές. Επομένως, εάν είστε προγραμματιστής, μπορείτε να επιλέξετε το Flatpak από το Snaps. Η διαθεσιμότητα των εφαρμογών είναι επίσης ένας σημαντικός παράγοντας κατά την επιλογή μεταξύ Snap, AppImage και Flatpak.
Καλύτερο σύστημα συσκευασίας ανεξάρτητου διανομής για Linux
Τα πακέτα ανεξάρτητα από τη διανομή είναι ένας πολύ καλός τρόπος για να διασφαλιστεί η φορητότητα του λογισμικού. Και τα τρία Snap, AppImage και Flatpak έχουν κάτι μοναδικό να προσφέρουν στους τελικούς χρήστες. Ακόμα κι έτσι, εξαρτάται από εσάς ποιο θέλετε να χρησιμοποιήσετε. Ακόμα καλύτερα, δοκιμάστε μερικές από τις καλύτερες εφαρμογές Linux και από τις τρεις σφαίρες και δείτε τι λειτουργεί για τον εαυτό σας.
Είτε είστε νέος χρήστης του Linux είτε είστε έμπειρος χρήστης, εδώ είναι το καλύτερο λογισμικό και εφαρμογές Linux που πρέπει να χρησιμοποιείτε σήμερα.
Διαβάστε Επόμενο
- Linux
- Εφαρμογές Linux
- Διαχειριστές πακέτων
Ο Rubaiat είναι πτυχιούχος CS με έντονο πάθος για τον ανοιχτό κώδικα. Εκτός από βετεράνος του Unix, ασχολείται επίσης με την ασφάλεια δικτύου, την κρυπτογραφία και τον λειτουργικό προγραμματισμό. Είναι μανιώδης συλλέκτης μεταχειρισμένων βιβλίων και τρέφει έναν ατελείωτο θαυμασμό για την κλασική ροκ.
Εγγραφείτε στο ενημερωτικό μας δελτίο
Εγγραφείτε στο ενημερωτικό μας δελτίο για συμβουλές τεχνολογίας, κριτικές, δωρεάν ebook και αποκλειστικές προσφορές!
Κάντε κλικ εδώ για να εγγραφείτε