Saját csomagtároló szerver
Nem is olyan régen azt ígértem nektek, hogy megmutogatok néhány egész hasznos, akár otthon is használható szerver funkciót. Hát lássuk!
Gondolom találkoztunk már lassú internet szolgáltatással, van akinek otthon is az van, de szeretnénk optimalizáltan használni a Linux rendszerüket. Hogy is kéne ezt? Létezik egy apt-mirror nevű program. Remekül használható mind Debian, mind Ubuntu alatt.
A program a tárolókban megtalálható. Az apt-get install apt-mirror paranccsal telepíthető, előtte érdemes azért frissíteni a tárolókat: apt-get update. Miután felkerült a program a gépünkre a /etc/apt/mirror.list szerkesztésével megadhatjuk, hogy mely repokat szeretnénk letölteni. Valami ilyesmit kell látnunk:
############# config ##################
#
#set base_path /var/spool/apt-mirror
#
# if you change the base path you must create the directories below with write privlages
#
# set mirror_path $base_path/mirror
# set skel_path $base_path/skel
# set var_path $base_path/var
# set cleanscript $var_path/clean.sh
# set defaultarch
set nthreads 20
set _tilde 0
#
############# end config ##############
deb http://ftp.bme.hu/OS/Linux/dist/debian lenny main contrib
deb-src http://ftp.bme.hu/OS/Linux/dist/debian lenny main contrib
deb http://security.debian.org/ lenny/updates main contrib
deb-src http://security.debian.org/ lenny/updates main contrib
clean http://security.debian.org/
clean http://ftp.bme.hu/OS/Linux/dist/debian
Én Debian Lenny-n használom, a security és a bme csomagjai vannak letöltve. Ide megadható az apt mappában található sources.lst fájlban felvett csomagtárolók vagyis ahonnan letöltitek a számotokra szükséges csomagokat.
Megadhatunk más mappát mint ahova letölti nekünk a dolgokat mégpedig a set base_path szerkesztésével. A mappát előtte perze meg kell csinálnunk (mkdir ~/x.y). Miután beállítottunk mindent amit szeretnénk tölteni futtatjuk a programot a következő képpen:
su – apt-mirror
apt-mirror
Elindul a letöltés, az indexelés. Nekem 40 GB volt a két repo, egy éjszaka alatt lejött, ti is inkább éjjel futtassátok.
Ha megvagyunk a letöltéssel telepítsük fel a lighttpd nevű apró webszerver programot. Nagy hasznát vesszük mivel,ennek használatával fogjuk elérni a szervert. Persze ha lokálisan - azaz a saját gépeden ahova letöltötted a csomagokat - akarod használni akkor a sources.lst-ben csak ennyit kell felvenned:
deb file:/home/apt-mirror/mirror/ftp.bme.hu/OS/Linux/dist/debian/ lenny main contrib
deb-src file:/home/apt-mirror/mirror/ftp.bme.hu/OS/Linux/dist/debian/ lenny main contrib
deb file:/home/apt-mirror/mirror/security.debian.org/ lenny/updates main contrib
deb-src file:/home/apt-mirror/mirror/security.debian.org/ lenny/updates main contrib
Értelem szerűen a file:/ után a saját elérési utad kerül.
Viszatérve, létre kell hoznunk a /var/www mappában egy-egy symlinket, függve a letöltött repok számától.
ln -s /home/apt-mirror/mirror/ftp.bme.hu/OS/Linux/dist/debian/ /var/www/bme
ln -s //home/apt-mirror/mirror/security.debian.org/ /var/www/security
Lényegében ugyan az kell legyen az elérés mint a sources.lst-ben a repo elérése.
Másik Debian kliensről így fogom elérni:
#/etc/apt/sources.lst
deb http://10.0.1.2/bme lenny main
deb-src http://10.0.1.2/bme lenny main
deb http://10.0.1.2/security lenny/updates main contrib
deb-src http://10.0.1.2/security lenny/updates main contrib
Remélem hasznosnak találják páran ezt a leírást és valamelyest megkönnyíti az éltetüket.