Modern technology gives us many things.

Τι είναι το AUR στο Arch Linux και πρέπει να το χρησιμοποιήσετε;

Jordan Gloor / How-To Geek

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

Το AUR είναι ένα από τα κοσμήματα στο στέμμα του Arch Linux, παρέχοντας χιλιάδες πρόσθετα πακέτα λογισμικού. Είναι όμως ασφαλές στη χρήση αυτό το αποθετήριο που βασίζεται στον χρήστη ή θα πρέπει να το αποφύγετε;

Τι είναι το AUR;

Το AUR (Arch User Repository) είναι ένα αποθετήριο λογισμικού που βασίζεται στην κοινότητα που παρέχει πάνω από 85.000 πακέτα λογισμικού σε χρήστες του Arch Linux. Σε αντίθεση με άλλα αποθετήρια Arch, όπως τα αποθετήρια πυρήνα, πρόσθετα και multilib, το AUR δεν φιλοξενεί πακέτα έτοιμα προς εγκατάσταση. Στην πραγματικότητα, δεν φιλοξενεί καθόλου δυαδικά αρχεία ή πακέτο λογισμικού.

Το AUR φιλοξενεί αρχεία δημιουργίας πακέτων, που ονομάζονται PKGBUILDs. Αυτά είναι σενάρια φλοιού που εκτελούνται από το Arch makepkg εργαλείο. Οταν makepkg εκτελείται, αναζητά ένα αρχείο που ονομάζεται “PKGBUILD”. Αν βρει ένα, το ανοίγει και ακολουθεί τις οδηγίες μέσα σε αυτό για να δημιουργήσει ένα αρχείο πακέτου λογισμικού στον υπολογιστή σας. Εάν είστε εξοικειωμένοι με τη μεταγλώττιση στη γραμμή εντολών, ένα αρχείο PKGBUILD και makepkg συνεργαστείτε με παρόμοιο τρόπο όπως ένα MAKEFILE και το make χρησιμότητα.

Οι οδηγίες PKGBUILD κατεβάζουν αρχεία πηγαίου κώδικα και άλλα αρχεία που απαιτούνται για τη δημιουργία του αρχείου του πακέτου. ο pacman Το εργαλείο καλείται αυτόματα για να εγκαταστήσει το λογισμικό από το αρχείο του πακέτου.

Με κίνδυνο να δημιουργήσουμε κάποια σύγχυση, ορισμένα πακέτα AUR κάνω παραδίδουν προ-μεταγλωττισμένα δυαδικά αρχεία. Αλλά αυτά τα δυαδικά αρχεία δεν φιλοξενούνται στο AUR, αποθηκεύονται αλλού στο Διαδίκτυο. Η καταχώρηση AUR για αυτά τα πακέτα περιέχει μόνο ένα αρχείο PKGBUILD που πραγματοποιεί λήψη του προμεταγλωττισμένου δυαδικού αρχείου στον υπολογιστή σας.

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

Το πρόβλημα με το AUR γίνεται εμφανές όταν το βράζετε μέχρι τα βασικά. Είναι μια συλλογή σεναρίων από τυχαίους χρήστες στο διαδίκτυο. Και θα ήθελαν να τα εκτελέσετε στον υπολογιστή σας.

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

ΣΧΕΤΙΖΕΤΑΙ ΜΕ: Πώς να ενημερώσετε το Arch Linux

Οι κίνδυνοι της χρήσης του AUR

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

Πιο απαίσιο ήταν το περιστατικό το 2005, όταν ένα ορφανό πακέτο AUR καταλήφθηκε από έναν νέο συντηρητή που σκόπιμα πρόσθεσε κακόβουλο κώδικα στο αρχείο PKGBUILD. Αυτά τα παραδείγματα είναι παλιά και ασυνήθιστα, αλλά τα ίδια πράγματα θα μπορούσαν να συμβούν ξανά.

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

Άλλοι κίνδυνοι κατά τη χρήση του AUR βασίζονται στη διανομή. Δεν είναι όλες οι διανομές που βασίζονται στο Arch αρκετά Arch-όπως ώστε το AUR να λειτουργεί άψογα. Το AUR υποθέτει ότι εγκαθίσταται σε γνήσιο Arch Linux, και σε μια πλήρως επιδιορθωμένη και ενημερωμένη έκδοση. Manjaro, για παράδειγμα, δεν υποστηρίζει επίσημα το AUR παρόλο που είναι Arch-based.

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

Ασφάλεια AUR: Ελέγξτε τις λεπτομέρειες και τη φήμη του πακέτου

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

