Com mantenir actualitzades diverses màquines a el mateix temps

En situacions en què administres diverses màquines, Apt pot ser de molta ajuda ja que fa que el procés d'actualització i aplicació dels pegats de seguretat per a cada màquina sigui molt simple. El problema és que, amb el mètode tradicional, una vegada que surt una actualització, has de baixar una còpia de tots els nous paquets per a cadascuna de les màquines, el que implica un consum fenomenal del nostre ample de banda i de l'ample de banda de servidor oficial.Afortunadamente, hi ha un mètode que ens permet actualitzar una de les màquines i, des d'allà, actualitzar la resta de les màquines que componen la nostra xarxa. Aquest mètode, a més de reduir els costos i optimitzar l'ús del nostre ample de banda, evita la duplicació de paquets en les diferents màquines: totes instal·len els paquets utilitzant el nostre «servidor de memòria cau».


Quan estàs executant la mateixa distribució en diferents màquines (ja sigui a la feina, en laboratoris de computació, en «granges» de servidors, en clústers o fins i tot en la teva petita xarxa domèstica) pot resultar útil crear un repositori memòria cau en la teva xarxa perquè un cop descarregat un paquet des d'un repositori oficial totes les altres màquines el descarreguin des d'aquest repositori memòria cau que està emmagatzemat en una màquina de la teva xarxa a la qual anomenarem «servidor». D'aquesta manera, les actualitzacions descarregades des d'una màquina poden ser instal·lades en les altres sense necessitat de tornar a descarregar-les des dels repositoris oficials.

Primer vegem algunes solucions «no tradicionals» que NO recomano, però que segurament et vindran a la ment a l'hora de resoldre aquesta qüestió.

Compartir / etc / apt

Quan instal·les un paquet en una distro Debian (o els seus derivats), aquest s'emmagatzema localment al directori '/ etc / apt'. Quan un paquet és requerit, Apt primer busca en aquest directori per veure si hi ha una còpia local (o sigui, un cau), evitant així la seva descàrrega innecessària. Com a resultat d'això, a diversos de vostès. Segurament se'ls haurà ocorregut que una bona manera de resoldre el problema en qüestió podria ser triar un ordinador, que designaríamos com una mena de servidor, que s'actualitzaria utilitzant els repositoris oficials, i que compartiria el seu directori '/ etc / apt' amb la resta de les màquines de la xarxa. No obstant això, aquest mètode podria derivar en problemes vinculats a el bloqueig de l'arxiu 'sources.list'. En general, no és la solució més utilitzada ni la més convenient.

Moure els paquets

En comptes de compartir un directori '/ etc / apt' comuna, una altra alternativa podria ser que cada computar utilitzi el seu propi directori local de memòria cau però generar un script que s'ocupi de copiar els paquets d'una màquina a l'altra de manera que quedin totes actualitzades. Una eina per a dur endavant aquesta tasca pot ser 'apt-move', però sincerament no se les recomano perquè no és prou transparent per a l'usuari final. A més, pot significar una utilització completament innecessària d'espai en disc ja que hauran de copiar tots els paquets en cadascuna de les màquines.

Sistemes de memòria cau dedicats

La millor solució per a aquest problema és la utilització d'un sistema de memòria cau dedicat. Del que es tracta, en definitiva, és de crear una còpia dels servidors oficials en una de les màquines de la teva xarxa i després configurar a la resta de les màquines perquè, en comptes de buscar les actualitzacions des dels servidors oficials, ho facin utilitzant aquest cau (o còpia) local.

Hi ha una varietat de sistemes dissenyats per treballar amb Apt, incloent apt-cacher, apt-proxy, i apt-cached.

Aquí tractarem amb apt-cacher, que és el més senzill d'utilitzar.

Apt-cacher

Apt-cacher és ben diferent d'altres sistemes de memòria cau de repositoris ja que no és un programa independent ( «stand-alone») sinó que corre com un script CGI sota Apache. Això té diversos avantatges, com per exemple, convertir-lo en una eina petita i simple però a el mateix temps molt poderosa i, per tant, més robusta perquè no necessita d'un codi propi per al maneig de protocols, i és molt flexible perquè podés fer servir el mecanisme de control d'accés d'Apache en cas que vulguis limitar el nombre de màquines que es trobin habilitades per accedir a la memòria cau.

Apt-cacher només necessita ser instal·lat en una màquina, la que decideixis que ha de funcionar com el teu cau local de repositoris. Després, la resta de les computadores de la teva xarxa han de ser configurades perquè realitzin les comandes d'actualitzacions a la memòria cau i no als servidors oficials.

Configuració de servidor

Per instal·lar només cal

suo apt-get install apt-cacher

Aquest paquet té dependències amb apatxe, perl i wget, de manera que els instal·larà si no ho tens prèviament instal·lats.

Un cop instal·lat, és recomanable reiniciar Apache:

/etc/init.d/apache restart

Finalment, l'únic que cal fer és ajustar els paràmetres per defecte de l'script. Vaig escriure en un terminal:

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

En general, tots els valors per defecte estan bé, però és recomanable ajustar els tres següents:

admin_email = mimail @ miservidor generate_reports = 1 expire_hours = 24

El segon element és una variable de tipus booleana que determina la generació d'informes (0 no genera informes, 1 sí els genera). El primer element, en canvi, és l'adreça de correu electrònic a la qual s'enviaran els informes creats. El tercer i últim element determina la quantitat d'hores que ha d'esperar Apt per verificar si hi ha actualitzacions disponibles en els servidors oficials.

