Fórum Ubuntu CZ/SK
Ostatní => Ubuntu Server => Téma založeno: 1x23 12 Února 2011, 13:08:08
-
ahoj, na root vysel clanek o vlastnim mirroru debianu nebo ubuntu. Zkousim to uz nejakou dobu, ale nedari se mi nic na server stahnout, Krcmar tam pise ze zabira jedna tak kolem 40giga. Tak bych se chtel zeptat jak lze stahnout data na server, tak aby se pak dalo lokalne jenom tahat, ne az se stroje zeptaj na jednotlive baliky. Zkousel jsem pisat na root do komentaru ale bez odpovedi, tak se ptam tady, jestli nekdo nahodou nevi jak na to, jak udelat vlastni mirror debianu a ubuntu. Hledam spise neco pres terminal nez pres klikani. Diky za nakopnuti spravnym smerem:)
-
wgetem rekurzivně celý repo? :D
-
apt-mirror?
-
Četl jsem článek na rootu Vlastní mirror repositářů pro Debian a Ubuntu (http://www.root.cz/clanky/vlastni-mirror-repositaru-pro-debian-a-ubuntu/). Četli jsme oba to samé?
Stručně shrnuto - pro menší počet PC je kompletní lokální zrcadlo pracné na údržbu a neefektivní z hlediska využití stažených balíčků.
Efektivní řešení je kešovací server. Balíček je stažen až v okamžiku přímého požadavku, další uživatele obslouží keš rychlostí lokální sítě. Keš se rozrůstá o opravdu používané balíčky bez závislosti na repozitářích a nutnosti přednastavit používané servery. Je tedy opravdu šetřena linka i servery - co potřebuji stahuji jednou, používám kolikrát je třeba.
Hádám, že nemáte ambice provozovat zrcadlo například pro celou ČR - aby bylo nutné zprovozňovat kompletní zrcadlo. Zkuste nejprve ono kešovací řešení. Nebo jsem váš dotaz špatně pochopil a nejde vám nastavit právě ono kešování poptávaných balíků - z vašeho dotazu tak aby se pak dalo lokalne jenom tahat, ne az se stroje zeptaj na jednotlive baliky
mi připadá, že máte zájem zrcadlit vše.
-
ano cetl jsem to same, snazim se kesovat jen ty baliky, ktere jsou poptavane. Index baliku udelam, ale nic se mi na server nestahne. A na stroji kde vim ze je treba stary balik sudo tak nesel stahnout. Nemam v planu zrcadlo pro celou republiku, ale jestli by bylo jednodussi udelat kompletni zrcadlo debianu a ubuntu tak sem stim:-D
-
Zkusil jsem toto:
- Na PC 1 spustím $ sudo apt-get install apt-cacher-ng
- Na PC1 i PC 2 vytvořím soubor /etc/apt/apt.conf.d/01proxy
s obsahem Acquire::http { Proxy "http://192.168.1.2:3142"; };
- v konzoli PC2 jsem zadal a počkal až dojede příkaz sudo apt-get upgrade
- v konzoli PC1 jsem zadal sudo apt-get upgrade
- v prohlížeči jsem zadal stránku 192.168.1.2:3142/acng-report.html a tam jsem klikl na tlačítko Count Data
Výsledek je v příloze.
[attachment deleted by admin]
-
Kešované věci jsem nalezl ve /var/cache/apt-cacher-ng na PC1. Při instalaci jsem neprováděl žádná nestandardní nastavení, zásahy ani úpravy. Vypadá to, že mi to funguje. Jediné, co u mne nešlo nastavit byla proxy v programu Synaptic - zamrzl vždy při pokusu uložit změny.
Pokusné železo: Asus EEE 901 Netbook a HP Compaq nc6120 notebook - oba stroje běží na Ubuntu 10.10, Gnome -
Pro porovnání oproti minulému screenshotu - po instalaci programu Avidemux nejprve na PC2 a pak na PC1 - viz příloha. Jak je vidět, dle logu keš funguje, první stahování bylo z internetu, při instalaci na druhém stroji bylo "stažení" balíčků takřka okamžité.
[attachment deleted by admin]
-
Vypnul jsem Cache server - tedy PC1 - a zkusil na PC 2 instalaci. Samozřejmě, že nefungovala. Nejen pro tento případ jsem se pokusil upravit skript (http://so.piskvor.org/3503/apt-proxy), který je v komentáři (http://www.root.cz/clanky/vlastni-mirror-repositaru-pro-debian-a-ubuntu/nazory/375057/) pod výše odkázaným článkem na Root.cz. Ve skriptu jsem nahradil case "$DHCP4_BROADCAST_ADDRESS"... konstrukcí níže uvedenou:
if arp 192.168.1.1 | grep xx:xx:xx:xx:xx:xx > /dev/null; then
if ping -c 1 192.168.1.2 ; then
case "$DHCP4_IP_ADDRESS" in
192.168.1.5)
PROXY='Acquire::http { Proxy "http://192.168.1.2:3142"; };';
;;
*)
PROXY=""
;;
esac
fi
fi
kde xx:xx:xx:xx:xx:xx je MAC adresa routeru, který přiděluje IP adresy.
Pokud sedí MAC adresa na IP 192.168.1.1, ping na cache server PC 1 je úspěšný a PC 2 je přidělena správná IP - použije se proxy server. V ostatních případech není proxy nastavena.
Má úprava se zatím jeví fungující. Brání nepravděpodobné leč možné kolizi, kdy bych na cizí LAN dostal IP z rodiny, ze které se IP "losují" i u mne doma. V takovém případě by mi aktualizace a instalace nefungovaly - a já bych marně hledal, čím to je (asi bych si na Proxy nevzpomněl). Taktéž, pokud je z nějakého důvodu cache server nedostupný, proxy nebude použita. Jelikož mám pro své PC přidělenou konkrétní adresu, kontroluji právě tuto IP a ne rodinu adres.
Přesto se chci zkušenějších zeptat - není v té mé úvaze a úpravě bota či nedostatek, který by mohl škodit? Předem díky za odezvu.
-
dobre ty ;D