Cum să actualizați mai multe mașini în același timp

În situațiile în care gestionați mai multe mașini, Apt poate fi foarte util, deoarece simplifică procesul de actualizare și aplicare a patch-urilor de securitate pentru fiecare mașină. Problema este că, cu metoda tradițională, odată ce apare o actualizare, trebuie să descărcați o copie a tuturor pachetelor noi pentru fiecare dintre mașini, ceea ce implică un consum fenomenal de lățime de bandă și lățime de bandă. De pe serverul oficial Din fericire, există o metodă care ne permite să actualizăm una dintre mașini și, de acolo, să actualizăm restul mașinilor care alcătuiesc rețeaua noastră. Această metodă, pe lângă reducerea costurilor și optimizarea utilizării lățimii noastre de bandă, evită duplicarea pachetelor pe diferitele mașini: toate instalează pachetele folosind „serverul nostru cache”.


Când rulați aceeași distribuție pe diferite mașini (fie la locul de muncă, în laboratoare de calculatoare, în „ferme” de servere, în clustere sau chiar în mica rețea de domiciliu) poate fi util să creați un depozit de cache în rețeaua dvs. astfel încât odată ce un pachet a fost descărcat dintr-un depozit oficial, toate celelalte mașini îl descarcă din acel depozit cache care este stocat pe o mașină din rețeaua dvs. pe care o vom numi „server”. În acest fel, actualizările descărcate de pe o mașină pot fi instalate pe celelalte fără a fi nevoie să le descărcați din nou din depozitele oficiale.

Să ne uităm mai întâi la câteva soluții „netradiționale” pe care NU le recomand, dar care cu siguranță îmi vor veni în minte atunci când rezolvăm această întrebare.

Distribuiți / etc / apt

Când instalați un pachet pe o distribuție Debian (sau derivatele sale), acesta este stocat local în directorul '/ etc / apt'. Când este necesar un pachet, Apt caută mai întâi în acest director pentru a vedea dacă există o copie locală (adică o memorie cache), evitând astfel descărcările inutile. Drept urmare, mai mulți dintre voi, cu siguranță, s-ar fi gândit că o modalitate bună de a rezolva problema în cauză ar putea fi alegerea unui computer, pe care l-am desemna ca un fel de server, care ar fi actualizat folosind depozitele oficiale și care ar fi partajați-vă directorul '/ etc / apt' cu restul mașinilor din rețea. Cu toate acestea, această metodă ar putea duce la probleme legate de blocarea fișierului „sources.list”. În general, nu este cea mai utilizată sau cea mai convenabilă soluție.

Mutați pachetele

În loc să partajați un director comun '/ etc / apt', o altă alternativă ar putea fi ca fiecare computer să își folosească propriul director cache local, dar să genereze un script care se ocupă de copierea pachetelor de la o mașină la alta, astfel încât să rămână toate actualizate . Un instrument pentru îndeplinirea acestei sarcini poate fi „apt-move”, dar sincer nu îl recomand, deoarece nu este suficient de transparent pentru utilizatorul final. În plus, poate însemna o utilizare complet inutilă a spațiului pe disc, deoarece toate pachetele vor trebui copiate pe fiecare dintre mașini.

Sisteme cache dedicate

Cea mai bună soluție pentru această problemă este utilizarea unui sistem dedicat de cache. Pe scurt, despre ce este vorba este să creați o copie a serverelor oficiale pe una dintre mașinile din rețeaua dvs. și apoi să configurați restul mașinilor astfel încât, în loc să caute actualizări de la serverele oficiale, să o facă folosind acest lucru cache local (sau copiere).

Există o varietate de sisteme concepute pentru a funcționa cu Apt, inclusiv apt-cacher, apt-proxy și apt-cached.

Aici ne vom ocupa de apt-cacher, care este cel mai ușor de utilizat.

apt-cacher

