Ghid pentru pachete binare - wiki gentoo

Împreună cu ebuild-suport de obicei, Portage sprijină asamblarea și instalarea pachetelor binare. Acest ghid explică modul de a construi, instala și configura serverul ca un pachet binar.

Există mai multe motive pentru care unii administratori de rețea, ca să instaleze pachete Gentoo sunt sub formă de pachete binare.

  1. În primul rând, permite administratorilor să păstreze sisteme similare actualizate. Având de a compila totul, de la sursa poate deveni consumatoare de timp. Menținerea mai multor sisteme similare, eventual, unele dintre ele cu hardware mai vechi, poate fi mult mai ușor în cazul în care doar un singur sistem trebuie să compilați totul, de la sursă și celelalte sisteme reutiliza pachetele binare.
  2. Un al doilea motiv este de a face actualizări în condiții de siguranță. Pentru sistemele critice de misiune este important să rămână utilizabil cât mai mult posibil. Acest lucru se poate face printr-un server de intermediere care efectuează toate actualizările mai întâi în sine. După ce serverul de așteptare este într-o stare bună actualizările pot fi apoi aplicate la sistemele critice. O variantă a acestei abordări este de a face actualizările într-un chroot pe același sistem și de a folosi binarele create acolo pe sistemul real.
  3. Un al treilea motiv este ca o copie de rezervă. Adesea pachetele binare sunt singura modalitate de recuperare a unui sistem de spart (adică compilator rupt). Având în fișierele binare pre-compilate în jurul fie pe un server pachet binar sau local poate fi de mare ajutor în cazul unui toolchain rupt.
  4. În cele din urmă, susține, de asemenea, actualizarea sistemelor foarte vechi. Sarcina de actualizare a sistemelor foarte vechi poate fi mult facilitat folosind pachete binare. De obicei, este util să se instaleze pachete binare pe sisteme vechi, deoarece acestea nu necesită dependențe de timp construi pentru a fi instalate / actualizate. Pachete Binare evita, de asemenea, eșecuri în procesele de construire, deoarece acestea sunt pre-compilate.

Acest ghid se va concentra pe următoarele subiecte:

  • Cum de a crea pachete binare;
  • Cum de a oferi pachete binare pentru client;
  • modul de utilizare a pachetelor binare;
  • cum să mențină pachetele binare.

Spre final se va considera probleme ceva mai complexe, de a face cu pachete binare.

notă
Toate instrumentele care sunt utilizate în acest document sunt parte din pachetul sys-apps / portage. cu excepția cazului în care se prevede altfel.

Crearea de pachete binare

Există trei moduri de bază pentru a crea pachete binare:

  1. după o instalare tipică de utilizat quickpkg;
  2. în mod evident, în timpul fiecărui emerge. Parametrul utilizare --buildpkg (-b);
  3. în mod automat prin setarea valorii în variabila buildpkg Caracteristicilor Portage.

Toate cele trei metode vor crea pachete binare în directorul care este specificat în variabila PKGDIR (implicit este / usr / portage / pachete).

Utilizarea quickpkg

Aplicația quickpkg are unul sau mai mulți atomi de dependență (sau seturi de pachete) și creează pachete binare pentru toate pachetele instalate care se potrivesc cu acel atom.

De exemplu, pentru a crea pachetele binare pentru toate versiunile instalate ale GCC:

rădăcină # quickpkg sys-devel / GCC

Utilizați *. în scopul de a crea pachete binare pentru toate pachetele instalate pe sistemul dumneavoastră:

Există un avertisment cu această metodă: se bazează pe fișierele instalate, care poate fi o problemă în cazul în care fișierele de configurare. Administratorii schimba de multe ori fișierele de configurare după instalarea software-ului. Pentru că acest lucru ar putea scurge date importante (poate chiar confidențiale) în pachete, quickpkg implicit nu include fișierele de configurare, care sunt protejate prin metoda CONFIG_PROTECT. Pentru a forța includerea fișierelor de configurare, utilizați --includeți-config sau opțiuni --includeți-nemodificat-config.

Utilizarea --buildpkg emerge ca parametru

Când instalați cu emerge programe pot instrui Portage să creeze un pachet binar, dacă utilizați opțiunea --buildpkg (-b).

rădăcină # emerge --ask --buildpkg sys-devel / GCC

Puteți instrui Portage pentru a crea doar un pachet binar, fără a instala pachetul în sistem. Pentru a face acest lucru, utilizați opțiunea --buildpkgonly (-B).

rădăcină # emerge --ask --buildpkgonly sys-devel / GCC

Această din urmă abordare necesită însă toate dependențele de timp construi care urmează să fie instalate anterior.

buildpkg de lucru de punere în aplicare folosind capacitățile Portage

