Distri — un dstributivo per la sperimentazione di tecnologie di gestione rapida dei pacchetti

Michael Stapelberg, autore del gestore di finestre mosaico i3wm e in passato sviluppatore attivo di Debian (ha mantenuto circa 170 pacchetti), sviluppa un dstributivo sperimentale distri e un gestore di pacchetti omonimo. Il progetto è posizionato come un'indagine sulle possibili strade per aumentare le prestazioni dei sistemi di gestione dei pacchetti e incarna alcune nuove idee nella costruzione di dstributivi. Il codice del gestore di pacchetti è scritto in Go e è distribuito sotto licenza BSD.

Una caratteristica chiave del formato di pacchetti proposto nel dstributivo è la fornitura del pacchetto sotto forma di immagini SquashFS, invece di archivi tar compressi. L'uso di SquashFS, in analogia con i formati AppImage e Snap, consente di "montare" il pacchetto senza doverlo estrarre, risparmiando spazio su disco, permettendo modifiche atomiche e rendendo il contenuto del pacchetto immediatamente accessibile. Inoltre, i pacchetti distri, come nel formato classico "deb", contengono solo singoli componenti, collegati da dipendenze con altri pacchetti (le librerie non vengono duplicate nei pacchetti, ma installate come dipendenze). In altre parole, distri cerca di combinare la struttura dei pacchetti granulari dei classici dstributivi come Debian con i metodi di fornitura delle applicazioni sotto forma di contenitori montabili.

Ogni pacchetto in distri è montato nella sua directory in modalità sola lettura (ad esempio, il pacchetto con zsh è disponibile come "/ro/zsh-amd64-5.6.2-3"), il che ha un effetto positivo sulla sicurezza e protegge da modifiche accidentali o malevoli. Per formare la gerarchia delle directory di sistema, come /usr/bin, /usr/share e /usr/lib, viene utilizzato un modulo FUSE speciale che unisce il contenuto di tutte le immagini SquashFS installate in un'unica entità (ad esempio, la directory /ro/share fornisce accesso alle sottodirectory share di tutti i pacchetti).

Pacchetti in distri fondamentalmente privati I gestori chiamati nel processo di installazione (assenza di hook e trigger) possono coesistere diverse versioni del pacchetto, rendendo possibile l’installazione parallela dei pacchetti. La struttura proposta limita le prestazioni del gestore di pacchetti solo alla larghezza di banda della rete attraverso cui vengono scaricati i pacchetti. L’installazione o l’aggiornamento diretto di un pacchetto avviene in modo atomico e non richiede la duplicazione dei contenuti.

I conflitti durante l’installazione dei pacchetti sono esclusi poiché ogni pacchetto è legato alla propria directory e nel sistema è consentita la presenza di diverse versioni di uno stesso pacchetto (il contenuto della directory con una revisione più recente viene collegato ai cataloghi consolidati). La costruzione dei pacchetti avviene anche molto rapidamente e non richiede l’installazione di pacchetti in un ambiente di build separato (in quest'ultimo si creano rappresentazioni delle dipendenze necessarie dalla directory /ro).

Supportati comandi di gestione dei pacchetti standard, come «distri install» e «distri update», e al posto dei comandi informativi si può utilizzare l'utilità standard «ls» (per esempio, per visualizzare i pacchetti installati è sufficiente elencare le directory nella gerarchia «/ro», mentre per scoprire a quale pacchetto appartiene un file, controllare dove porta il collegamento di quel file).

Il prototipo del sistema operativo proposto per esperimenti include circa 1700 pacchetti e immagini di installazione pronte con un installer, adatte sia per l’installazione come sistema operativo principale che per l’avvio in QEMU, Docker, Google Cloud e VirtualBox. È supportato il caricamento da una partizione di disco crittografata e una collezione di applicazioni standard per creare un desktop basato sul gestore di finestre i3 (si propone Google Chrome come browser). È fornito un set completo di strumenti per la costruzione del sistema operativo, preparazione e creazione di pacchetti, distribuzione di pacchetti sui mirror e altro ancora. Go 1.13

Fonte: opennet.ru

Acquista hosting affidabile per siti web con protezione DDoS, VPS VDS server 🔥 Acquista hosting affidabile per siti web con protezione DDoS, VPS VDS server | ProHoster