إذا كان الأمر كذلك ، سأقدم لك هنا كيفية صنع مرآة لنظام CentOS 7. ما هي فوائد ذلك؟ من بينها ، يمكنك حفظ النطاق الترددي للإنترنت ، والاحتفاظ بنسخة محلية من مستودعاتك التي تكون فيها التنزيلات والتثبيتات أسرع بكثير ، والأهم من ذلك كله مفيد جدًا كخادم تحديث إذا كان لديك 10 خوادم أو 1000 محطة عمل بها أعتقد أن هذا هو خيارك الأفضل لأنه يمكنك تقديم خدمة تحديث سريعة وبسرعة شبكة LAN الخاصة بك.
الآن ، يمكنك صنع مرآتك بحوالي 10 طرق ، لكنني سأخبرك بالطريقة التي في رأيي هي الأسرع والأكثر راحة ، حسنًا يمكنك جعل المرآة الخاصة بك في أي توزيع يدعم رسينك. Yesiiiiii! أي واحد، يمكنك قراءة جزء rsync فقط ، وإنشاء مستودع CentOS محلي على ubuntu ، و debian ، و fedora ، و redhat ، و slackware ، وكلها تدعم rsync
رسينك هو تطبيق مجاني لأنظمة من نوع Unix و Microsoft Windows يوفر نقلًا فعالًا للبيانات الإضافية ، والتي تعمل أيضًا مع البيانات المضغوطة والمشفرة. باستخدام تقنية تشفير دلتا ، يسمح لك بمزامنة الملفات والأدلة بين جهازين على شبكة أو بين موقعين على نفس الجهاز ، مما يقلل من حجم البيانات المنقولة.
نشرع في تثبيت rsync
# yum install rsync
بمجرد التثبيت ، ما عليك سوى البحث في قائمة مرايا CentOS بعض المرايا بالقرب من منطقتك تعمل مع rsync (وهو العمود السادس) موقع Rsync
قم بإنشاء مجلد حيث يمكنك وضع المستودع ، لقد قمت فقط بعمل نسخة متطابقة من CentOS 7 ، كاملة مع isos وجميع المجلدات المتاحة ، والتي تشغل 38 جيجا بايت ، لذا ضع في اعتبارك إذا كنت ستقوم بعمل نسخة متطابقة جزئية من الإصدارات الأخرى من centOS أو مرآة كاملة. ما مقدار المساحة التي ستشغلها؟ إنه شيء يجب عليك تقييمه.
# mkdir -p /home/repo/CentOS/7
يحتوي المستودع على كل هذه المجلدات:
- الذري
- سنتوسبلس
- سحابة
- cr
- إضافات
- فاستراك
- التضامن الدولي
- os
- sclo
- تخزين
- التحديثات
- virt
يعمل rsync على النحو التالي:
# rsync --delete-excluded --exclude "local" --exclude "isos" --exclude "*.iso"
- باستخدام علامة حذف - مستبعد واستبعاد ، يمكنك تجاهل المجلدات أو الملفات ، على سبيل المثال مجلد iso أو ملفات .iso ، من السهل جدًا أليس كذلك؟
# rsync -aqzH --delete msync.centos.org::CentOS /path/to/local/mirror/root
- مع خيار -حذف، سيحذف الملفات التي لم تعد موجودة في المصدر.
- -a أرشفة وتخزين
- -q الوضع الصامت ، يمنع الرسائل غير الخطأ
- -z ضغط البيانات أثناء النقل
- -H احتفظ بالروابط الصلبة ، إذا أردت أن أوصي أيضًا بهذا الخيار -l لعقد الروابط الرمزية
كيف فعلت ذلك؟ بسيط مثل هذا:
# rsync -avzqlH --delete --delay-updates rsync://ftp.osuosl.org/centos/7/ /home/repo/CentOS/7
لا تتعجل ، سأشرح لماذا فعلت ذلك على هذا النحو.
- - تأخير التحديثات ضع جميع الملفات المحدثة في نهاية التحميل بالكامل ، هل تفهمني ، أي أنه لا يقوم بالتحديث في كل مرة يقوم فيها بتحميل ملف جديد ، ولكن على العكس ، إذا كان هناك 100 ملف جديد ، بعد الانتهاء من 100 ملف جديد ، قم بمزامنتها مكان في المكان
- rsync: //ftp.osuosl.org/centos/7/ لأنني أريد فقط عمل CentOS 7
- / var / www / html / repo / CentOS / 7 حيث سأضع جميع ملفاتي التي نسختها من المصدر.
ليس من الضروري ، لكنني أوصي بالحزمة مبتدئ، ببساطة ما يفعله هو إعطائه خاصية http وإنشاء فهرس لمستودعك
# yum install createrepo
ثم قم فقط بتشغيل الأمر الذي يشير إلى المستودع الخاص بك
# createrepo /home/repo/CentOS/7
الآن بمجرد الانتهاء ، يجب عليك مشاركته بطريقة ما ، فأنا دائمًا أستخدم خادم http ، مع الاستمرار في CentOS 7 ، يمكنك تثبيت خادم ويب أساسي على النحو التالي (استخدم httpd ، فهو ليس apache)
# yum group install -y "Basic Web Server
قم بإنشاء ارتباط رمزي من موقع المستودع الفعلي إلى مجلد "www"
# ln -s /home/repo /var/www/html/repo
نقوم بإنشاء مجلدات المواقع المتاحة ومجلدات المواقع الممكنة
# mkdir /etc/httpd/sites-available
# mkdir /etc/httpd/sites-enabled
نقوم بتحرير ملف httpd.conf لإضافة جميع المواقع النشطة التي تم تمكين المواقع بها
# vi /etc/httpd/conf/httpd.conf
أضف هذا السطر إلى نهاية الملف
IncludeOptional مواقع تمكين / *. Conf
نقوم بإنشاء وتحرير موقعنا
# vi /etc/httpd/sites-available/repocentos.conf
اسم الخادم repocentos.com
#ServerAlias example.com
DocumentRoot / var / www / html / repo / CentOS /
ErrorLog /var/log/httpd/error.log
CustomLog /var/log/httpd/requests.log مجتمعة
نقوم بتنشيط موقعنا عن طريق إنشاء ارتباط رمزي
# ln -s /etc/httpd/sites-available/repocentos.conf /etc/httpd/sites-enabled/repocentos.conf
نقوم بتغيير المالك ومجموعة الملفات والمجلدات لـ apache
# chown apache. www/ -R
نقوم بتنفيذ الأمر التالي حتى يبدأ خادم الويب من اللحظة التي بدأنا فيها تشغيل الجهاز
# systemctl enable httpd.service
نقوم بإعادة تشغيل خادم الويب بالأمر التالي
# systemctl restart httpd
كيف يمكننا استخدامها؟
أنشئ ملفًا في /etc/yum.repos.d/local.repo والصق الأسطر التالية:
[os] name = master - Base baseurl = http: //ip أو url/ repo / CentOS / $ releasever / os / $ basearch / gpgcheck = 1 gpgkey = file: /// etc / pki / rpm-gpg / RPM-GPG-KEY-CentOS-7 [التحديثات] name = master - التحديثات baseurl = http: //ip أو url/ repo / CentOS / $ releasever / updates / $ basearch / gpgcheck = 1 gpgkey = file: /// etc / pki / rpm-gpg / RPM-GPG-KEY-CentOS-7 [إضافات] name = master - Extras baseurl = http: //ip أو url/ repo / CentOS / $ releasever / extras / $ basearch / gpgcheck = 1 gpgkey = file: /// etc / pki / rpm-gpg / RPM-GPG-KEY-CentOS-7 [centosplus] name = master - CentosPlus baseurl = http: //ip أو url/ repo / CentOS / $ releasever / centosplus / $ basearch / gpgcheck = 1 gpgkey = file: /// etc / pki / rpm-gpg / RPM-GPG-KEY-CentOS-7
نقوم بتحديث المستودعات بـ:
# yum clean all
# yum repolist all
# yum update
حسنًا ، هذا كل شيء لهذه المرة. كما هو الحال دائمًا تذكر أن تتابع عن كثب منشوري وهذا الموقع. تعليق وهكذا نشارك جميعًا معرفتنا ، حتى المرة القادمة !!!