כאשר התעבורה ומהירויות האינטרנט הפורשות נמדדות בעשרות גיגה בליץ של עין אפילו עבור לקוחות אינטרנט רגילים, תהייתם עשויה לשאול מהו הצורך בהגדרת מאגר מטמון מקומי ברשת ה-LAN שלך?

אחד הסיבות היא להפחתת רוחב הפס של האינטרנט והמהירות הגבוהה בשליפת חבילות ממטמון מקומי. אך, גם סיבה ראשית נוספת צריכה להיות פרטיות. נניח שלקוחות מהארגון שלך מוגבלים באינטרנט, אך תיבות ה-Linux שלהם זקוקות לעדכוני מערכת רגילים בתוכנה ובאבטחה או פשוט זקוקות לחבילות תוכנה חדשות. כדי להמשיך לדמיין, שרת הפועל ברשת פרטית, מכיל ומשרת מידע רגיש סודי רק לקטע רשת מוגבל, ולעולם לא צריך להיחשף לרשת האינטרנט הציבורית.
אלה הן רק כמה מהסיבות למה עליך לבנות מראה מקומי ברשת ה-LAN שלך, להקצות שרת קצה לעבודה זו ולהגדיר ללקוחות הפנימיים לשלוף תוכנה ממראה המטמון שלו.
Ubuntu מספקת את חבילת apt-mirror לסנכרון מטמון מקומי עם מאגרי נתונים רשמיים של Ubuntu, מראה שניתן להגדיר דרך שרת HTTP או FTP לשתף את חבילות התוכנה שלו עם לקוחות המערכת המקומיים.
עבור מראה מלא עליך להקצות לשרת שלך לפחות 120G שטח פנוי שמור עבור מאגרי נתונים מקומיים.
דרישות
- מינימום 120G שטח פנוי
- שרת Proftpd מותקן ומוגדר במצב אנונימי.
שלב 1: הגדרת השרת
1. הדבר הראשון שעשוי לרצות לעשות הוא לזהות את המראות של Ubuntu הקרובים והמהירים ביותר למיקומך על ידי ביקור בדף Ubuntu Archive Mirror ובחירת המדינה שלך.

אם המדינה שלך מספקת יותר מראות, עליך לזהות את כתובת המראה ולבצע מבחנים בהתבסס על תוצאות ping או traceroute.

2. השלב הבא הוא להתקין את התוכנה הנדרשת להקמת מאגר מראות מקומי. התקן את חבילות apt-mirror ו־proftpd והגדר את proftpd כשירות מערכת עצמאית.
$ sudo apt-get install apt-mirror proftpd-basic


3. עכשיו הגיע הזמן להגדיר את שרת apt-mirror. פתח וערוך את קובץ /etc/apt/mirror.list על ידי הוספת המיקומים הקרובים ביותר שלך (שלב 1) – אופציונלי, אם המראות הברירת מחדל מהירים מספיק או אם אין לך דחיפות – ובחירת נתיב המערכת שבו יש להוריד את החבילות. כברירת מחדל, apt-mirror משתמש בנתיב /var/spool/apt-mirror למטמון מקומי אך במדריך זה אנו הולכים להשתמש בשינוי נתיב המערכת ולהפנות את ההוראה set base_path לנתיב /opt/apt-mirror.
$ sudo nano /etc/apt/mirror.list

כמו כן, תוכל לבטל את ההערה או להוסיף רשימת מקורות אחרות לפני ההוראה לניקוי – כולל מקורות Debian – בהתאם לגרסאות Ubuntu שהלקוחות שלך משתמשים בהן. תוכל להוסיף מקורות מ־12.04, אם תרצה אך עליך לקחת בחשבון שהוספת מקורות נוספים מחייבת יותר מקום פנוי.
דביאן רשימות מקור בקרוא באתר ויקי דביאן או במחולל רשימות מקורות דביאן.
4. כל מה שצריך לעשות כעת הוא, פשוט ליצור תיקיית נתיב ולהפעיל את הפקודה apt-mirror כדי לסנכרן את המאגרים הרשמיים של אובונטו עם המראה המקומי שלנו.
$ sudo mkdir -p /opt/apt-mirror $ sudo apt-mirror

כפי שניתן לראות, apt-mirror ממשיך עם אינדקסציה והורדת ארכיונים ומציג את מספר החבילות שהורדו ואת גודלן. כפי שניתן לדמיין, 110-120 ג'יגה-בייט הוא מספיק גדול כדי לקחת זמן להורדה.
ניתן להפעיל את הפקודה ls כדי להציג את תוכן התיקייה.

לאחר שההורדה הראשונית הושלמה, ההורדות העתידיות יהיו קטנות.
5. בזמן ש-apt-mirror מוריד חבילות, ניתן להגדיר את שרת ה-Proftpd שלך. הדבר הראשון שצריך לעשות הוא ליצור קובץ הגדרת אנונימיות עבור proftpd על ידי הרצת הפקודה הבאה.
$ sudo nano /etc/proftpd/conf.d/anonymous.conf
לאחר מכן יש להוסיף את התוכן הבא לקובץ anonymous.conf ולאתחל את שירות proftpd מחדש.
<Anonymous ~ftp> User ftp Group nogroup UserAlias anonymous ftp RequireValidShell off # MaxClients 10 <Directory *> <Limit WRITE> DenyAll </Limit> </Directory> </Anonymous>

6. השלב הבא הוא לקשר את נתיב ה-apt-mirror לנתיב של proftpd על ידי הרצת bind mount באמצעות הפקודה הבאה.
$ sudo mount --bind /opt/apt-mirror/mirror/archive.ubuntu.com/ /srv/ftp/

כדי לאמת זאת, יש להריץ את הפקודה mount ללא פרמטר או אפשרות.
$ mount

7. השלב האחרון הוא לוודא ששרת Proftpd מופעל אוטומטית לאחר הפעלת המערכת וכי התיקיית mirror-cache ממונטת באופן אוטומטי על נתיב השרת ftp. כדי להפעיל באופן אוטומטי את proftpd, הריצו את הפקודה הבאה.
$ sudo update-rc.d proftpd enable
כדי להרכיב באופן אוטומטי את המטמון של apt-mirror על proftpd, פתחו וערכו את הקובץ /etc/rc.local.
$ sudo nano /etc/rc.local
הוסיפו את השורה הבאה לפני ההוראה exit 0. כמו כן, השתמשו בהשהייה של 5 שניות לפני ניסיון ההרכבה.
sleep 5 sudo mount --bind /opt/apt-mirror/mirror/archive.ubuntu.com/ /srv/ftp/

אם אתם מושכים חבילות ממאגרי Debian, הריצו את הפקודות הבאות ווודאו שהגדרות המתאימות לקובץ rc.local מעלה מופעלות.
$ sudo mkdir /srv/ftp/debian $ sudo mount --bind /opt/apt-mirror/mirror/ftp.us.debian.org/debian/ /srv/ftp/debian/

8. לסנכרון יומי של apt-mirror ניתן גם ליצור משימת תזמון במערכת להפעלה בשעה 2 בלילה בכל יום. הריצו את הפקודה crontab, בחרו את העורך המועדף עליכם והוסיפו את השורה הבאה.
$ sudo crontab –e

בשורה האחרונה הוסיפו את השורה הבאה.
0 2 * * * /usr/bin/apt-mirror >> /opt/apt-mirror/mirror/archive.ubuntu.com/ubuntu/apt-mirror.log

כעת, בכל יום בשעה 2 בלילה, מטמון המאגר של המערכת תסנכרן עם מראות הרשמיים של Ubuntu ותיווצר קובץ לוג.
שלב 2: הגדרת לקוחות
9. כדי להגדיר לקוחות Ubuntu מקומיים, ערכו את הקובץ /etc/apt/source.list במחשבי הלקוח כך שיפנה לכתובת ה-IP או שם המארח של שרת apt-mirror – החליפו את הפרוטוקול http ב-ftp, ועדכנו את המערכת.
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. כדי להציג את המאגרים, ניתן לפתוח דפדפן ולפנות לכתובת ה-IP של השרת או שם התחום באמצעות פרוטוקול FTP.

הוראות אלה חלות גם על לקוחות ושרתים של דביאן, השינוי היחיד הנדרש הוא מראה דביאן ורשימת מקורות.
גם אם אתם מתקינים מערכת אובונטו או דביאן חדשה, הזינו באופן ידני את המראה המקומית שלכם באמצעות פרוטוקול
הדבר הנפלא שברשותכם מאגרי מראה מקומיים הוא שאתם תמיד מעודכנים, והמכשירים המקומיים שלכם אינם צריכים להתחבר לאינטרנט על מנת להתקין עדכונים או תוכנה.
Source:
https://www.tecmint.com/setup-local-repositories-in-ubuntu/