divendres, 12 de desembre del 2014

Linkat Server 14.04 - Crea un servidor de repositoris local amb apt-mirror

Sovint tenim que actuaitzar, instal.lar o cercar programari des dels repositoris oficials d'Ubuntu i això requereix connectar a internet i aplicar aquestes accions. Quan es tracta d'una màquina client, no te perquè haver cap problema, però quan tenim més de 5 i totes fent la mateixa acció l'ample de banda es redueix i relentitza la connexió als que simplement naveguen per internet.
Això es pot sol.lucionar si tenim una màquina servidor com és el càs del Linkat Server 14.04.
NOTA: AQUESTES INSTRUCCIONS NOMÉS FUNCIONEN PER REPOSITORIS UBUNTU O LINKAT BASAT EN UBUNTU.

Com es habitual, obrim un terminal per instal.lar el nou servei i també el servei web ( si estem en un LInkat Server 14.04, no caldria instal.lar apache2):
sudo apt-get install apt-mirror apache2
Una vegada instal.lat el configurarem:
sudo gedit /etc/apt/mirror.lst

I l'editem per a que quedi així:
############# config ##################
#
# set base_path    /var/spool/apt-mirror
#
# 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  <running host architecture>
# set postmirror_script $var_path/postmirror.sh
# set run_postmirror 0
set nthreads     20
set _tilde 0
#
############# end config ##############

deb http://archive.ubuntu.com/ubuntu trusty main restricted universe multiverse
deb http://archive.ubuntu.com/ubuntu trusty-security main restricted universe multiverse
deb http://archive.ubuntu.com/ubuntu trusty-updates main restricted universe multiverse
#deb http://archive.ubuntu.com/ubuntu trusty-proposed main restricted universe multiverse
#deb http://archive.ubuntu.com/ubuntu trusty-backports main restricted universe multiverse

deb-src http://archive.ubuntu.com/ubuntu trusty main restricted universe multiverse
deb-src http://archive.ubuntu.com/ubuntu trusty-security main restricted universe multiverse
deb-src http://archive.ubuntu.com/ubuntu trusty-updates main restricted universe multiverse
#deb-src http://archive.ubuntu.com/ubuntu trusty-proposed main restricted universe multiverse
#deb-src http://archive.ubuntu.com/ubuntu trusty-backports main restricted universe multiverse

clean http://archive.ubuntu.com/ubuntu
 D'aquesta manera descarregarà tant els repositoris per 12.04 i 14.04.
Ara programarem que cada dia, a les 4:00 s'actualitzen els paquets i es descarreguen editant la tasca programada:
sudo gedit /etc/cron.d/apt-mirror

I comprovem que quedi així:
#
# Regular cron jobs for the apt-mirror package
#
0 4     * * *   apt-mirror      /usr/bin/apt-mirror > /var/spool/apt-mirror/var/cron.log

També podem adelantar aquesta tasca invocant l'ordre:
sudo apt-mirror
però la descàrrega pot ser molt pessada i és preferible que es faci tota sola a l'hora programada.

Per últim enllaçarem la carpeta del repositori al nostre servei web:
sudo ln -s /var/spool/apt-mirror/mirror/archive.ubuntu.com/ubuntu /var/www/html/ubuntu 

Ara, només cal esperar a que es descarreguen tots els repositoris marcats. Això pel que fa al servidor, ara als clients tenim que canviar la ubicació dels repositoris, només cal editar un fitxer:

 sudo gedit /etc/apt/sources.list
I canviem les adreces web per la IP del servidor.
Així quedaria per defecte:
#deb cdrom:[Ubuntu 14.04.1 LTS _Trusty Tahr_ - Release i386 (20140722.2)]/ trusty main restricted

# See http://help.ubuntu.com/community/UpgradeNotes for how to upgrade to
# newer versions of the distribution.
deb http://es.archive.ubuntu.com/ubuntu/ trusty main restricted
deb-src http://es.archive.ubuntu.com/ubuntu/ trusty main restricted

## Major bug fix updates produced after the final release of the
## distribution.
deb http://es.archive.ubuntu.com/ubuntu/ trusty-updates main restricted
deb-src http://es.archive.ubuntu.com/ubuntu/ trusty-updates main restricted
.
.
.


I així és com és com hauria de quedar:
#deb cdrom:[Ubuntu 14.04.1 LTS _Trusty Tahr_ - Release i386 (20140722.2)]/ trusty main restricted

# See http://help.ubuntu.com/community/UpgradeNotes for how to upgrade to
# newer versions of the distribution.
deb http://192.168.0.240/ trusty main restricted
deb-src http://192.168.0.240 trusty main restricted

## Major bug fix updates produced after the final release of the
## distribution.
deb http://192.168.0.240/ trusty-updates main restricted
deb-src http://192.168.0.240/ trusty-updates main restricted
 .
.
.

Tanquem el fitxer desant els canvis i  podem comprovar que s'acuttalitzen els repositoris amb:
sudo apt-get update 

i veurem que s'actualitza a gran velocitat però que al final dona una errada que podrem ignorar. Ara ja podrem actualitzar o instal.lar des dels repositoris oficials només connectant-nos a un so ordinador i no a internet guanyant així un gran ample de banda.