Βρείτε το πακέτο σας στο AUR

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

Η γραμμή αναζήτησης στον ιστότοπο AUR

Ποια είναι η φήμη του;

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

Οι λεπτομέρειες του πακέτου AUR για τα πακέτα yay, με τις ψήφους και τους αριθμούς δημοτικότητας τονισμένα

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

Ελέγξτε τις Ημερομηνίες Δραστηριότητας

Στην ενότητα “Λεπτομέρειες πακέτου” θα δείτε τις ψήφους, τη βαθμολογία δημοτικότητας και δύο ημερομηνίες. Το ένα είναι όταν τα πακέτα εισήχθησαν για πρώτη φορά στο AUR και το δεύτερο είναι όταν το πακέτο ενημερώθηκε για τελευταία φορά.

Οι λεπτομέρειες του πακέτου AUR για τα πακέτα yay, με τονισμένη την πρώτη ημερομηνία υποβολής και την τελευταία ενημέρωση

Η ημερομηνία «Τελευταία ενημέρωση» θα σας ενημερώσει εάν το πακέτο διατηρείται ενεργά. Οι συσκευασίες που είναι αδρανείς για μεγάλο χρονικό διάστημα πρέπει να αντιμετωπίζονται με προσοχή.

Είναι η διεύθυνση URL Upstream έγκυρη τοποθεσία;

Ελέγξτε επίσης το “Upstream URL” και βεβαιωθείτε ότι πηγαίνει στο a έγκυρη ιστοσελίδα ή αποθετήριο κώδικα για το πακέτο ή το έργο. Αν όχι, κάτι δεν πάει καλά.

Οι λεπτομέρειες του πακέτου AUR για τα πακέτα yay, με επισημασμένη τη διεύθυνση URL upstream

Διαβάστε τα σχόλια των χρηστών

Υπάρχουν σχόλια χρηστών στο κάτω μέρος κάθε σελίδας AUR. Αυτά μπορούν να επεκταθούν σε πολλές σελίδες. Δείτε τι λένε οι άλλοι χρήστες για το πακέτο και τι είδους ερωτήσεις κάνουν. Δείτε επίσης τι λύσεις προσφέρονται σε θέματα που τίθενται. Υπάρχουν πρόσφατα σχόλια; Αυτό το πακέτο εξακολουθεί να έχει μια ενεργή βάση χρηστών;

Εγγραφείτε και δηλώστε συμμετοχή

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

Ακόμα κι αν δεν καταλαβαίνετε τα σενάρια φλοιού, υπάρχουν ακόμα μερικά πράγματα που μπορείτε να ελέγξετε.

Ελέγξτε τα Περιεχόμενα του PKGBUILD και άλλων αρχείων

Ένας συνηθισμένος τρόπος πρόσβασης στο AUR είναι με μια γραμμή εντολών “AUR helper”, όπως π.χ yayαλλά μπορείτε επίσης να χρησιμοποιήσετε το AUR με χειροκίνητο τρόπο.

Οι καλοί βοηθοί AUR σάς δίνουν την επιλογή να επιθεωρήσετε το αρχείο PKGBUILD, διακόπτοντας την εγκατάσταση εάν δεν θέλετε να συνεχίσετε. Στη μη αυτόματη διαδικασία, αναζητάτε το πακέτο στο AUR και κατεβάζετε το αρχείο PKGBUILD και το επιθεωρείτε πριν το χρησιμοποιήσετε. Εάν είστε πρόθυμοι να προχωρήσετε αφού το ελέγξετε, τρέχετε makepkg χειροκίνητα.

Είναι καλή ιδέα να εγκαταστήσετε τουλάχιστον ένα πακέτο χειροκίνητα, ώστε να γνωρίζετε τη μηχανική του τι κάνει ο βοηθός AUR στο παρασκήνιο. Θα χρησιμοποιήσουμε το yay βοηθός AUR ως παράδειγμα.

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

Κάντε κλικ στο σύνδεσμο URL “Git Clone URL” στην ενότητα “Λεπτομέρειες πακέτου” για να το αντιγράψετε στο πρόχειρο.

Σε ένα παράθυρο τερματικού, πληκτρολογήστε “git clone”, ένα κενό και, στη συνέχεια, πατήστε Shift+Ctrl+V για να επικολλήσετε τη διεύθυνση URL στη γραμμή εντολών. Πατήστε «Enter» για να ξεκινήσει η λήψη.

git clone https://aur.archlinux.org/yay.git

