عمل مزامنة لمستودعات فيدورا وغيرها باﻷمر reposync


بسم الله الرحمن الرحيم 

السلام عليكم ورحمة الله وبركاته 



عمل مزامنة للمستودعات باﻷمر  reposync .

 


منذ مدة أحببت البدء بدورة تخص اساسيات لينكس على توزيعة فيدورا وتعريف بعض الشباب بلينكس لكن واجهت مشكلة عدم توفر الإنترنت في القاعه ولذلك بحثت عن حل واقترح علي أخي الغالي يوسف عمل مزامنة لمستودعات فيدورا ومن ثم انشاء مستودع محلي على الشبكة وهنا سأتحدث عن كيفية عمل مزامنة لمستودعات التوزيعة والموضوع قصير ولكن له فائدة في إنشاء مستودع في شبكة مغلة غير موصولة بالانترنت .
* ملاحظة : حزم المستودعات تختلف بحجمها مثلا الحزم المتواجدة في مستودع فيدورا كامل قرابة 
ال ٩٢ جيجا وحزم مستودعات rpmfusion-free حجمها قرابة ال ٧٠٠ ميجا

 

 نبدأ على بركة الله 

١- تثبيت الحزم التالية.

sudo dnf install yum-utils createrepo_c

 

 ٢- تفعيل خاصية ال keepcache للمستودعات  

* ملاحظة في فيدورا 25 لا يمكن تشغيل محرر النصوص gedit بصلاحيات root لهذا نقلع من خلال Gnome on Xorg أو حل مؤقت ننفذ أمر xhost كما في الاسفل.

xhost local:root


sudo gedit /etc/dnf/dnf.conf

 

  keepcache =1

  

 

 

٣- إنشاء مجلد لتنزيل المستودعات داخله .

 

mkdir ~/repofedora ; cd ~/repofedora

 



٤- اﻵن نحن متواجدين داخل المجلد الذي أنشأناه .

 

نبدأ في عمل مزامنة و أنوه الى أن عملية المزامنة ستأخذ بعض الوقت على حسب سرعة الإنترنت لدينا مثلا أنا سأقوم بعمل مزامنة للمستودعات التالية .


fedora

updates

 rpmfusion-free

rpmfusion-nonfree

 

 و أيضا عملت مزامنة لمستودع fedy.

folkswithhats

 

سنبدأ بالأمر التالي لعمل مزامنة لمستودع فيدورا.

reposync --repoid=fedora

 

 

 

 ونفس الأمر لباقي المستودعات فقط نغير قيمة ال repoid مثلا مستودعات rpmfusion .

  reposync --repoid=rpmfusion-free

 

reposync --repoid=rpmfusion-nonfree



اذا واجهتنا مشاكل في عمل مزامنة نعمل تعطيل للمستودع التالي.

sudo dnf config-manager --set-disabled fedora-cisco-openh264

 

 



٥- عند الإنتهاء سنجد كل المستودعات موجودة داخل مجلدات باسمها ومرتبة ترتيب ابجدي بداية باﻷرقام.

 

 

 

 

٦- عند الإنتهاء يمكننا كل فترة عمل مزامنة فقط للحزم الجديدة باﻷمر التالي .

 

cd ~/repofedora

reposync -n --repoid=fedora


 هنا سيتم جلب الحزم الجديدة فقط ونفس الأمر لباقي المستودعات فقط نغير قيمة ال repoid .

 

الآن لعمل مستودع محلي عن طريق تثبيت سيرفر ال ftp لدينا نتابع الخطوات التالية :

-اولا نقوم بتثبيت سيرفر vsftpd .

    sudo dnf install vsftpd

-ثانيا  اذا اردنا جعله يعمل عند الاقلاع نقوم بتفعيله بخيار enable ومن ثم تشغيل الخدمة .

sudo systemctl enable vsftpd.service

sudo systemctl start vsftpd.service

 


 

-ثالثا نعدل على إعدادات الجدار الناري firewall .

sudo firewall-cmd --add-service=ftp --permanent

firewall-cmd --reload

 

 


-رابعا إلى داخل مجلد var/ftp/ نقوم بعمل نسخة أو نقل المجلد الموجود فيه مجلدات  الحزم التي قمنا بتنزيلها  .

sudo cp -r ~/repofedora    /var/ftp

 

 

 

 

