I-setup ang Lokal nga Repositories nga adunay apt-mirror sa Ubuntu ug Debian Systems


Kung karon ang trapiko ug kaswal nga katulin sa internet gisukod sa mga tin-edyer sa Giga sa usa ka pagkidlap sa mata bisan sa ordinaryong mga kliyente sa Internet, unsa ang katuyoan sa pagpahimutang sa usa ka lokal nga repository cache sa LAN nga mahimo nimong ipangutana?

Usa sa mga hinungdan mao ang pagpakunhod sa bandwidth sa Internet ug taas nga tulin sa pagbira sa mga pakete gikan sa lokal nga cache. Apan, usab, usa pa ka hinungdan nga hinungdan kinahanglan ang pagkapribado. Hunahunaa nga ang mga kliyente gikan sa imong organisasyon gipugngan sa Internet, apan ang ilang mga kahon sa Linux kinahanglan nga regular nga pag-update sa sistema sa software ug seguridad o kinahanglan lang ang bag-ong mga pakete sa software. Sa dugang nga hulagway, usa ka server nga nagdagan sa usa ka pribado nga network, naglangkob ug nag-alagad sa sekreto nga sensitibo nga impormasyon alang lamang sa usa ka gidid-an nga bahin sa network, ug kinahanglan dili gayud ma-expose sa publikong Internet.

Pipila lang kini nga mga rason nganong kinahanglan ka nga magtukod og usa ka lokal nga repository nga salamin sa imong LAN, magdelegar og edge server alang niini nga trabaho ug i-configure ang mga internal nga kliyente aron makuha ang software gikan sa cache nga salamin niini.

Ang Ubuntu naghatag og apt-mirror nga pakete aron i-synchronize ang lokal nga cache sa opisyal nga mga repositoryo sa Ubuntu, salamin nga mahimong ma-configure pinaagi sa HTTP o FTP server aron ipaambit ang mga pakete sa software nga adunay mga kliyente sa lokal nga sistema.

Para sa usa ka kompleto nga mirror cache ang imong server nagkinahanglan ug labing menos 120G nga libreng luna nga gitagana alang sa lokal nga mga repositoryo.

  1. Min 120G nga libre nga luna
  2. Proftpd server gi-install ug gi-configure sa anonymous mode.

Lakang 1: I-configure ang Server

1. Ang unang butang nga gusto nimong buhaton mao ang pag-ila sa pinakaduol ug pinakapaspas nga mga salamin sa Ubuntu duol sa imong nahimutangan pinaagi sa pagbisita sa panid sa Ubuntu Archive Mirror ug pilia ang imong nasud.

Kung ang imong nasud naghatag og daghang mga salamin kinahanglan nimo nga mailhan ang adres sa salamin ug maghimo pipila ka mga pagsulay base sa mga resulta sa ping o traceroute.

2. Ang sunod nga lakang mao ang pag-instalar sa gikinahanglan nga software para sa pag-set up sa lokal nga mirror repository. I-install ang apt-mirror ug proftpd nga mga pakete ug i-configure ang proftpd isip standalone system daemon.

$ sudo apt-get install apt-mirror proftpd-basic

3. Karon na ang panahon sa pag-configure sa apt-mirror server. Ablihi ug i-edit ang /etc/apt/mirror.list nga file pinaagi sa pagdugang sa imong labing duol nga mga lokasyon (Lakang 1) – opsyonal, kung ang default nga mga salamin igo nga paspas o wala ka sa pagdali - ug pilia ang imong agianan sa sistema diin kinahanglan i-download ang mga pakete. Pinaagi sa default apt-mirror naggamit /var/spool/apt-mirror lokasyon para sa lokal nga cache apan niining tutorial atong gamiton ang change system path ug point set base_path direktiba sa /opt/apt-mirror lokasyon.

$ sudo nano /etc/apt/mirror.list

Mahimo usab nimo nga i-uncomment o idugang ang ubang lista sa gigikanan sa dili pa ang limpyo nga direktiba - lakip ang Debian nga gigikanan - depende sa kung unsa nga bersyon sa Ubuntu ang gigamit sa imong mga kliyente. Mahimo nimong idugang ang mga gigikanan gikan sa 12.04, kung gusto nimo apan hinumdomi nga ang pagdugang daghang mga gigikanan nanginahanglan daghang libre nga wanang.

Para sa Debian nga mga lista sa tinubdan bisitaha ang Debian Sources List Generator.

4. Ang kinahanglan nimong buhaton karon mao, paghimo lang og path directory ug padagana ang apt-mirror command aron i-synchronize ang opisyal nga Ubuntu nga repository sa among lokal nga salamin.

$ sudo mkdir -p /opt/apt-mirror
$ sudo apt-mirror

Sama sa imong makita apt-mirror nagpadayon sa pag-indeks ug pag-download sa mga archive nga nagpakita sa kinatibuk-ang gidaghanon sa na-download nga mga pakete ug ang ilang gidak-on. Sama sa atong mahanduraw ang 110-120 GB igo nga gidak-on aron mogahin og panahon sa pag-download.