Κλωνοποίηση του αρχείου yay PKGBUILD από το αποθετήριο git

Όταν ολοκληρωθεί η λήψη, μεταβείτε στον νέο κατάλογο “yay”.

cd yay

Αλλαγή καταλόγων στο φάκελο yay.

Ας δούμε τι αρχεία έχουμε.

ls

Καταχώρηση των ανακτημένων αρχείων με ls

Υπάρχει ένα μόνο αρχείο, το αρχείο PKGBUILD. Συχνά υπάρχουν ένα ή δύο επιπλέον βοηθητικά αρχεία. Δείτε και αυτά. θα χρησιμοποιήσουμε less για να διαβάσετε το μοναδικό μας αρχείο.

less PKGBUILD

Ξεκινώντας το πρόγραμμα προβολής λιγότερων αρχείων για να ανοίξετε το αρχείο yay PKGBUILD

Ποιες διευθύνσεις URL χρησιμοποιεί το αρχείο PKGBUILD;

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

Επιθεώρηση του αρχείου yay PKGBUILD με το πρόγραμμα προβολής λιγότερων αρχείων

Μπορούμε να δούμε ότι δείχνει σε μια σελίδα GitHub για το yay έργο.

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

Αλλά θα συνεχίσουμε και θα κοιτάξουμε λίγο βαθύτερα.

Αναζητήστε εντολές λήψης

Χρήση ο less δυνατότητα αναζήτησης για αναζήτηση στο αρχείο για χρήσεις του wget ή curl. Και τα δύο αυτά εργαλεία μπορούν να χρησιμοποιηθούν για την ανάκτηση απομακρυσμένων αρχείων. Ένα PKGBUILD με καλή συμπεριφορά δεν θα πρέπει να έχει ανάγκη για τέτοια δραστηριότητα.

Εάν εντοπίσετε κάποια περιστατικά, αντιμετωπίστε τα ως κόκκινη σημαία και μην εγκαταστήσετε το πακέτο μέχρι να βεβαιωθείτε ότι είναι καλοήθης. Ποια είναι η διεύθυνση URL που το wget ή curl οι εντολές αναφέρονται; Φαίνονται νόμιμες και σχετίζονται με το πακέτο;

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

Ψάξτε για rm, mv και άλλες επικίνδυνες εντολές

Ομοίως, δεν χρειάζεται να περιέχει ένα αρχείο PKGBUILD rm ή mv εντολές, ούτε θα πρέπει να χρειάζεται να αναφέρουν οτιδήποτε στον κατάλογο “/dev”. Εάν το PKGBUILD καλεί απευθείας pacmanή αναφέρει systemctl, systemdή οποιοδήποτε άλλο ζωτικής σημασίας στοιχείο του συστήματος, όπως π.χ grubαντιμετωπίστε το αρχείο PKGBUILD ως επικίνδυνο και μην το εκτελέσετε.

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

Να είστε επιφυλακτικοί με τον συγκεχυμένο κώδικα

Οι άνθρωποι που γράφουν κακόβουλο κώδικα συχνά προσπαθούν να κρύψουν τις προθέσεις του θολώνοντάς τον. Χρησιμοποιούν μινιμαλιστική, λιτή, αδιαπέραστη σύνταξη, οπότε είναι δύσκολο να αποκρυπτογραφήσει κανείς τι προσπαθούν να κάνουν. Εάν δείτε γραμμές που χρησιμοποιούν ανακατεύθυνση ή κλήση sed ή awk αντιμετωπίστε τους ως ύποπτους.

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

Το /το σπίτι σας πρέπει να είναι το κάστρο σας

Το PKGBUILD μεταγλωττίζει και πραγματοποιεί δημιουργία ένα chroot περιβάλλον.

Αυτά είναι μεμονωμένα μίνι συστήματα αρχείων που επιτρέπουν στους προγραμματιστές να επεξεργάζονται sandbox περιορίζοντας την πρόσβασή τους στο υπόλοιπο σύστημα αρχείων του υπολογιστή σας και μειώνοντας την πρόσβασή τους σε άλλες εντολές συστήματος.

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

Μπορείτε να βοηθήσετε άλλους χρήστες του AUR

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

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

Το Linux έχει συνήθως πολλούς τρόπους για να γδέρνει κάθε γάτα.

ΣΧΕΤΙΖΕΤΑΙ ΜΕ: Πώς να εγκαταστήσετε το Arch Linux από ένα GUI





HowToGeek.com

Follow TechWar.gr on Google News

Απάντηση