Distri - μια διανομή για τη δοκιμή τεχνολογιών γρήγορης διαχείρισης πακέτων

Michael Stapelberg, συγγραφέας του i3wm tiled window manager και πρώην ενεργός προγραμματιστής του Debian (διατήρησε περίπου 170 πακέτα), αναπτύσσεται πειραματική κατανομή διαστ και έναν ομώνυμο διαχειριστή πακέτων. Το έργο τοποθετείται ως μια διερεύνηση πιθανών τρόπων για την αύξηση της απόδοσης των συστημάτων διαχείρισης πακέτων και ενσωματώνει μερικές νέες ιδέες για διανομές κτιρίων. Ο κωδικός διαχείρισης πακέτων είναι γραμμένος στο Go και διανέμονται από υπό την άδεια BSD.

Ένα βασικό χαρακτηριστικό της μορφής πακέτου της διανομής είναι ότι το πακέτο παραδίδεται με τη μορφή εικόνων SquashFS, αντί για συμπιεσμένα αρχεία πίσσας. Η χρήση του SquashFS, παρόμοια με τις μορφές AppImage και Snap, σας επιτρέπει να "προσαρτήσετε" ένα πακέτο χωρίς να χρειάζεται να το αποσυσκευάσετε, γεγονός που εξοικονομεί χώρο στο δίσκο, επιτρέπει ατομικές αλλαγές και καθιστά άμεσα προσβάσιμα τα περιεχόμενα του πακέτου. Ταυτόχρονα, τα πακέτα distri, όπως στην κλασική μορφή «deb», περιέχουν μόνο μεμονωμένα στοιχεία που συνδέονται με εξαρτήσεις με άλλα πακέτα (οι βιβλιοθήκες δεν αναπαράγονται σε πακέτα, αλλά εγκαθίστανται ως εξαρτήσεις). Με άλλα λόγια, η distri προσπαθεί να συνδυάσει τη δομή του κοκκώδους πακέτου κλασικών διανομών όπως το Debian με τις μεθόδους παράδοσης εφαρμογών με τη μορφή τοποθετημένων κοντέινερ.

Κάθε πακέτο στο distri είναι προσαρτημένο στον δικό του κατάλογο σε λειτουργία μόνο για ανάγνωση (για παράδειγμα, το πακέτο με zsh είναι διαθέσιμο ως "/ro/zsh-amd64-5.6.2-3"), το οποίο έχει θετική επίδραση στην ασφάλεια και προστατεύει από τυχαίες ή κακόβουλες αλλαγές. Για να σχηματιστεί μια ιεραρχία καταλόγων υπηρεσιών, όπως /usr/bin, /usr/share και /usr/lib, χρησιμοποιείται μια ειδική μονάδα FUSE, η οποία συνδυάζει τα περιεχόμενα όλων των εγκατεστημένων εικόνων SquashFS σε ένα σύνολο (για παράδειγμα, το / Ο κατάλογος ro/share παρέχει πρόσβαση σε κοινόχρηστους υποκαταλόγους από όλα τα πακέτα).

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

Οι διενέξεις κατά την εγκατάσταση πακέτων εξαλείφονται καθώς κάθε πακέτο σχετίζεται με τον δικό του κατάλογο και το σύστημα επιτρέπει την παρουσία διαφορετικών εκδόσεων ενός πακέτου (τα περιεχόμενα του καταλόγου με μια πιο πρόσφατη αναθεώρηση του πακέτου περιλαμβάνονται στους καταλόγους ένωσης). Η δημιουργία πακέτων είναι επίσης πολύ γρήγορη και δεν απαιτεί εγκατάσταση πακέτων σε ξεχωριστό περιβάλλον κατασκευής (στο περιβάλλον κατασκευής δημιουργούνται αναπαραστάσεις των απαραίτητων εξαρτήσεων από τον κατάλογο /ro).

Υποστηρίζεται τυπικές εντολές διαχείρισης πακέτων, όπως "distri install" και "distri update", και αντί για εντολές πληροφοριών, μπορείτε να χρησιμοποιήσετε το τυπικό βοηθητικό πρόγραμμα "ls" (για παράδειγμα, για να δείτε εγκατεστημένα πακέτα, απλώς εμφανίστε μια λίστα καταλόγων στο " ιεραρχία /ro” και για να μάθετε σε ποιο πακέτο περιλαμβάνεται το αρχείο, δείτε πού οδηγεί ο σύνδεσμος από αυτό το αρχείο).

Το πρωτότυπο κιτ διανομής που προτείνεται για πειραματισμό περιλαμβάνει περίπου 1700 συσκευασίες και έτοιμο εικόνες εγκατάστασης με πρόγραμμα εγκατάστασης, κατάλληλο τόσο για εγκατάσταση ως κύριο λειτουργικό σύστημα όσο και για εκτέλεση σε QEMU, Docker, Google Cloud και VirtualBox. Υποστηρίζει εκκίνηση από ένα κρυπτογραφημένο διαμέρισμα δίσκου και ένα σύνολο τυπικών εφαρμογών για τη δημιουργία επιτραπέζιου υπολογιστή με βάση τον διαχειριστή παραθύρων i3 (το Google Chrome προσφέρεται ως πρόγραμμα περιήγησης). Υπό την προϋπόθεση ένα πλήρες κιτ εργαλείων για τη συναρμολόγηση μιας διανομής, την προετοιμασία και τη δημιουργία πακέτων, τη διανομή πακέτων μέσω κατόπτρων κ.λπ.

Πηγή: opennet.ru

Προσθέστε ένα σχόλιο