డిస్ట్రి - వేగవంతమైన ప్యాకేజీ నిర్వహణ సాంకేతికతలను పరీక్షించడానికి పంపిణీ

మైఖేల్ స్టాపెల్‌బర్గ్, i3wm టైల్డ్ విండో మేనేజర్ రచయిత మరియు మాజీ యాక్టివ్ డెబియన్ డెవలపర్ (సుమారు 170 ప్యాకేజీలు నిర్వహించబడుతున్నాయి), అభివృద్ధి ప్రయోగాత్మక పంపిణీ డిస్ట్రి మరియు అదే పేరుతో ప్యాకేజీ మేనేజర్. ప్రాజెక్ట్ ప్యాకేజీ నిర్వహణ వ్యవస్థల పనితీరును పెంచడానికి సాధ్యమయ్యే మార్గాల అన్వేషణగా ఉంచబడింది మరియు నిర్మాణ పంపిణీల కోసం కొన్ని కొత్త ఆలోచనలను కలిగి ఉంటుంది. ప్యాకేజీ మేనేజర్ కోడ్ గో మరియులో వ్రాయబడింది ద్వారా పంపిణీ చేయబడింది BSD లైసెన్స్ కింద.

డిస్ట్రిబ్యూషన్ ప్యాకేజీ ఫార్మాట్ యొక్క ముఖ్య లక్షణం ఏమిటంటే, ప్యాకేజీ కంప్రెస్డ్ టార్ ఆర్కైవ్‌లకు బదులుగా SquashFS ఇమేజ్‌ల రూపంలో పంపిణీ చేయబడుతుంది. AppImage మరియు Snap ఫార్మాట్‌ల మాదిరిగానే SquashFSని ఉపయోగించడం ద్వారా, మీరు ప్యాకేజీని అన్‌ప్యాక్ చేయకుండా "మౌంట్" చేయడానికి అనుమతిస్తుంది, ఇది డిస్క్ స్థలాన్ని ఆదా చేస్తుంది, పరమాణు మార్పులను అనుమతిస్తుంది మరియు ప్యాకేజీలోని కంటెంట్‌లను తక్షణమే ప్రాప్యత చేస్తుంది. అదే సమయంలో, డిస్ట్రి ప్యాకేజీలు, క్లాసిక్ “డెబ్” ఫార్మాట్‌లో, ఇతర ప్యాకేజీలతో డిపెండెన్సీల ద్వారా లింక్ చేయబడిన వ్యక్తిగత భాగాలను మాత్రమే కలిగి ఉంటాయి (లైబ్రరీలు ప్యాకేజీలలో నకిలీ చేయబడవు, కానీ డిపెండెన్సీలుగా ఇన్‌స్టాల్ చేయబడతాయి). మరో మాటలో చెప్పాలంటే, డెబియన్ వంటి క్లాసిక్ డిస్ట్రిబ్యూషన్‌ల గ్రాన్యులర్ ప్యాకేజీ నిర్మాణాన్ని మౌంటెడ్ కంటైనర్‌ల రూపంలో అప్లికేషన్‌లను బట్వాడా చేసే పద్ధతులతో కలపడానికి డిస్ట్రి ప్రయత్నిస్తుంది.

డిస్ట్రిలోని ప్రతి ప్యాకేజీ దాని స్వంత డైరెక్టరీలో రీడ్-ఓన్లీ మోడ్‌లో మౌంట్ చేయబడింది (ఉదాహరణకు, zshతో ప్యాకేజీ “/ro/zsh-amd64-5.6.2-3”గా అందుబాటులో ఉంది), ఇది భద్రతపై సానుకూల ప్రభావం చూపుతుంది మరియు ప్రమాదవశాత్తు లేదా హానికరమైన మార్పుల నుండి రక్షిస్తుంది. /usr/bin, /usr/share మరియు /usr/lib వంటి సేవా డైరెక్టరీల యొక్క సోపానక్రమాన్ని రూపొందించడానికి, ఒక ప్రత్యేక FUSE మాడ్యూల్ ఉపయోగించబడుతుంది, ఇది అన్ని ఇన్‌స్టాల్ చేయబడిన SquashFS ఇమేజ్‌ల కంటెంట్‌లను మొత్తంగా మిళితం చేస్తుంది (ఉదాహరణకు, / ro/share డైరెక్టరీ అన్ని ప్యాకేజీల నుండి సబ్ డైరెక్టరీలను షేర్ చేయడానికి యాక్సెస్‌ని అందిస్తుంది).

