طريقة زيادة سرعة مدير حزم DNF على فيدورا

من اشهر مشاكل DNF هي السرعة, سرعة التنزيل فيه بطيئه مع ان سيرفرات فيدورا ممتازة
ومشكلة انه يحتاج لتحديث قائمة الحزم كل مرة تريد تثبيت حزمة جديدة

سبب مشكلة السرعة هو ان DNF اختياره لاسرع سيرفر من اسوء ما يمكن,
مثلا اذا انت مستخدم في الخليج العربي, يختار لك سيرفر في اليابان!

في هذا الشرح سوف اشرح كيف تسرع DNF بعدة طرق وما الفائدة منها.
الشرح على فيدورا 34 ومن المفترض يطبق على التحديثات القادمة.

يفضل بعد عمل كل التعديلات عمل امر sudo dnf clean all

تفعيل كاش ل DNF

نقوم بتعديل اعدادات DNF
sudo nano /etc/dnf/dnf.conf

اضف هذا الخيار:
keepcache=true

وفي حاله لا يوجد لديك ipv6
اضف هذا الخيار:
ip_resolve=4

والان تم تفعيل كاش عام ل DNF يحتفظ فيه بقائمة البكجات والبكجات نفسها لمده يوم تقريبا

تحديد الدول

كما ذكرنا سابقا DNF من اسوء ما يمكن في اختيار اسرع سيرفر

الحل في ذلك هو تحديد الدول التي يمكن لDNF تنزيل منها فقط.
وذلك عن طريق تعديل ملفات repo وتحديد الدول
هناك طريقتين للتعديل, بموجهه الاوامر و الواجهه الرسومية

واجهه رسوميه

اولا نفتح Nautilus(اذا كانت واجهتك غير جنوم, ضع اسم متصفح الملفات)
sudo nautilus /etc/yum.repos.d

ثم ادخل على ملفات ال .repo وعدل رابط metalink لتضيف عليه الدول (ليس ضروري تعديل ملفات testing)

اضيف &country=de,fr,at, لاخر روابط ال meta
مثال:
قبل التعديل:
metalink=https://mirrors.fedoraproject.org/metalink?repo=fedora-$releasever&arch=$basearch

بعد التعديل:
metalink=https://mirrors.fedoraproject.org/metalink?repo=fedora-$releasever&arch=$basearch&country=de,fr,at

بامكانك اختيار اي دول القريبه لك, في الشرق الاوسط سلك الانترنت يتصل باوروبا اول شيء, لذلك هي اسرع شيء موجود.
في هذه الحالة اخترت المانيا و فرنسا و النمسا
هذا التعديل يطبق على RPMfusion ايضا

طريقة التيرمنال

ls /etc/yum.repos.d
لنعرف ملفات ال repo الموجودة لديك

ثم عدل كل ملف repo, ملفات testing اختيارية.
مثال
sudo nano /etc/yum.repos.d/fedora.repo
وعدل رابط metalink لتضيف عليه الدول

اضيف &country=de,fr,at, لاخر روابط ال meta
مثال:
قبل التعديل:
metalink=https://mirrors.fedoraproject.org/metalink?repo=fedora-$releasever&arch=$basearch

بعد التعديل:
metalink=https://mirrors.fedoraproject.org/metalink?repo=fedora-$releasever&arch=$basearch&country=de,fr,at

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

هذا التعديل يطبق على RPMfusion ايضا

استخدام Aria2 بدلا عن CURL

مشكلة اخرى في DNF هي انه يستخدم curl للتحميل, و curl ليس الاسرع
لكن aria2 معروفه بانه من اسرع برامج تحميل الملفات على وجهه الارض

هذه الطريقه تسرع التحميل على معظم الشبكات, لكن على شبكات الهواتف مثلا قد تجعلها ابطئ
لذلك جربها وفي حالة انه لم تكن السرعة افضل, اخر الشرح طريقة الغاء التغييرات.

نثبت المتطلبات:
sudo dnf install patch aria2 git

ثم نقوم بنسخ المستودع الي فيه التعديل لنقل DNF من curl الى aria2
git clone https://github.com/daemonspudguy/DNF-Faster

ندخل الملف
cd DNF-Faster

ونقوم بعمل الباتش
sudo patch -p0 -d/ -b < dnf-faster.patch

لالغاء التعديل

ادخل ملف DNF-Faster واعمل هذا الامر
sudo patch -p0 -d/ -b -R < dnf-faster.patch

5 إعجابات

هل يمكن زياده المده

هل لازال يعمل لأن اخر مره جربته عدلت فيه نسخه البايثون من 3.6 إلى 3.7

هذه نسخه معدله
ليست النسخه الاصليه
الجديدة متوافقه مع بايثون 3.9

موضوع زياده الكاش لا اتوقع ممكن خاصه انه يوم واحد اكثر من كافي

إعجاب واحد (1)