Cel mai comun mod de a crea un pachet binar, de fiecare dată când pachetul este instalat Portage, - este o oportunitate de a utiliza (caracteristica) buildpkg. care pot fi incluse în fișierul /etc/portage/make.conf ca aceasta:

/etc/portage/make.confVklyuchenie oportunități de fișier Portage buildpkg

De fiecare dată când Portage va instala software-ul și această funcție este activată, aceasta va crea, de asemenea, un pachet binar.

Excepție pentru anumite pachete

rădăcină # emerge -uDN @world --buildpkg --buildpkg-exclude "virtuale / * sys-kernel / * - surse"

Acesta poate fi folosit pentru pachet, pentru care crearea de pachete binare de utilizare puțin. De exemplu, pachetele sursa kernel sau pachete binare (acelea care se termină la -bin ca www-client / bin) Firefox.

Configurarea gazdă binarele

Portage suportă mai multe protocoale pentru a descărca pachete binare: FTP, FTPS, HTTP, HTTPS și SSH. Acest lucru lasă o cantitate mare de spațiu pentru diferite implementări ale gazdă binarele.

Cu toate acestea, nu există nici o metodă de „gata“ furnizat de Portage pentru a răspândi pachetele binare. În funcție de configurația dorită, trebuie să instalați software suplimentar.

Gazdă pachete binare bazate pe web

Abordarea de bază pentru difuzarea pachetelor binare este de a crea pachetele binare gazdă bazate pe Web.

Utilizați un server de web, cum ar fi lighttpd (www-servere / lighttpd) și configurați-l astfel încât acesta pentru citire de acces la directorul specificat de PKGDIR variabilă în fișierul /etc/portage/make.conf.

fișier /etc/lighttpd/lighttpd.confPrimer configurare lighttpd

Apoi, pe sistemele client, configurați PORTAGE_BINHOST variabilă.

Fișier /etc/portage/make.confIspolzovanie pachete binare gazdă bazate pe Web

Gazdă pachete binare bazate pe SSH

Pentru a oferi o abordare mai autentificata pentru pachetele binare, se poate lua în considerare utilizarea SSH.

Când se utilizează SSH, este posibil să se utilizeze chei SSH rădăcină utilizatorului Linux (fără ca expresia de acces instalațiile trebuie să se întâmple în fundal) pentru a se conecta la un pachet de gazdă la distanță binar.

Pentru a realiza acest lucru, asigurați-vă că cheia SSH utilizatorul root este permisă pe server. Acest lucru va trebui să se întâmple pentru fiecare mașină care se va conecta la SSH gazdă binar capabil:

rădăcină # pisica root.id_rsa.pub >> /home/binpkguser/.ssh/authorized_keys

Apoi PORTAGE_BINHOST variabilă s-ar putea arăta astfel:

fișier /etc/portage/make.confNastroyka PORTAGE_BINHOST pentru SSH-acces

notă
Nu utilizați fișier de configurare SSH

/.ssh/config pentru a configura porturi sau nume de utilizator. Acest director este ignorat atunci când Portage sincronizează pachete pe partea de client. În schimb, configurați toți parametrii din PORTAGE_BINHOST variabilă.

Exporturile din NFS

În cazul binarele gazdă în rețeaua internă, acesta poate fi mai ușor să exporte pachete folosind NFS, iar apoi montați-le pe client.

Fișierul / etc / exports ar putea arata astfel:

/ Etc / pachete director exportsEksport

Apoi, clienții pot monta directorul. Exemplu de intrări în / etc / fstab.

/ Etc / fstabZapis pentru a monta folderul cu pachetele

Utilizarea pachetelor binare

Pentru pachete binare pot fi folosite pe alte sisteme, acestea trebuie să îndeplinească anumite cerințe:

  • Arhitectura client și server, precum și variabila CHOST trebuie să fie aceeași.
  • CFLAGS de optimizare variabile
  • capabilități procesor USE (cum ar fi MMX, SSE, și așa mai departe), trebuie să fie alese cu grijă; Toți clienții trebuie să le sprijine.

important
Portage nu poate verifica dacă respectă aceste cerințe. Pentru respectarea acestor cerințe sunt îndeplinite de către administratorul de sistem.

Portage verifica, de asemenea, în cazul în care pachetul binar este creat folosind aceleași indicatori USE care sunt necesare pentru client. În cazul în care pachetul este asamblat cu altă combinație de indicatori USE, în funcție de parametrii trecut să apară. Portage ignora pachetul binar (și vor fi colectate de la codul sursă), sau completat. Pentru mai multe detalii, a se vedea instalarea pachetelor binare.

Clienții trebuie să facă unele setări pentru a utiliza pachete binare.

Instalarea pachete binare

Puteți adăuga unii parametri la comanda emerge. pentru a informa Portage despre modul în care să lucreze cu pachetele binare: