Construiți pachete

Pachetele Deb sunt utilizate în distribuții populare, cum ar fi Debian și Ubuntu. Spre deosebire de diferitele distribuții bazate pe RPM, structura acestor pachete nu diferă una de cealaltă. Pentru aceasta, nu va fi foarte dificil să reconstruiți pachetul de la un set de distribuție la altul.

Pachetul Deb este o arhivă gzip, precum și scripturi și fișiere suplimentare. Iată un exemplu tipic al unui nume de pachet:

După cum putem vedea că numele pachetului este separat de versiune de simbolul de subliniere, precum și de arhitectura pachetului. Simbolul "-" specifică o anumită aparență de eliberare, deși conceptul exact, ca în RPM pentru că nu există.

Arhitecturi sunt i386 (în rotații pe minut), amd64 (pachet de 64-biți, numit după primele procesoare AMD), toate (aceeași ca noarch în RPM, indiferent de arhitectura), PowerPC, și o varietate de arhitectură exotice pe care nu l conduc Vreau.

Cred că va fi util să realizăm o comparație superficială între RPM și DEB. Există multe diferențe, dar nu vor fi atât de vizibile din partea utilizatorului final. În general, atunci când pentru noi cineva face totul (cu calitate), totul este bine. De îndată ce începem să încercăm să facem ceva de la noi - totul e rău.

Deci, cea mai renumită caracteristică distinctivă a lui Deb este prezența dependențelor moi (Recomends și Suggest). Mulți utilizatori văd această putere și putere supranaturale ale DEB, deși probabil că nu știu ce trebuie să facă cu aceste dependențe. Apt-get nu știe cum să le rezolve, Aptitude o poate face cu două opțiuni în setările apt:

În orice caz, în funcție de pachete moi prescrise, fără de care pachetul nostru va lucra în orice caz. Și, în opinia mea, este încă dependența absolut rigide sau moi, fie ca am pus toți sacii sau Recomends Suggest, nu pune nici un sistem de personal sau va fi elegant, cu funcții reduse ale unor pachete sau gryaznenky cu o grămadă de pachete diferite.

Cea de a doua diferență utilă este abilitatea de a specifica în dependențele logicului sau.

În RPM, o problemă similară a fost corectată prin adăugarea de pachete pe care pachetul este dependent. Cu toate acestea, este mult mai ușor să o faci așa cum se face în DEB.

Totuși, ca utilitate, putem identifica acest lucru. Toate scripturile și fișierele de serviciu se află în directorul / var / lib / dpkg / info /. Deci, putem să ne uităm rapid la ele și să nu suferim de diverse comenzi.

De fapt, asta e tot. În pachetul Deb, nu puteți determina pe ce mașină a fost compilată, pachetul nu are macrocomenzi diferite, ca în RPM.

În general, după cum se poate vedea, avantajele și dezavantajele unuia și celuilalt sunt destul de îndoielnice. Dar acest lucru este doar în raport cu utilizatorul final. De îndată ce începem să construim pachetul propriu (aproape de la zero), neajunsurile Deb devin mai evidente.

Acestea includ:

  1. Mai multe fișiere de configurare (față de rpm primul spec);
  2. O mulțime de comenzi dh_ * de serviciu care nu sunt complet clare ce fac;
  3. Codul sursă nu este un fișier, ci al doilea, al treilea;
  4. Dificultatea de patch-uri;
  5. Abilitatea de a face același lucru în mai multe moduri diferite.

Limba internă dh_make nu face, de asemenea, ansamblul foarte atractiv.

În mod separat, vreau să spun despre semnătura digitală a pachetului. Pachetul Deb, spre deosebire de RPM, nu se abonează, dar sunt semnate diferite fișiere text care conțin sumele de control. În cele din urmă, totul se reduce la semnătura Release.gpg din depozit. Deci, dacă ați aluneca pachetul din stânga în depozitul principal, atunci este imposibil să îi identificați autenticitatea. Mai mult decât atât, cheia cu o parolă goală este de obicei folosită pentru a semna depozitul propriu-zis.

Deși pachetele pentru Debian și Ubuntu sunt toate într-un singur loc, dar din cauza diferitelor depozite și a sistemului de pool-uri, găsirea unui lucru este dificilă. Vă recomandăm să utilizați site-urile packages.debian.org și, respectiv, packages.ubuntu.com. Pe ele puteți înțelege cu ușurință la ce kit de distribuție se aplică pachetul.

În partea următoare, vom vorbi despre asamblarea pachetelor Deb.

Pagina 1 din 1 1

Articole similare