Si utilitzes un intermediari, no t'oblidis d'afegir els següents elements:

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

Per verificar que funcioni, pots accedir al teu cau local a través de la URL http: // nom_servidor / apt-cacher / i apareixerà una pàgina on es mostra la configuració d'apt-cacher. Recorda que "nom_servidor 'ha de ser reemplaçat per l'IP de la màquina que hagis designat com' servidor ', és a dir, com a dipositària de la memòria cau local de paquets.

configuració clients

Ara l'únic que cal fer és modificar els sources.list dels clients perquè passin a través del servidor. Si l'IP de servidor és 123.123.123.123, cal afegir-lo a cada línia de l'sources.list, ia més anar amb compte i que tots facin referència a el mateix servidor, sinó la memòria cau no tindrà efecte.

suo gedit /etc/apt/sources.list
Nota: Ull! A Debian i els seus derivats el 'sources.list' s'emmagatzema en '/ etc / apt'. No obstant això, en altres distribucions pot ser que s'emmagatzemi en una altra ruta. En cas que no trobis l'arxiu sempre pots trobar-ingressant 'locate sources.list' en un terminal.

Un cop obert l'arxiu, sent l'IP del nostre servidor 123.123.123.123, caldria modificar totes les línies usant el següent criteri:

# Originals #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 # Modificats 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

Com veus, cal afegir a l'començament de l'adreça URL l'IP de servidor + '/ apt-cacher /'. Després va la resta de la línia original.

Estadístiques de tràfic

Si vas agregar l'element 'generate_reports = 1' al fitxer 'apt-cacher.conf', apt-cacher generarà estadístiques d'accessos, a les que pots accedir amb el url '/ apt-cacher / report'.

Si, per algun motiu, necessiteu generar les estadístiques abans de les quantitat d'hores establertes a 'apt-cacher.conf', executa el la següent comanda:

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

Deixa el teu comentari

La seva adreça de correu electrònic no es publicarà. Els camps obligatoris estan marcats amb *

*

*

  1. Responsable de les dades: Miguel Ángel Gatón
  2. Finalitat de les dades: Controlar l'SPAM, gestió de comentaris.
  3. Legitimació: El teu consentiment
  4. Comunicació de les dades: No es comunicaran les dades a tercers excepte per obligació legal.
  5. Emmagatzematge de les dades: Base de dades allotjada en Occentus Networks (UE)
  6. Drets: En qualsevol moment pots limitar, recuperar i esborrar la teva informació.

  1.   eduardo va dir

    Salutacions, excel·lent aportació, la meva pregunta és si coneixen alguna aplicació que permeti tenir un repositori centralitzat per aplicar pegats però a diferents distribucions, és a dir mantenir actualitzades diverses màquines a el mateix temps però que tenen diferents distribucions

  2.   Fem servir Linux va dir

    Hola Eduard! La veritat que ho veig molt difícil. Si descobriu alguna manera no deixis d'avisar-me.
    Un gran abraçada! Salutacions! Pau.

  3.   chiche va dir

    Jo ús puppet per administrar remotament els servidors que administro.

  4.   Fem servir Linux va dir

    Sí. Moltes gràcies x la dada. Ja ho vaig corregir.
    Abraçada! Pau.

  5.   Geniutrixone va dir

    Hola,

    està super bo el tutorial ... tinc un abast .. a Debian Lenny el source.lst aquesta a la ruta / etc / apt /

    salutacions

  6.   Sepulvedamarcs va dir

    pregunta ....

    si tinc un parell de màquines amb la mateixa distro ... però no amb els mateixos programes .... com sap que baixar des dels repos oficials .... els baixa tot ??? ...

  7.   Fem servir Linux va dir

    La teva pregunta és excel·lent. Jo calculo que el sistema ha de funcionar com en un Apt comú: si no el troba en la memòria cau, el baixa dels repositoris oficials. En aquest cas, una de les màquines «client» informa el «servidor» que necessita una actualització segons el llistat d'actualitzacions que consta a l' «servidor» de la teva xarxa. Per instal·lar aquesta actualització jo calculo que primer buscarà el paquet en la memòria cau de servidor. Si no el troba, el baixa des dels repositoris oficials, el guarda al servidor i, des d'allà, s'instal·la a la màquina que ho requeria. Aquest paquet quedarà disponible al cau de l ' «servidor» perquè altres màquines de la teva xarxa puguin instal·lar des d'allà també.

    Si us plau no dubtis a escriure si no vaig ser prou clar.

    Un Abraçada! Pau.

  8.   Mishudark va dir

    Crec q hi ha un ERROR ... els paquets no s'emmagatzemen a / etc / apt .... realment es queden a / var / cache / apt / archives

  9.   Fem servir Linux va dir

    La veritat que no sé.
    Segur hi ha una forma de fer-ho. 🙁
    Si la esbrines, avisame i el agrego.
    Salutacions! Pau.

  10.   Alvaro va dir

    Amb les ip s dinàmiques res, veritat?

  11.   Marce va dir

    Es veu que en distros més actuals cal afegir el port (3142 per defecte) a l'URL de la xarxa local. Quedaria així: http://mi_servidor:3142/apt-cacher

  12.   Alfredo Torrealba va dir

    tinc Lubuntu 16.04 qui ho ha fet sota aquest sistema i si li ha funcionat ?? i el que volia preguntar és el següent si instal·lo aquest servidor i els meus altres maquines no tenen els mateixos programes a el fer una petició en els meus maquines clients la instalacion d'un programa que tinc al servidor creus que l'instal directament des del servidor local o fa la petició a servidor oficial dels repositorios¿? ¿