ప్యాకేజీలు ప్రాథమికంగా డిస్ట్రిలో పంపిణీ చేయబడింది ఇన్‌స్టాలేషన్ సమయంలో పిలువబడే హ్యాండ్లర్ల నుండి (హుక్స్ లేదా ట్రిగ్గర్లు లేవు), మరియు ప్యాకేజీ యొక్క విభిన్న వెర్షన్‌లు ఒకదానితో ఒకటి కలిసి ఉంటాయి, కాబట్టి ప్యాకేజీల సమాంతర ఇన్‌స్టాలేషన్ సాధ్యమవుతుంది. ప్రతిపాదిత నిర్మాణం ప్యాకేజీ మేనేజర్ పనితీరును ప్యాకేజీలు డౌన్‌లోడ్ చేయబడిన నెట్‌వర్క్ నిర్గమాంశకు మాత్రమే పరిమితం చేస్తుంది. ప్యాకేజీ యొక్క వాస్తవ ఇన్‌స్టాలేషన్ లేదా నవీకరణ పరమాణుపరంగా నిర్వహించబడుతుంది మరియు కంటెంట్ యొక్క నకిలీ అవసరం లేదు.

ప్రతి ప్యాకేజీ దాని స్వంత డైరెక్టరీతో అనుబంధించబడినందున ప్యాకేజీలను ఇన్‌స్టాల్ చేసేటప్పుడు వైరుధ్యాలు తొలగించబడతాయి మరియు సిస్టమ్ ఒక ప్యాకేజీ యొక్క విభిన్న సంస్కరణల ఉనికిని అనుమతిస్తుంది (ప్యాకేజీ యొక్క ఇటీవలి పునర్విమర్శతో ఉన్న డైరెక్టరీ యొక్క కంటెంట్‌లు యూనియన్ డైరెక్టరీలలో చేర్చబడ్డాయి). ప్యాకేజీలను నిర్మించడం కూడా చాలా వేగంగా ఉంటుంది మరియు ప్రత్యేక నిర్మాణ వాతావరణంలో ప్యాకేజీలను ఇన్‌స్టాల్ చేయాల్సిన అవసరం లేదు (/ro డైరెక్టరీ నుండి అవసరమైన డిపెండెన్సీల ప్రాతినిధ్యం బిల్డ్ ఎన్విరాన్‌మెంట్‌లో సృష్టించబడుతుంది).

మద్దతు ఇచ్చారు “డిస్ట్రి ఇన్‌స్టాల్” మరియు “డిస్ట్రి అప్‌డేట్” వంటి సాధారణ ప్యాకేజీ నిర్వహణ ఆదేశాలు మరియు సమాచార ఆదేశాలకు బదులుగా, మీరు ప్రామాణిక “ls” యుటిలిటీని ఉపయోగించవచ్చు (ఉదాహరణకు, ఇన్‌స్టాల్ చేయబడిన ప్యాకేజీలను వీక్షించడానికి, “లో డైరెక్టరీల జాబితాను ప్రదర్శించండి. /ro” సోపానక్రమం, మరియు ఫైల్ ఏ ​​ప్యాకేజీలో చేర్చబడిందో తెలుసుకోవడానికి, ఈ ఫైల్ నుండి లింక్ ఎక్కడికి దారితీస్తుందో చూడండి).

ప్రయోగం కోసం ప్రతిపాదించబడిన ప్రోటోటైప్ పంపిణీ కిట్ గురించి ఉంటుంది 1700 ప్యాకేజీలు మరియు సిద్ధంగా సంస్థాపన చిత్రాలు ఇన్‌స్టాలర్‌తో, ప్రధాన OSగా ఇన్‌స్టాలేషన్‌కు మరియు QEMU, డాకర్, Google క్లౌడ్ మరియు వర్చువల్‌బాక్స్‌లో అమలు చేయడానికి అనుకూలంగా ఉంటుంది. ఇది i3 విండో మేనేజర్ (Google Chrome బ్రౌజర్‌గా అందించబడుతుంది) ఆధారంగా డెస్క్‌టాప్‌ను రూపొందించడానికి ఎన్‌క్రిప్టెడ్ డిస్క్ విభజన మరియు ప్రామాణిక అప్లికేషన్‌ల సెట్ నుండి బూట్ చేయడానికి మద్దతు ఇస్తుంది. అందించబడింది పంపిణీని సమీకరించడం, ప్యాకేజీలను సిద్ధం చేయడం మరియు ఉత్పత్తి చేయడం, అద్దాల ద్వారా ప్యాకేజీలను పంపిణీ చేయడం మొదలైన వాటి కోసం పూర్తి టూల్‌కిట్.

మూలం: opennet.ru

ఒక వ్యాఖ్యను జోడించండి