Apt-cacher este foarte diferit de alte sisteme de stocare în cache, deoarece nu este un program autonom, ci rulează ca un script CGI sub Apache. Acest lucru are mai multe avantaje, cum ar fi transformarea acestuia într-un instrument mic și simplu, dar în același timp foarte puternic și, în consecință, mai robust, deoarece nu necesită propriul cod pentru a gestiona protocoalele și este foarte flexibil, deoarece puteți utiliza aplicația Apache mecanismul de control al accesului în cazul în care doriți să limitați numărul de mașini care sunt activate pentru a accesa memoria cache.

Apt-cacher trebuie instalat doar pe o singură mașină, cea pe care o decideți ar trebui să funcționeze ca cache a depozitului local. Apoi, restul computerelor din rețeaua dvs. trebuie să fie configurate pentru a solicita actualizări din cache și nu de la serverele oficiale.

Configurare server

Pentru a instala doar

sudo apt-get install apt-cacher

Acest pachet are dependențe cu apache, perl și wget, deci le va instala dacă nu îl aveți instalat anterior.

Odată instalat, este recomandat să reporniți Apache:

/etc/init.d/apache restart

În cele din urmă, tot ce trebuie să faceți este să ajustați parametrii impliciți ai scriptului. Am scris într-un terminal:

sudo gedit /etc/apt-cacher/apt-cacher.conf

În general, toate valorile implicite sunt bune, dar se recomandă ajustarea următoarelor trei:

admin_email = mimail @ myserver generate_reports = 1 expire_hours = 24

Al doilea element este o variabilă booleană care determină generarea de rapoarte (0 nu generează rapoarte, 1 le generează). Primul element, în schimb, este adresa de e-mail la care vor fi trimise rapoartele create. Al treilea și ultimul element determină numărul de ore pe care Apt ar trebui să le aștepte pentru a verifica actualizările disponibile pe serverele oficiale.

Dacă utilizați un proxy, nu uitați să adăugați următoarele elemente:

http_proxy = proxy.example.com: 8080 use_proxy = 1

Pentru a verifica dacă funcționează, puteți accesa memoria cache locală prin adresa URL http: // server_name / apt-cacher / și va apărea o pagină care prezintă configurația apt-cacher. Amintiți-vă că „server_name” trebuie înlocuit cu IP-ul mașinii pe care ați desemnat-o ca „server”, adică ca depozitar al cache-ului de pachete local.

Configurarea clienților

Acum tot ce trebuie să faceți este să modificați sources.list-ul clienților, astfel încât aceștia să treacă prin server. Dacă adresa IP a serverului este 123.123.123.123, trebuie să o adăugați la fiecare linie a surselor.list și, de asemenea, să aveți grijă ca toate să se refere la același server, altfel memoria cache nu va avea niciun efect.

sudo gedit /etc/apt/sources.list
Notă: Fii atent! În Debian și derivatele sale, „sources.list” este stocat în „/ etc / apt”. Cu toate acestea, în alte distribuții ar putea fi stocat într-o altă cale. În cazul în care nu puteți găsi fișierul, îl puteți găsi întotdeauna introducând „localizați sources.list” într-un terminal.

Odată ce fișierul este deschis, adresa IP a serverului nostru fiind 123.123.123.123, toate liniile ar trebui modificate folosind următoarele criterii:

# Original #deb http://ftp.us.debian.org/debian/ sid main contrib non-free # deb-src http://ftp.us.debian.org/debian/ sid main contrib non-free # Modificat deb http://123.123.123.123/apt-cacher/ftp.us.debian.org/debian/ sid main contrib non-free deb-src http://123.123.123.123/apt-cacher/ftp.us.debian. org / debian / sid main contrib non-free

După cum puteți vedea, trebuie să adăugați serverul IP + '/ apt-cacher /' la începutul adresei URL. Apoi merge restul liniei originale.

Statistici de trafic

Dacă ați adăugat elementul „generate_reports = 1” în fișierul „apt-cacher.conf”, apt-cacher va genera statistici de acces, pe care le puteți accesa cu adresa URL „/ apt-cacher / report”.

Dacă, din orice motiv, trebuie să generați statistici înainte de numărul de ore setat în „apt-cacher.conf”, rulați următoarea comandă:

