كيفية إعداد مستودع شبكة لتثبيت أو تحديث الحزم – الجزء 11

تثبيت وتحديث وإزالة (عند الحاجة) البرامج المثبتة مسؤوليات رئيسية في حياة مسؤول النظام اليومية. عندما يكون الجهاز متصلاً بالإنترنت، يمكن تنفيذ هذه المهام بسهولة باستخدام نظام إدارة الحزم مثل aptitude (أو apt-get), yum, أو zypper, اعتمادًا على التوزيعة التي اخترتها، كما هو موضح في الجزء 9 – إدارة حزم Linux من سلسلة LFCE (مهندس معتمد من مؤسسة Linux). يمكنك أيضًا تنزيل ملفات .deb أو .rpm منفصلة وتثبيتها باستخدام dpkg أو rpm، على التوالي.

Linux Foundation Certified Engineer – Part 11
تقديم برنامج شهادات مؤسسة Linux

ومع ذلك، عندما لا يكون للجهاز وصول إلى شبكة الإنترنت، يصبح من الضروري استخدام طرق أخرى. لماذا يرغب أي شخص في فعل ذلك؟ تتراوح الأسباب من توفير عرض النطاق الترددي للإنترنت (وبالتالي تجنب الاتصالات المتزامنة عديدة إلى الخارج) إلى تأمين الحزم المترجمة من المصدر محليًا، وتشمل إمكانية توفير حزم تتعلق بأسباب قانونية (على سبيل المثال، البرمجيات التي تقتصر في بعض البلدان) لا يمكن تضمينها في المستودعات الرسمية.

هذا هو بالضبط المكان الذي تأتي فيه المستودعات الشبكية إلى اللعب، وهو الموضوع المركزي لهذا المقال.

بيئة الاختبار الخاصة بنا
Network Repository Server:	CentOS 7 [enp0s3: 192.168.0.17] - dev1
Client Machine:			CentOS 6.6 [eth0: 192.168.0.18] - dev2

إعداد خادم مستودع شبكي على CentOS 7

ولكن من ثم سنقوم بتكرار هذه العملية للCentOS 7 و 192.168.0.17 و جهاز CentOS 6.6 كمستخدم. والإعداد ل openSUSE تقريباً متشابه.

ل CentOS 7 ، تتبع المقالات التالية التي توضح خطوات ترتيبية للتثبيت ل CentOS 7 وكيفية تأسيس عنصر IP ثابت.

  1. تثبيت CentOS 7.0 مع شرائح
  2. كيفية تأسيس عنصر شبكي ثابت ل CentOS 7

وفيما يتعلق ب Ubuntu ، هناك مقال رائع على هذا الموقع الذي يوضح بخطوات ترتيبية كيفية إنشاء مستودع خاص خاص بك.

  1. إنشاء مستودعات محلية مع ‘apt-mirror’ في Ubuntu

سوف نختار الطريقة التي يستخدمها المستخدمون للوصول إلى مستودع الخاص بنا – FTP و HTTP هما الأكثر استخداماً. سنختار الآخر لأن تثبيت Apache تم تغطيته في الجزء الأول – تثبيت Apache من سلسلة LFCE هذه. وهذا سيسمح لنا أيضًا بعرض قائمة الحزم بواسطة متصفح الويب.

بعد ذلك، نحتاج إلى إنشاء الدلائل لتخزين حزم .rpm. سنقوم بإنشاء دلائل فرعية داخل /var/www/html/repos وفقًا لذلك. لراحتنا، قد نرغب أيضًا في إنشاء دلائل فرعية أخرى لاستضافة حزم لإصدارات مختلفة من كل توزيعة (بالطبع يمكننا إضافة المزيد من الدلائل حسب الحاجة لاحقًا) وحتى بنيات مختلفة.

إعداد المستودع

شيء مهم يجب مراعاته عند إعداد مستودعك الخاص هو أنك ستحتاج إلى مساحة قرص كبيرة متاحة (حوالي 20 جيجابايت). إذا لم يكن لديك هذه المساحة، قم بتغيير حجم نظام الملفات الذي تخطط لتخزين محتويات المستودع فيه، أو بشكل أفضل قم بإضافة جهاز تخزين مخصص إضافي لاستضافة المستودع.

وبعد ذلك، سنقوم بإنشاء الدلائل التي سنحتاجها لاستضافة خادم المستودع:

# mkdir -p /var/www/html/repos/centos/6/6

بعدما قمنا بإنشاء هيكل الدلائل لخادم المستودع الخاص بنا، سنقوم بتهيئة قاعدة البيانات التي تتتبع الحزم وتبعاتها المقابلة في /var/www/html/repos/centos/6/6 باستخدام أداة createrepo.

قم بتثبيت أداة createrepo إذا لم تقم بذلك بالفعل:

# yum update && yum install createrepo

ثم قم بتهيئة قاعدة البيانات،

# createrepo /var/www/html/repos/centos/6/6
Createrepo Repository Initialization

تحديث المستودع

بفرض أن خادم المستودع لديه وصول إلى الإنترنت، سنقوم بسحب مستودع عبر الإنترنت للحصول على أحدث تحديثات الحزم. إذا لم يكن الأمر كذلك، يمكنك نسخ محتويات الدليل كاملة من الحزم الخاصة بـ CentOS 6.6 من قرص تثبيت DVD.

في هذا البرنامج التعليمي، سنفترض الحالة الأولى. من أجل تحسين سرعة التنزيل، سنختار مرآة CentOS 6.6 من موقع قريب منا. انتقل إلى مرآة تنزيل CentOS واختر تلك التي تقع أقرب إلى موقعك (الأرجنتين في حالتي):

Select CentOS Download Mirror

ثم، انتقل إلى الدليل os داخل الرابط المحدد ثم اختر التوجيه المناسب. بمجرد الوصول إلى هناك، انسخ الرابط الموجود في شريط العنوان وقم بتنزيل المحتويات إلى الدليل المخصص في خادم المستودع:

Download CentOS Mirror
# rsync -avz rsync://centos.ar.host-engine.com/6.6/os/x86_64/ /var/www/html/repos/centos/6/6/ 

في حالة أن يتضح أن المستودع الذي تم اختياره غير متصل لأي سبب، ارجع واختر واحدًا مختلفًا. ليس هناك مشكلة كبيرة.

الآن حان الوقت الذي قد ترغب فيه في الاسترخاء وربما مشاهدة حلقة من برنامجك التلفزيوني المفضل، لأن تكرار المستودع عبر الإنترنت قد يستغرق وقتًا طويلاً.

بمجرد اكتمال التنزيل، يمكنك التحقق من استخدام مساحة القرص باستخدام:

# du -sch /var/www/html/repos/centos/6/6/*
Check CentOS Mirror Size

وأخيرًا، قم بتحديث قاعدة بيانات المستودع.

# createrepo --update /var/www/html/repos/centos/6/6

قد ترغب أيضًا في تشغيل متصفح الويب الخاص بك والانتقال إلى الدليل repos/centos/6/6 للتحقق مما إذا كنت تستطيع رؤية المحتويات:

Verify CentOS Packages

وأنت الآن جاهز للبدء – حان الوقت الآن لتكوين العميل.

Source:
https://www.tecmint.com/setup-yum-repository-in-centos-7/