Nieuws:

Welkom, Gast. Alsjeblieft inloggen of registreren.
Heb je de activerings-mail niet ontvangen?

Auteur Topic: Meerdere computers sneller updaten  (gelezen 599 keer)

Offline Bloom

  • Lid
Meerdere computers sneller updaten
« Gepost op: 2011/10/07, 23:19:22 »
Als je meerdere computers met Debian of Ubuntu (of afgeleiden) hebt, halen die allemaal zelf alle pakketten van het internet bij hun updateproces. Dat is eigenlijk zinloos als meerdere van die computers dezelfde pakketten nodig hebben. Je kunt het updateproces dan versnellen door één systeem als proxy te bombarderen. Je kunt één proxy gebruiken voor alle Debian/Ubuntu's en afgeleiden. Het proxysysteem heeft wel ca. 10 GB schijfruimte nodig om alle pakketten op te bewaren.

Er bestaan verschillende updateproxysystemen. Ik heb gekozen voor eentje die geen wijzigingen aan de softwarebronlijsten van de clientcomputers vereist en die volgens mijn eigen ervaringen prima werkt.

1. DE PROXYHOST

Installeer als root het pakket apt-cacher-ng:
aptitude -y install apt-cacher-ng
Je hoeft niets aan de configuratie van apt-cacher-ng (staat in /etc/apt-cacher-ng/acng.conf) te veranderen, die staat al helemaal goed.

2. DE NETWERKCLIENTS

Creeër als root op elke pc (en ook op de proxyhost zelf) het bestand /etc/apt/apt.conf.d/02proxy
en zet daarin dit
Acquire::http { Proxy "http://ip_adres_proxyhost:3142"; };
en vervang natuurlijk "ip_adres_proxyhost" door het juiste ip-adres van de proxyhost.
Als je meerdere machines met min of meer dezelfde Ubuntu (of Debian) moet updaten, laat dan de eerste zijn werk doen. Wacht todat hij klaar is en start dan alle andere. Die zullen nu zowat al hun pakketten van de proxyhost halen in plaats van vanaf het internet.
Je kunt rapporten over het apt-cacher-proces opvragen door met een browser te surfen naar: http://ip_adres_proxyhost:3142/acng-report.html

Dat is alles!

Offline Bloom

  • Lid
Re: Meerdere computers sneller updaten
« Reactie #1 Gepost op: 2011/10/10, 15:51:05 »
Als je met een notebook werkt (of met een pc die nogal eens van netwerk wisselt), dan is het niet handig om een vaste proxy te gebruiken want dan kun je niet meer updaten als je in een ander netwerk zit.

In dat geval kun je dit script opnemen in /etc/network/if-up.d/ van iedere netwerkclient (notebook of pc) en dat zal de proxyconfiguratie aanmaken als je in het netwerk van de apt-cacher-ng-host zit en die proxyconfiguratie verwijderen als dat niet zo is.
Vergeet niet het script uitvoerbaar te maken:
chmod +x /etc/network/if-up.d/autoproxyen de inhoud:
#!/bin/sh
# als we in het juiste netwerk zijn, use apt-cacher-ng proxy
if [[ `arp -an ip_adres_router_van_juiste_netwerk` =~ ether ]]; then
  echo 'Acquire::http { Proxy "http://ip_adres_apt-cacher-ng-host:3142"; };' >/etc/apt/apt.conf.d/02proxy;
else
  rm -f /etc/apt/apt.conf.d/02proxy;
fi

Offline markba

  • Lid
    • http://markbaaijens.nl/
Re: Meerdere computers sneller updaten
« Reactie #2 Gepost op: 2011/10/10, 16:27:47 »
Ik gebruik hier squid-deb-proxy voor:
http://www.ubuntugeek.com/squid-deb-proxy-squid-proxy-configuration-optimized-for-deb-packages.html

Op de server (mag ook een desktop-installatie zijn) installeer je squid-deb-proxy, en op iedere client squid-deb-proxy-client en klaar is kees. De client ziet automatisch of de proxy aanwezig is (via auto-discovery, avahi) en schakelt dus volautomatisch over als je van netwerk wisselt. Dat is dan tevens het voordeel boven apt-cache (naast het feit dat je geen post-installatie hoeft te doen op de clients).

Het enige waar je aan moet denken is om caching van ppa's aan te zetten op server.

De werking is ongeveer hetzelfde als van apt-cache, dus er is nog een weg naar Rome...  ;)