Distri – distributsioon kiirete paketihaldustehnoloogiate testimiseks

Michael Stapelberg, i3wm plaaditud aknahalduri autor ja endine aktiivne Debiani arendaja (haldas umbes 170 paketti), areneb eksperimentaalne jaotus distri ja samanimeline paketihaldur. Projekti eesmärk on uurida võimalikke viise paketihaldussüsteemide jõudluse suurendamiseks ja see hõlmab uusi ideid distributsioonide loomiseks. Paketihalduri kood on kirjutatud Go ja jaotatud BSD litsentsi alusel.

Distributsiooni paketivormingu põhiomadus on see, et pakett tarnitakse tihendatud tararhiivide asemel SquashFS-piltidena. SquashFS-i kasutamine sarnaselt AppImage'i ja Snapi vormingutega võimaldab teil paketi "ühendada" ilma, et peaksite seda lahti pakkima, mis säästab kettaruumi, võimaldab aatomeid muuta ja muudab paketi sisu koheselt kättesaadavaks. Samal ajal sisaldavad distripaketid, nagu ka klassikalises “deb” vormingus, ainult üksikuid komponente, mis on sõltuvuste kaudu seotud teiste pakettidega (teeke ei dubleerita pakettides, vaid need installitakse sõltuvustena). Teisisõnu, distri püüab kombineerida klassikaliste distributsioonide (nt Debian) granuleeritud paketistruktuuri meetoditega rakenduste tarnimiseks ühendatud konteinerite kujul.

Iga distri pakett on ühendatud kirjutuskaitstud režiimis oma kataloogi (näiteks zsh-ga pakett on saadaval kui "/ro/zsh-amd64-5.6.2-3"), millel on positiivne mõju turvalisusele ja kaitseb juhuslike või pahatahtlike muutuste eest. Teenusekataloogide (nt /usr/bin, /usr/share ja /usr/lib) hierarhia moodustamiseks kasutatakse spetsiaalset FUSE-moodulit, mis ühendab kõigi installitud SquashFS-piltide sisu üheks tervikuks (näiteks / ro/share directory pakub juurdepääsu kõigi pakettide alamkataloogide jagamisele).

Paketid distris põhimõtteliselt kohale toimetatud installimise ajal kutsutud töötlejatelt (ilma konksude või päästikuteta) ja paketi erinevad versioonid võivad üksteisega koos eksisteerida, nii et pakettide paralleelne installimine muutub võimalikuks. Kavandatav disain piirab paketihalduri jõudlust ainult võrgu läbilaskevõimega, mille kaudu paketid alla laaditakse. Paketi tegelik installimine või värskendamine toimub aatomipõhiselt ja see ei nõua sisu dubleerimist.

Konfliktid pakettide installimisel on välistatud, kuna iga pakett on seotud oma kataloogiga ja süsteem võimaldab ühe paketi erinevate versioonide olemasolu (paketi uuema versiooniga kataloogi sisu sisaldub liidu kataloogides). Ka pakettide koostamine on väga kiire ega nõua pakettide paigaldamist eraldi ehituskeskkonda (ehituskeskkonnas luuakse vajalike sõltuvuste esitused /ro kataloogist).

Toetatud tüüpilised paketihalduskäsud, nagu "distri install" ja "distri update" ning teabekäskude asemel võite kasutada tavalist utiliiti "ls" (näiteks installitud pakettide vaatamiseks kuvage lihtsalt kataloogide loend /ro” hierarhias ja et teada saada, millisesse paketti fail kuulub, vaadake, kuhu selle faili link viib).

Katsetamiseks pakutud prototüübi jaotuskomplekt sisaldab umbes 1700 pakki ja valmis paigalduspildid installeriga, sobib nii põhi OS-ina installimiseks kui ka QEMU-s, Dockeris, Google Cloudis ja VirtualBoxis töötamiseks. See toetab käivitamist krüptitud kettapartitsioonilt ja standardrakenduste komplekti i3 aknahalduril põhineva töölaua loomiseks (brauserina pakutakse Google Chrome'i). Tingimusel täielik tööriistakomplekt distributsiooni kokkupanemiseks, pakettide ettevalmistamiseks ja genereerimiseks, pakettide jaotamiseks peeglite kaudu jne.

Allikas: opennet.ru

Lisa kommentaar