Mahimo nimong ipadagan ang ls command aron makita ang sulud sa direktoryo.

Kung nahuman na ang una nga pag-download, ang umaabot nga mga pag-download gamay ra.

5. Samtang ang apt-mirror nag-download sa mga pakete, mahimo nimong i-configure ang imong Proftpd server. Ang unang butang nga kinahanglan nimong buhaton mao ang paghimo og anonymous nga configuration file alang sa proftpd pinaagi sa pagpadagan sa mosunod nga sugo.

$ sudo nano /etc/proftpd/conf.d/anonymous.conf

Dayon idugang ang mosunod nga sulod sa anonymous.conf file ug i-restart ang proftd service.

<Anonymous ~ftp>
   User                    ftp
   Group                nogroup
   UserAlias         anonymous ftp
   RequireValidShell        off
#   MaxClients                   10
   <Directory *>
     <Limit WRITE>
       DenyAll
     </Limit>
   </Directory>
 </Anonymous>

6. Ang sunod nga lakang mao ang pagsumpay sa apt-mirror nga dalan ngadto sa proftpd path pinaagi sa pagpadagan sa bind mount pinaagi sa pag-isyu sa sugo.

$ sudo mount --bind /opt/apt-mirror/mirror/archive.ubuntu.com/  /srv/ftp/

Aron mapamatud-an kini pagdagan mount command nga walay parameter o kapilian.

$ mount

7. Katapusan nga lakang mao ang pagsiguro nga ang Proftpd server awtomatik nga gisugdan human sa sistema reboot ug mirror-cache nga direktoryo kay awtomatiko usab nga na-mount sa ftp server dalan. Aron awtomatik nga makapahimo sa proftpd ipadagan ang mosunod nga sugo.

$ sudo update-rc.d proftpd enable

Aron awtomatikong i-mount ang apt-mirror cache sa proftpd abli ug i-edit ang /etc/rc.local file.

$ sudo nano /etc/rc.local

Idugang ang mosunod nga linya sa wala pa ang exit 0 nga direktiba. Gamita usab ang 5 segundos nga paglangan sa dili pa mosulay sa pag-mount.

sleep 5
sudo mount --bind  /opt/apt-mirror/mirror/archive.ubuntu.com/ /srv/ftp/

Kung imong kuhaon ang mga pakete gikan sa Debian nga mga repository padagana ang mosunod nga mga sugo ug siguroha nga ang angay nga mga setting para sa ibabaw sa rc.local nga payl gipagana.

$ sudo mkdir /srv/ftp/debian
$ sudo mount --bind /opt/apt-mirror/mirror/ftp.us.debian.org/debian/ /srv/ftp/debian/

8. Para sa usa ka adlaw-adlaw nga apt-mirror nga pag-synchronize mahimo ka usab nga maghimo ug usa ka sistema sa iskedyul nga trabaho nga ipadagan sa crontab command, pilia ang imong gusto nga editor dayon idugang ang mosunod nga linya nga syntax.

$ sudo crontab –e

Sa kataposang linya idugang ang mosunod nga linya.

0  2  *  *  *  /usr/bin/apt-mirror >> /opt/apt-mirror/mirror/archive.ubuntu.com/ubuntu/apt-mirror.log

Karon kada adlaw sa 2 AM ang imong system repository cache mag-synchronize sa Ubuntu nga opisyal nga mga salamin ug maghimo og log file.

Lakang 2: I-configure ang mga kliyente

9. Aron ma-configure ang lokal nga Ubuntu nga mga kliyente, i-edit ang /etc/apt/source.list sa mga kompyuter sa kliyente aron itudlo ang IP address o hostname sa apt-mirror server – ilisan ang http protocol sa ftp, dayon i-update ang sistema.

deb ftp://192.168.1.13/ubuntu trusty universe
deb ftp://192.168.1.13/ubuntu trusty main restricted
deb ftp://192.168.1.13/ubuntu trusty-updates main restricted
## Ad so on….

10. Aron matan-aw ang mga repositoryo mahimo nimong ablihan ang usa ka browser ug itudlo ang imong server IP address sa domain name gamit ang FTP protocol.

Ang sama nga sistema magamit usab sa Debian mga kliyente ug server, ang gikinahanglan lamang nga kausaban mao ang debian mirror ug listahan sa tinubdan.

Usab kung mag-install ka ug bag-ong Ubuntu o Debian nga sistema, ihatag ang imong lokal nga salamin sa mano-mano nga whit ftp protocol kung mangutana ang installer kung unsang repository ang gamiton.

Ang maayo nga butang bahin sa pagbaton sa imong kaugalingon nga lokal nga mga repositoryo sa salamin mao nga kanunay ka nga naa sa karon ug ang imong lokal nga mga kliyente dili kinahanglan nga magkonektar sa Internet aron ma-install ang mga update o software.