-خامسا نقوم بتنزيل سكربت بايثون من اعداد الاخ يوسف جزاه الله كل خير يسهل علينا عملية انشاء المستودعات وتكون جاهزة برابط ال ftp كامل للمستودع من الرابط التالي .

 

-الان نعمل تشغيل للسكربت عبر الامر التالي وافتراضيا اتوقع نزوله في مجلد المنزل او مجلد ال Downloads على العموم انا نقلته لمجد المنزل.

* انا اعدت تسمية المجلد الى repo بدل من repofedora .

  sudo python3 make_repos_ftp.py /var/ftp/repo

 

 


الان نلاحظ انه حدد كرت الانترنت لدي وانا استخدم كرت لاسلكي و حدد الا ip الخاص به و سيتم التحديد بناء على الكرت المستخدم لديك .. هنا ساختار الخيار رقم ١ وهو 1-wlp5s0 192.168.1.2. لانه لا يوجد غيره متصل.

  


 هنا بدأت العملية ننتظر بعض الوقت لانه حجم الحزم كبير قليلا .

 


بعد الانتهاء سنجد ملفات المستودعات التي تم انشاءها في مجلد المنزل لدينا تحمل اسم المستخدم كما في الصورة التالية .

 


 وبداخله سنجد جميع الملفات التي تم انشاءها للمستودعات كالتالي .

 

 

 الان لم يبق شيء سوى نقل هذه الملفات الى الجهاز الاخر المتصل بالشبكة و وضعهم داخل مجلد المستودعات في etc/yum.repos.d/ في حالتي هذه سأقوم بالتجربة على الجهاز الوهمي ولنرى ان تم الامر ام لا ,في البداية قمت بنقل جميع ملفات المستودعات القديمة الى مجلد سميته repo في المنزل لدي عبر الامر التالي.