/usr/share/apt-cacher/apt-cacher-report.pl

Lasă comentariul tău

Adresa ta de email nu va fi publicată. Câmpurile obligatorii sunt marcate cu *

*

*

  1. Responsabil pentru date: Miguel Ángel Gatón
  2. Scopul datelor: Control SPAM, gestionarea comentariilor.
  3. Legitimare: consimțământul dvs.
  4. Comunicarea datelor: datele nu vor fi comunicate terților decât prin obligație legală.
  5. Stocarea datelor: bază de date găzduită de Occentus Networks (UE)
  6. Drepturi: în orice moment vă puteți limita, recupera și șterge informațiile.

  1.   eduardo el a spus

    Salutări, contribuție excelentă, întrebarea mea este dacă știți de orice aplicație care vă permite să aveți un depozit centralizat pentru a aplica patch-uri, dar la distribuții diferite, adică să mențineți mai multe mașini actualizate în același timp, dar aveți distribuții diferite

  2.   Să folosim Linux el a spus

    Buna Eduardo! Adevărul este că îl văd foarte greu. Dacă descoperiți orice mod, nu încetați să mă anunțați.
    O îmbrățișare mare! Noroc! Paul.

  3.   gagică el a spus

    Folosesc marioneta pentru a gestiona de la distanță serverele pe care le gestionez.

  4.   Să folosim Linux el a spus

    Da. Vă mulțumesc foarte mult pentru informații. L-am corectat deja.
    Îmbrăţişare! Paul.

  5.   Genitrixonă el a spus

    Buna,

    tutorialul este foarte bun ... am un domeniu de aplicare .. în Debian Lenny sursa.lst este în calea / etc / apt /

    salutări

  6.   sepulvedamarcos el a spus

    întrebare….

    dacă am câteva mașini cu aceeași distribuție ... dar nu cu aceleași programe ... Cum știi să descarci din repo-urile oficiale .... scade totul ??? ...

  7.   Să folosim Linux el a spus

    Întrebarea dvs. este excelentă. Calculez că sistemul ar trebui să funcționeze la fel ca într-un Apt comun: dacă nu îl găsește în cache, îl descarcă din depozitele oficiale. În acest caz, una dintre mașinile „client” informează „serverul” că are nevoie de o actualizare conform listei de actualizări de pe „serverul” rețelei dvs. Pentru a instala acea actualizare calculez că va căuta mai întâi pachetul în memoria cache a serverului. Dacă nu îl găsește, îl descarcă din depozitele oficiale, îl salvează pe server și, de acolo, este instalat pe aparatul care l-a solicitat. Pachetul respectiv va fi disponibil în memoria cache „server”, astfel încât alte mașini din rețeaua dvs. să îl poată instala și de acolo.

    Vă rugăm să nu ezitați să scrieți dacă nu am fost suficient de clar.

    O imbratisare! Paul.

  8.   Mishudark el a spus

    Cred că există o EROARE ... pachetele nu sunt stocate în / etc / apt .... ele rămân de fapt în / var / cache / apt / archives

  9.   Să folosim Linux el a spus

    Adevărul este că nu știu.
    Sigur că există o modalitate de a o face. 🙁
    Dacă aflați, anunțați-mă și o voi adăuga.
    Noroc! Paul.

  10.   Alvaro el a spus

    Nimic cu IP-uri dinamice, nu?

  11.   Angrenaje el a spus

    Aparent, în distribuțiile mai actuale, trebuie să adăugați portul (3142 în mod implicit) la adresa URL a rețelei locale. Ar arăta astfel: http://mi_servidor:3142/apt-cacher

  12.   alfredo torrealba el a spus

    Am lubuntu 16.04 cine a făcut-o în acest sistem și dacă a funcționat pentru el? Și ceea ce am vrut să întreb este următoarele, dacă instalez acest server și celelalte mașini ale mele nu au aceleași programe atunci când fac o cerere pe mașinile mele client pentru instalarea unui program pe care îl am pe server, credeți că instalez direct de la serverul local sau solicitarea către serverul oficial de depozitare ¿?