mv /etc/yum.repos.d/*.repo    ~/repo

 


ومن ثم قمت بنقل جميع ملفات المستودعات التي تم انشاءها الى مجلد etc/yum.repos.d/ نلاحظ الان جميع المستودعات موجودة في المجلد . 

 

الان لنقوم بتجربة عمل تحديث للنظام انا استخدم الان على النظام الوهمي فيدورا ٢٥ والنواة الموجودة حاليا هي 4.8.6 بينما على التوزيعة الاساسية النواة المتوفرة هي  4.8.14 .

  

سأقوم الان بتنفيذ امر التحديث .

sudo dnf update

الآن كما نلاحظ في الصورة التالية تم التحديث والان التوزيعة حازت على اخر اصدار من النواة .

  * قبل تثبيت سيرفر ال ftp قمت بتثبيت عنوان ال ip الخاص بالجهاز وهو تلقائيا يكون بالوضع التلقائي اي عند كل عملية اعادة تشغيل للجهاز يأخذ ip جديد وهنا جعلته يدوي لكي يبقى ثابت

 

* كل الشكر والتقدير لاخي الغالي وصديقي يوسف صوراني على مساعدته لي في شرح الموضوع وتسهيل عملية انشاء المستودعات وبارك الله فيه

--------------------------------------------------------------------------------------------------

بعض المراجع المفيدة

 

لعمل مستودع محلي الموضوع في الرابط التالي 

http://www.arfedora.com/2016/05/blog-post_30.html

هناك سكربت برمجه اخي يوسف يسهل اﻷمر لعمل مستودع محلي في الرابط التالي 

http://www.arfedora.com/2016/06/blog-post_25.html



أخيرا يمكننا معرفة المزيد عن اﻷمر reposync من خلال 

man reposync

ودمتم في رعاية الله

شارك الموضوع

مواضيع ذات صلة

التسميات

2016 (1) 23 (1) 24 (3) 25 (1) 26 (1) 27 (1) 28 (1) 29 (1) 30 (1) 31 (1) إتصال (1) إختراق (2) أدة (1) أدوات (1) إرسال (1) أرش (1) إسترجاع (1) إستعلام (1) أشياء (7) أشياء تفعلها (8) إصدارات (1) إصلاح (6) إصلاحrealtek (1) إضافات (1) إضافة (1) أعجوبة (1) أعجوية (1) إعداد (1) إقاف (2) أقسام (1) ألعاب (2) الفرق (1) الفلاشة (1) القسم هوم (1) الكتابة بالعربية (1) إلى جانب (1) أندرويد (1) إنشاء (1) إنشاء مستودع (1) أيات (1) أيزو (1) أيقومات (1) أيقونات (1) ايقونات (2) باتش (1) بارامتر (1) بايثون (16) برامج (56) برامج إسلامية (2) برنامج (19) برودباند (1) بعد (7) بعد التثبيت (8) بلوتوث (1) بناء (1) بناء توزيعة (1) بيئة عمل (1) تثبيت (29) تجهيز (2) تجهيو من دون (2) تحزيم (2) تحقق (1) تحويل (1) تخصيص (5) ترجمة (2) ترقية (1) تسجيل الشاشة (1) تشغيل (3) تعريف (13) تعطيل (2) تعلم (6) تفعلها (7) تفعيل (2) تقطع الأحرف (1) تقعيل (1) تنزيل (2) تورنت (1) توزيعة (1) توسعة (1) ثيم (5) ثيمات (1) جافا (1) جماليات (7) جنوم (1) حجم (1) حرق (2) حزمة (1) حل (2) دالة (1) دورة (1) روتر (1) ريدهات (2) سكربت (2) شرح (11) صورة متحركة (1) فايرفوكس (1) فتح منفذ (1) فصل (1) فلاشة (3) فيدورا (29) فيدورا بالعربي (1) قاموس (1) كالي (2) كتاب (2) كتب (2) كرت (1) كروت الشاشة (1) كلمة المرور (2) كورس (1) كورورا (1) لعبة (1) لينكس (2) لينكسو (1) ماهو (6) متغير البيئة (1) مجانا (1) محاكات (2) محاكي (1) محمل الإقلاع إصلاح (1) محمول (1) مستودعات (1) مشكلة (2) ملف نصي (1) من إصدار (1) نظام ملفات (1) نمط (2) نواة (1) هجين (4) واجهات (1) وايرلس (1) وهمي (2) ويندوز (2) access token (1) active (2) add (1) after (7) alias (1) andoid studio (1) android (2) android studio (1) Apache (2) appstream (1) arboot (1) arboot fix (1) arch (3) archiso (1) arfedoraccframework (3) arfedoracontrolcenter (3) arfedy (1) atari (1) atom (1) ayat (1) bicon (1) blivet (1) blivet-gui (1) bls (1) bluetooth (1) book (2) books (2) bootloader fix (1) boxes (3) broadband (1) broadcom (1) broadwayd (1) bugzilla (1) build (2) builddep (1) bumblebee (1) bumbleebe (2) burn (2) byzanz (1) c# (1) calamares (1) camera (1) cannot open display (1) cannot open display: :0 (1) ccna (1) cd (2) centos (1) change (2) chsh (1) cisco (1) clion (1) clone (1) code.org (1) command (2) command line (2) commands (2) comps (1) connect (1) contra (1) convert (1) copr (1) could not connect to the debugger (1) cpu (1) cpufreq (1) createrepo (1) csharp (1) css (1) curlew (1) custom (2) dbus (3) dconf (1) dd (1) Decryption (1) defragment (2) desktop (1) desktop entry (1) dictionary (1) Digital signature (1) disks (1) dnf (14) do (7) docker (1) dolphine (1) download (2) downloads manager (1) dply (1) DRI PRIME (1) driver (9) dukto (1) e2fsck (1) efi (4) el forkane (1) elforkane (1) elif (1) emergency (3) emergency mode (3) emulator (1) enable (2) Encryption (1) entries (1) error mounting /dev/sd (1) ext4 (1) extend (1) extensions (2) fakenes (1) fast startup (2) fceux (1) fedora (45) fedora 25 alpha (1) fedora cloude (1) fedora28 (1) fedoraوفيدورا (1) fedy (1) fgmac (2) fgmac-24 (1) file (1) find (1) firefox (2) fix (10) flash mem (1) flash memory (2) flashplayer (1) flatpak (4) forward (1) fpaste (1) free (1) freebsd (1) freevpn (1) function (1) game (3) games (2) gedit (1) genymotion (1) gettext (1) gif (1) gimp (1) gio (1) github (5) github.io (1) glibc-common (1) gmaclinux (2) gnome (16) gnome boxes (1) gnome disk (1) gnome shell (13) gnome terminal (1) gnome-disks (1) gnu (1) godot (1) goldendict (1) google web designer (1) gpg (2) gradio (1) group (2) grub (7) grub2 (1) grubenv (1) gstreamer (1) gtk (8) gtk+ (1) gvrecord (1) hack (2) hash (4) hdmi (3) hibernate (1) home (2) hosspot (1) html (1) http (1) hybrid (2) icon (2) icons (3) ide (1) if (1) install (32) installf (9) installing (7) intellij idea (1) internet downlaod manager (1) iso (2) java (3) jdk (2) jetbrains (1) jetbrains toolbox (1) kali (2) kde (3) kernel (1) kernel parameters (1) key (1) kickstarts (3) korora (1) krita (1) kvm (2) kvm switches (1) lamp (1) laps (1) learn (1) legacy (1) legacy bios (3) libreoffice (2) libvirt (1) life is trange (1) linux (8) lutris (1) lv (1) lvm (2) mac (4) macros (1) mageia (1) make distro (1) mariadb (1) MariaDB and PHP Lamp Server (1) markdown (2) mate terminal (1) mbr (1) md5sum (1) mirro (1) mkconfig (1) mo (1) mono (2) monodevelop (2) mount (1) mp4 (1) multi screen (1) mumble (1) murmur (1) natron (1) nautilus (2) nes (1) netbeans (1) netcut (1) nintendo (1) ntfs (2) nvidia (8) objdesktop (1) ojuba (2) oop (1) opensuse (1) openvpn (1) opera (1) optirun (2) oracle (1) os.path (1) package (2) page (1) pages (1) pantheon (1) parameter (1) parameters (1) password (2) patch (1) path (2) pdf (1) peek (1) photoshop (1) php (1) phpstorm (1) plasma (2) plugin (3) plugins (1) plymouth (1) po (1) polkit (1) port (1) portable (1) portmatp (1) PostinstallerF (1) pot (1) powerline (2) powerline-go (1) preset (1) preview (1) primary display (1) primeos (1) primus (1) primusrun (1) private key (1) programs (3) protonvpn (1) pubg (1) public key (1) put (1) pv (1) pycharm (2) pygobject (4) pygtk (5) python (56) pythonk (1) qdbus (1) qemu (3) qemu-kvm (1) query (1) radio (1) raspberry pi (4) raspbian (2) reclaim space (2) record (1) redhat (3) remix (1) remix os (1) repo (4) repofrompath (1) repository (1) reset (1) resize2fs (1) rhel (1) router (1) rpm (7) rpmbuild (1) rtl8188ee (1) rtl8192c (1) rtl8192ce (1) rtl8192cu (1) rtl8192de (1) rtl8192ee (1) rtl8192se (1) rtl8723ae (1) rtl8723be (1) rtl8723com (1) rtl8821ae (1) rubymine (1) salix (1) scratch (2) scratch2.scratch 2 (1) screencast (1) script (2) seconday display (1) self (1) send (1) server (1) settings (2) sha1256sym (1) sha256sum (1) share desktop (1) shell (2) shortcut (1) shutter (1) skel (1) skel ماهو (1) skype (1) skype.برامج (1) slackware (1) software (1) soundcloud (1) source code (1) spec (2) spin (1) sqlmap (1) ssh (3) sshd (2) st-trans (1) steam (2) store (1) su (1) sudo (2) sudoers (1) swap (2) switch (2) Switchable Graphics (1) synergy (1) systemd (1) systemd preset (1) teamviewer (1) terminal (2) theme (5) things (7) thomson (1) thread (2) threading (2) thumbnails (1) to (8) tor (2) tor browser (1) torrent (1) transfer closed with 736700 bytes remaining to read (1) translation (1) turn off (2) tuxcut (1) txt (1) ubuntu (1) uefi (5) unable to mount location (1) unity (1) unity3d (1) upgrade (1) usb (1) useradd (2) utf-8 (1) vega (1) verify (1) vg (1) vgaوتبديل (1) vi (1) video (1) vim (1) vino (1) virsh (1) virt-install (1) virt-manger (1) virtual (1) virtual box (1) virtualbox (3) vmware (3) vnc server (1) vokoscreen (1) vpn (1) web server (1) webstorm (1) wifi (1) windows (4) windows-1256 (1) wine (1) woeusb (1) X Error: BadAccess (1) X Error: BadDrawable (1) xdg-mime (1) xdman (1) xfce (1) xfconf-query (1) yum (2) zeal (1) zealdocs (1)