كيفية إنشاء مستودع أوبونتو محلي. نقوم بإنشاء مستودع محلي من حزم deb. توقيع المستودع المحلي بمفتاحك

06.12.2021

بدلاً من استخدام dpkg -i package_name.deb للتثبيت، يمكنك إنشاء مستودع محلي للحزم التي تم إحضارها على محرك أقراص محمول أو وسائط أخرى، ثم استخدام Synaptic/kynaptic (أو apt-get install package_name).

1. من الأفضل تنفيذ جميع الإجراءات كجذر

سودو سو

2. الآن قم بتثبيت حزمة dpkg-dev. وسيحتوي على الأداة المساعدة dpkg-scanpackages، وهو ما نحتاجه.

الرابطة بين الحصول على تثبيت dpkg-dev

3. ضع كافة حزم .deb في دليل، على سبيل المثال، /myrepo (ليس في هذا الدليل مباشرة، ولكن في الدلائل الفرعية الموجودة في هذا الدليل)

4. نفذ

مؤتمر نزع السلاح /myrepo dpkg-scanpackages . /ديف/خالية | gzip -9c > Packages.gz

5. أنت الآن بحاجة إلى إضافة مستودع جديد إلى /etc/apt/sources.list. أدخل سطرًا في /etc/apt/sources.list (من الأفضل إدراجه بالقرب من البداية، لأن apt-get (synaptic/kynaptic) يضع المزيد أولوية عاليةالمصدر الذي هو في وقت سابق من الآخرين)

ملف ديب:/myrepo ./

6. تحديث قائمة المستودعات

الرابطة بين الحصول على التحديث

إذا تغيرت محتويات دليل الحزمة، كرر الخطوات 1.4.

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

كيف تعمل مستودعات الحزم على أنظمة Linux؟

يوفر المطورون روابط خاصة لدعم توزيعاتهم وتوفير تجربة مستخدم مريحة. ويشيرون إلى الخوادم البعيدة، التي تخزن أحدث حزم البرامج التي تم اختبارها من قبل المطورين لتوزيع معين. بفضل هذه الروابط، "يعرف" نظام الإدارة البيئية متى وأين يتم تنزيل تحديثات الحزمة وتثبيتها. يمكن أن تشير هذه الارتباطات إلى مورد بعيد أو مورد محلي. في الحالة الثانية، يمكن أن يكون إما كمبيوتر آخر على الشبكة المحلية، أو محرك أقراص محلي و/أو حتى، إذا حاولت، محرك أقراص ضوئية.

ديب http://ru.archive.ubuntu.com/ubuntu/ الكون الإلكتروني

يعد هذا أحد مستودعات النظام المضمنة في التوزيعة في البداية. هناك أيضًا مستودعات منظمة بواسطة مستخدمين فرديين تم التحقق منهم، على سبيل المثال:

ديب https://repos.codelite.org/ubuntu/bionic Universe

هذا مستودع أنشأه مطور بيئة تطوير CodeLite، خصيصًا لـ Ubuntu. وتمت إضافة هذا الرابط إلى الملف مصادر.قائمةبالفعل يدويا من قبل المستخدم مسؤول الكمبيوتر نفسه. وبعد ذلك يصبح من الممكن التثبيت التلقائيالإصدارات الحالية والمستقرة من حزم CodeLite، بالإضافة إلى تحديثاتها. وهذا ما قد يبدو عليه رابط المستودع المخزن على الوسائط الضوئية:

قرص مضغوط Deb:/ عالم مقيد متعدد الأكوان الإلكترونية

كما ترون، الكلمة الرئيسية، تعريف بروتوكول الوصول هو القيمة التالية لـ "deb". ل الوسائط البصريةهذا هو "cdrom"، وللوصول إلى الشبكة فهو "https".
اتضح أنه يمكن استكمال مصادر المستودع وفقًا لتقديرك الخاص، بعد تنظيم تخزين الحزمة مسبقًا وفقًا لذلك.

استخدام وكيل لتنظيم مستودع محلي

تتضمن هذه الطريقة الوصول إلى المستودعات من خلال ذاكرة التخزين المؤقت الموجودة على جهاز كمبيوتر وكيل لديه اتصال مباشر بالإنترنت. آلية تشغيل هذا المستودع المحلي هي كما يلي:

  • على جهاز العميل، يتم طلب الحزمة بشكل روتيني للتثبيت/التحديث عبر كمبيوتر الخادم؛
  • يتم تنزيل الحزمة المطلوبة بواسطة الخادم، ويتم تخزينها في وحدة تخزين مؤقت مخصصة لذلك، ثم تصبح متاحة لجميع العملاء الآخرين؛
  • يعمل خادم الويب Apache كموزع للحزم للعملاء، لذا يلزم تثبيته.

لذا، تحتاج أولاً إلى تثبيت كل ما تحتاجه، أي خادم الويب وأداة التخزين المؤقت للحزمة نفسها:

$ sudo apt-get install apache2 apt-cacher

عند التثبيت apt-cacherسيتم عرض مربع حوار الإعدادات الذي يمكنك من خلاله تكوين السلوك المطلوب للأداة المساعدة، على سبيل المثال، ضبط التشغيل التلقائي والعمل في الوضع الخفي. أيضا هؤلاء وبعض الآخرين إعدادات مهمةيمكن القيام بذلك (على سبيل المثال باستخدام محرر) في ملف التكوين /etc/default/apt-cacher. لتمكين التشغيل التلقائي لـ apt-cacher، تحتاج إلى تعيين معلمة AUTOSTART على "1":

$ Sudo nano /etc/default/apt-cacher . . . # اضبط على 1 لتشغيل apt-cacher كبرنامج خفي مستقل، اضبط على 0 إذا كنت تريد # تشغيل apt-cacher من /etc/inetd أو في وضع CGI (مهمل). وبدلاً من ذلك، فإن استدعاء "dpkg-reconfigure apt-cacher" من شأنه أن يتولى المهمة نيابةً عنك. # التشغيل التلقائي = 1 . . .

$ sudo nano /etc/apt-cacher/apt-cacher.conf . . . ## قم بإلغاء التعليق وضبط نطاق IP ## المسموح_المضيفين = 192.168.1.105 - 192.168.1.125 #denied_hosts = . . .

كما ترون، يتم الإشارة ببساطة إلى نطاق عناوين IP المطلوبة. بعد حفظ الإعدادات التي قمت بها، تحتاج إلى إعادة تشغيل خادم الويب Apache:

إعادة تشغيل خدمة Sudo $ Apache2

$ sudo systemctl أعد تشغيل Apache2

أنت الآن بحاجة إلى إخبار العملاء بالمكان الذي يتعين عليهم الذهاب إليه لتثبيت الحزم والتحديثات. للقيام بذلك، على الأجهزة العميلة، تحتاج إلى إنشاء الملف /etc/apt/apt.conf.d/01proxy باستخدام نفس الملف محرر نانو:

$ سودو نانو /etc/apt/apt.conf.d/01proxy

وأضف إليها سطرًا مع التعليمات التالية:

الحصول على::http::Proxy "http://192.168.1.100:3142";

هنا كعنوان الخادم الذي تم تثبيته وتشغيله apt-cacherيشار إلى 192.168.1.100. بالطبع، يمكن أن يكون هذا أي عنوان آخر تم تكوينه لهذا الخادم.

يمكنك الآن التحقق من تشغيل المستودع المحلي (أو بالأحرى مستودع بعيد، ولكن يمكن الوصول إليه من خلال وكيل) عن طريق تشغيل الأمر لتحديث البيانات حول الحزم المتاحة:

$ sudo apt-get update

APT-MIRROR – مستودع محلي كامل

هذه الطريقة أكثر "تقدمًا" مقارنة بالاستخدام apt-cache.لأنه يفترض وجود مستودع حزم كامل مباشرة على الكمبيوتر/الخادم المحلي أو على الشبكة المحلية. ولكن أولا، يجب إنشاء مثل هذا المستودع عن طريق تنزيل جميع الحزم اللازمة فيه. كما هو الحال مع apt-cache، يعمل خادم الويب كموزع للحزم. الإجراء الخاص بإعداد مستودع محلي باستخدام الأداة المساعدة apt-mirror هو كما يلي:

  1. تثبيت الحزم الضرورية: apt-mirror وApache2؛
  2. الخلق التخزين المحليوإعداد مصادر التنزيل، وتحميل الحزم إلى المستودع؛
  3. فتح الوصول إلى التخزين الجاهز للعملاء؛
  4. تكوين العملاء لاستخدام المستودع المحلي.

لذلك، قم بتثبيت الأدوات المساعدة والحزم اللازمة:

$ sudo apt-get install apache2 apt-mirror

$ سودو مكدير /localrepo

الآن في ملف التكوين /etc/apt/mirror.list، تحتاج إلى تحرير السطر الذي يحتوي على تعليمات "set base_path". من خلال تحديد الدليل الذي تم إنشاؤه حديثًا للتخزين:

$ sudo nano /etc/apt/mirror.list ############ config ################## # set base_path /localrepo

بعد ذلك، في نفس الملف، يمكنك إضافة المستودعات اللازمة التي سيتم تنزيل الحزم منها. يمكنك نسخ جميع المستودعات القياسية من /etc/apt/sources.list.
بعد حفظ الإعدادات، يمكنك البدء في تنزيل الحزم باستخدام الأمر:

$ سودو ملائمة للمرآة

قد يستغرق منذ وقت طويل، حسب سرعة اتصالك بالإنترنت. يعد هذا الأمر مفيدًا جدًا لإضافته إلى قائمة الإجراءات العادية بحيث يتم تحديث المستودع المحلي تلقائيًا.

بمجرد تنزيل المستودع المحلي بالكامل، يجب أن تكون محتوياته كما يلي:

$ ls /localmirror مرآة skel var

لتسهيل إعداد العملاء لاحقًا، من المفيد إنشاء وحدة تخزين موجودة في دليل النسخة المتطابقة:

$ cd /localrepo $ sudo ln -s /localrepo/mirror/us.archive.ubuntu.com/ubuntu/ubuntu

سيتم الآن استخدام رابط ubuntu لتعيين المستودعات من جانب العميل عن طريق تحرير الملف /etc/apt/sources.list:
بعد فتح هذا الملف (باستخدام الأمر) باستخدام محرر nano، تحتاج الآن إلى إضافة المستودعات التالية إليه:

Deb http://192.168.1.100/ubuntu Trusty Universe deb http://192.168.1.100/ubuntu Trusty Main Restricted Deb http://192.168.1.100/ubuntu Trusty-updates Main Restricted . . .

هنا العنوان 192.168.1.100 هو عنوان IP للكمبيوتر الذي تم إنشاء المستودع المحلي وتكوينه عليه.
الآن، يمكنك استخدام أوامر apt العادية للعمل مع الحزم:

$ sudo apt-get update $ sudo apt-get install package_name

خاتمة

في الختام، تجدر الإشارة إلى أن طرق تنظيم المستودعات المحلية الموضحة أعلاه مناسبة للأنظمة المبنية على تنسيق حزمة دبيان. بالنسبة للأنظمة المعتمدة على RPM، ينبغي استخدام أدوات أخرى.

إذا وجدت خطأ، يرجى تحديد جزء من النص والنقر عليه السيطرة + أدخل.

إن التحول التدريجي للمؤسسة إلى GNU/Linux يخلق الحاجة إلى تغييرات مقابلة في البنية التحتية. نقوم اليوم بحل مشكلة التحديث العالمي للأجهزة العميلة من خلال إنشاء مستودع محلي. تم توثيق العملية في البداية كتذكير للمستقبل، لذا أعتذر مقدمًا عن أي تناقض في النص. لذا.
عليك أولاً أن تقرر أفضل السبل للقيام بذلك. يحدد الإنترنت اثنين من المفضلة rsyncو com.debmirror. اخترت الأخير بسبب مرونته الأكبر.

1. الحصول على المفاتيح

لإنشاء نسخة متطابقة من المستودع، تحتاج إلى الحصول على "مفتاح التوقيع التلقائي لأرشيف Ubuntu" " للقيام بذلك، في المحطة من المستخدم المتميز، أدخل:
gpg --no-default-keyring --keyring Trustkeys.gpg --recv-keys 437D05B5

2. تحضير المساحة

إنشاء مجلد للمستودع:
Sudo mkdir /path/to/repository
مهم!خذ عناء التأكد من وجود مساحة خالية في المسار المحدد. حتى اثنين من البنى i386و AMD64سوف يستغرق كمية لا بأس بها منه.

3. استلام الطرود

تتم عملية النسخ على ثلاث مراحل:
  • إزالة الملفات غير المعروفة (معطل بواسطة الخيار --nocleanupأقل)؛
  • إنشاء قائمة بأرشيفات الفهرس والتحقق من توفرها في المستودع المحلي. لتنفيذ ما ورد أعلاه، سنقوم بإنشاء ملف repo_update.shمع المحتوى التالي.
  • #!/بن/ش
    # هذا هو تكوين المستودع الخاص بنا. اعتمادا على المعلمات المحددة
    #هنا سنحصل على المحتوى الذي نحتاجه.

    خيار #التنظيف. ممكّن افتراضيًا. بعد تنزيل الحزم، يتم حذف الحزم السابقة
    #الإصدارات. لتعطيل هذا الخيار، يلزم استخدام المعلمة --nocleanup
    Clean=--nocleanup
    #مصدر الخيار. تحميل رموز مصدر الحزمة. إذا كنت لا تستخدم
    #رموز المصدرلدراسة وتعديل التطبيقات (وهو أمر نموذجي لـ
    #التوزيعات الثنائية)، فلا تتردد في ضبط خيار --no-source
    src=--source

    #يستضيف. اسم الخادم الذي نحصل منه على الحزم.
    اسم الخادم=mirror.yandex.ru

    #جذر. الدليل الجذر على الخادم الذي اخترناه.
    rdir=/ubuntu

    #اسم إصدار أوبونتو. إعدادات الإصدار 10.04.
    الإصدار = واضح، منافذ خلفية واضحة، مقترحة واضحة، أمان واضح، تحديثات واضحة

    #أقسام.
    القسم = رئيسي، مقيد، الكون، الكون المتعدد

    #بروتوكول المزامنة. يدعم Debmirror الطرق التالية: http،
    #hftp، ftp، rsync
    sync_protocol=rsync

    #بنيان. إذا كنت تستخدم أنظمة 32 أو 64 بت حصريًا.
    #يمكن إزالة أحد البنى. وأيضًا، إذا تم استخدام بنيات أخرى،
    #يجب إضافتهم.
    القوس=i386,amd64

    #موقع المستودع يرجى الإشارة المجلد المحلي، مخلوق. في النقطة 2.
    path=/path/to/repository

    Debmirror --progress --verbose $clean $src --md5sums --host=$servername --root=$rdir \
    --dist=$release -s=$section --method=$sync_protocol -a=$arch $path

    الآن دعونا نضعه في الدليل /usr/local/binوجعلها قابلة للتنفيذ.
    chmod +x repo_update.sh
    Sudo cp repo_update.sh /usr/local/bin/

    بعد ذلك، قم بتشغيل البرنامج النصي الناتج وانتظر حتى تكتمل العملية. هذه العملية طويلة جدًا. يعتمد وقت التنفيذ بشكل كبير على عرض قناة الإنترنت الخاصة بك.
    Sudo /usr/local/bin/repo_update.sh
    انتباه!يتجاوز حجم التنزيل عشرات الجيجابايت، ونادرًا ما يكون الإنترنت الحكومي غير محدود. علاوة على ذلك، com.debmirrorحساس لاستقرار الاتصال، و120 ثانية من التوقف وسيتعين أن يبدأ كل شيء من جديد.

    4. إعداد خادم الويب

    من أجل عدم إجراء رقصات غير ضرورية مع الدف، سنختار بروتوكولا http، كطريقة تقليدية لتوفير الوصول إلى المستودع. اختيار خادم الويب لك. من المفضلة ngnix, أباتشيو com.lighttpd، اخترت الأخير بسبب قلة الخبرة به (ممتع ومفيد، نعم). لذا.

    تثبيت الخادم.

    Sudo apt-get install lighttpd
    كل شيء بسيط هنا. إذا كنت لا تخطط لاستخدامه كما شبكة الاتصالات العالميةدليل آخر غير الدليل الافتراضي، فلن يحتاج الخادم إلى التكوين. كل ما عليك فعله هو إنشاء رابط رمزي في الدليل /فار/www
    ln -s /path/to/repository /var/www/ubuntu

    دعونا نتحقق من توفر المستودع من المتصفح: http:// / أوبونتو /

    5. إعداد العميل

    هنا سوف نستخدم خدعة صغيرة. من أجل عدم إجراء تغييرات على /etc/apt/sources.list (أنت لا تعرف أبدا ما سيحدث). أضف إلى الملف / الخ / المضيفينبضعة أسطر.
    www.archive.ubuntu.com
    Security.ubuntu.com
    ملاحظة: رهناً بالتوافر خوادم DNSويمكنك تسجيل كل هذا فيه، وتسجيل العناوين الحقيقية للأسماء المذكورة أعلاه على خادم المستودع.

    6. الأتمتة

    والآن الجزء أحلى. دعونا نجعل كل شيء يدور بأنفسنا.
    6.1 جزء الخادم
    في النقطة رقم 3، قمنا بإنشاء برنامج نصي لتلقي الحزم من خلاله. دعونا نقوم بتكوين التشغيل التلقائي باستخدام البرنامج الخفي كرون.
    سودو كرونتاب -e

    الذي نضيف إليه السطر العزيز:

    0 0 * * * /usr/local/bin/repo_update.sh
    الآن، كل يوم في تمام الساعة 0:00، سيقوم البرنامج النصي الخاص بنا بجميع الأعمال الروتينية نيابةً عنا.

    6.2 جزء العميل
    لنقم بإنشاء برنامج نصي على العملاء system_upd.shفي الدليل /usr/local/binالمحتوى التالي:
    #!/بن/ش
    apt-get -y update && apt-get -y ترقية && apt-get -y clean

    دعونا لا ننسى أن نجعله قابلاً للتنفيذ.
    sudo chmod +x /usr/local/bin/system_upd.sh

    ثم نفتح كرون:
    سودو كرونتاب -e

    وأضف السطر:
    40 17 * * * /usr/local/bin/system_upd.sh

    الآن، كل يوم في تمام الساعة 17:40، سيقوم النظام باستطلاع مستودعنا للحصول على التحديثات والتحديثات في حالة العثور عليها.

    انتباه!عند العمل مع crontabلا تنس أنه بعد سطور المهام يجب أن يكون هناك سطر فارغ، وهو ما يشار إليه بالعلامة " # ".
    ملاحظة:: أعتذر عن عدم وجود الصور المرفقة، ولكن في هذه الحالة أعتقد أن وجودها ببساطة غير مناسب.

    بحيث إذا حدث شيء فجأة نظام لينكسلا تقم بتحميل البرامج مرة أخرى، بل قم بالتثبيت مما قمت بتنزيله بالفعل.

    لذلك فكرت في كيفية التأكد من أنه يمكننا تثبيت هذه البرامج التي تم تنزيلها بالطريقة الأكثر شيوعًا باستخدام الأمر شقة-الحصول على؟ بالتفكير في هذا، توصلت إلى فكرة لماذا لا يتم إنشاء مستودع محلي باستخدام نفس هذه الحزم؟ اعتقدت، بحثت في جوجل، أخذت الأداة الرئيسية مسؤول النظام، المشرف الدف وبدأ في القيام بذلك.

    لذا فإن حزم deb الخاصة بي موجودة في نفس المكان الذي تركتها فيه قبل إعادة تثبيت النظام كتجربة، أي في الدليل الرئيسي في المجلد ديب. لدي هذا /الصفحة الرئيسية/دانتي/deb، لقد وصفت كل هذا، ولكن لديك نفس الدليل الذي قمت بحفظ الحزم فيه. افتح الوحدة الطرفية وانتقل إلى المجلد الذي يحتوي على حزم deb. في حالتي، يبدو الأمر في المحطة كما يلي:

    cd /home/dante/deb

    يجب عليك إدخال المسار إلى حزم deb الخاصة بك.
    بعد الانتقال إلى المجلد الذي يحتوي على حزم deb المحفوظة. أدخل الأمر التالي:

    حزم sudo apt-ftparchive ./ |gzip -9 > Packages.gz

    بعد ذلك، أدخل كلمة المرور وانتظر حتى يتم إنشاء الملف الحزم.gz
    الآن تم تعريف مستودعنا عمليًا، ولم يتبق سوى إضافته إليه source.list. لنأخذ المحطة مرة أخرى. افتح الملف:

    سودو نانو /etc/apt/sources.list

    أملك هذا الملفيبدو مثل هذا:

    ملف deb:///home/dante/deb ./
    # deb cdrom:/ oneiric الرئيسي مقيد

    # راجع http://help.ubuntu.com/community/UpgradeNotes لمعرفة كيفية الترقية إلى
    # الإصدارات الأحدث من التوزيعة.
    deb http://archive.ubuntu.com/ubuntu oneiric الرئيسي مقيد
    deb-src http://archive.ubuntu.com/ubuntu oneiric مقيد الكون المتعدد الرئيسي # تمت الإضافة بواسطة خصائص البرمجيات

    ## تم إصدار تحديثات إصلاح الأخطاء الرئيسية بعد الإصدار النهائي لـ
    ## توزيع.
    deb http://archive.ubuntu.com/ubuntu oneiric-updates مقيد بشكل رئيسي
    deb-src http://archive.ubuntu.com/ubuntu oneiric-updates مقيد الكون المتعدد الرئيسي # تمت الإضافة بواسطة خصائص البرمجيات


    ##فريق. يرجى أيضًا ملاحظة أن البرامج الموجودة في الكون لن تتلقى أيًا منها
    ## مراجعة أو تحديثات من فريق أمان Ubuntu.
    deb http://archive.ubuntu.com/ubuntu oneiric Universe
    deb http://archive.ubuntu.com/ubuntu oneiric-updates Universe

    ##ن.ب. البرنامج من هذا المستودع غير مدعوم تمامًا بواسطة Ubuntu
    ## فريق، ولا يجوز أن يكون تحت ترخيص مجاني. يرجى إرضاء نفسك فيما يتعلق
    ## حقوقك في استخدام البرنامج. يرجى أيضًا ملاحظة أن البرنامج الموجود في
    ## لن يتلقى الكون المتعدد أي مراجعة أو تحديثات من Ubuntu
    ##فريق أمني.
    deb http://archive.ubuntu.com/ubuntu oneiric multiverse
    deb http://archive.ubuntu.com/ubuntu oneiric-updates multiverse

    ##ن.ب. ربما لم يتم اختبار البرنامج من هذا المستودع
    ## على نطاق واسع مثل ما ورد في الإصدار الرئيسي، على الرغم من أنه يتضمن
    ## الإصدارات الأحدث لبعض التطبيقات التي قد توفر ميزات مفيدة.
    ## يرجى أيضًا ملاحظة أن البرامج الموجودة في المنفذ الخلفي لن تتلقى أي مراجعة
    ## أو تحديثات من فريق أمان Ubuntu.
    deb http://archive.ubuntu.com/ubuntu oneiric-backports الكون المتعدد الرئيسي المقيد
    deb-src http://archive.ubuntu.com/ubuntu oneiric-backports الكون المتعدد الرئيسي المقيد # تمت الإضافة بواسطة خصائص البرمجيات

    deb http://archive.ubuntu.com/ubuntu oneiric-security مقيد بشكل رئيسي
    deb-src http://archive.ubuntu.com/ubuntu oneiric-security الكون المتعدد الرئيسي المقيد # تمت الإضافة بواسطة خصائص البرمجيات
    deb http://archive.ubuntu.com/ubuntu oneiric-security Universe
    deb http://archive.ubuntu.com/ubuntu oneiric-security multiverse

    ## قم بإلغاء التعليق على السطرين التاليين لإضافة برنامج من Canonical".
    ## مستودع "الشريك".
    ## هذا البرنامج ليس جزءًا من Ubuntu، ولكنه مقدم من Canonical و
    ## البائعين المعنيين كخدمة لمستخدمي Ubuntu.
    deb http://archive.canonical.com/ubuntu شريك oneiric
    deb-src http://archive.canonical.com/ubuntu شريك oneiric

    ## هذا البرنامج ليس جزءًا من Ubuntu، ولكن يتم تقديمه بواسطة جهة خارجية
    ## المطورين الذين يرغبون في شحن أحدث برامجهم.
    deb http://extras.ubuntu.com/ubuntu oneiric main
    deb http://archive.ubuntu.com/ubuntu/ اقترح Oneiric الكون المتعدد الرئيسي المقيد
    deb-src http://archive.ubuntu.com/ubuntu/ اقترح Oneiric الكون المتعدد الرئيسي المقيد
    deb-src http://extras.ubuntu.com/ubuntu oneiric main

    من أجل إضافة مجلدنا الذي يحتوي على حزم deb إلى مصادر التطبيق، نحتاج إلى إضافة السطر التالي.

    ملف deb:///home/dante/deb ./

    من الأفضل إضافته إلى أعلى الملف، حيث يقوم النظام أولاً بالاستعلام عن تلك المستودعات الموجودة في البداية. ما فعلته، كما رأيت بالفعل. قد يكون مسار المجلد الخاص بك مختلفًا، فقط تذكر في النهاية ./

    تمت إضافة جميع المستودعات. يمكنك إلقاء نظرة على هذا في مصدر التطبيق. الآن كل ما عليك فعله هو تحديث قوائم الحزم. يمكن القيام بذلك في المحطة باستخدام الأمر:

    سودو الرابطة بين الحصول على التحديث

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

    كما تعلم، ينفذ Ubuntu تخزينًا مركزيًا للمعلومات حول جميع البرامج الرئيسية في مكان واحد، من أجل البحث الأكثر ملاءمة والتثبيت اللاحق. هذا المكان هو مدير الحزم Synaptic. (النظام -> الإدارة -> مدير الحزم Synaptic) لتثبيت البرنامج، ما عليك سوى العثور عليه في القائمة ووضع علامة عليه للتثبيت، ثم سيتم تنزيل البرنامج تلقائيًا من الإنترنت وتثبيته.

    يتم تخزين البرامج الأساسية التي قد تكون مفيدة عند العمل في نظام التشغيل Ubuntu في ما يسمى بالمستودع الرسمي خادم أوبونتو. في كل مرة تتحقق فيها من تثبيت برنامج في مدير الحزم Synaptic، يتم تنزيله أولاً.

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

    الحل لهذه المشكلة هو إنشاء مستودع محلي، أي. نسخة كاملة أو جزئية من المستودع الرسمي الموجود على القرص الصلب الخاص بك. وبالتالي، بمجرد تنزيل المستودع بأكمله، لن تعتمد بعد الآن على الإنترنت.

    لذلك دعونا نبدأ.

    1. لإنشاء نسخة (شريحة) من المستودع على محرك الأقراص الثابتة لديك، يوجد برنامج خاص: مرآة debmirror. وفقا لذلك، تحتاج أولا إلى تثبيته من نفس مدير الحزم Synaptic

    أو عن طريق كتابة الأمر في المحطة:

    sudo apt-get install debmirror

    2. قم بإنشاء مجلد في الدليل الرئيسي حيث سيتم تخزين قسم من المستودع (أو حتى عدة أقسام)، على سبيل المثال، دعنا نسميه المستودعات.

    دعنا نذهب إلى مجلد المستودعات:

    وقم بإنشاء ملف نصي فيه باسم archive.ubuntulinux.org.sh:

    gedit archive.ubuntulinux.org.sh

    الصق ما يلي في هذا الملف:

    #!/bin/bash -x
    /usr/bin/debmirror --nosource -m --passive --host=archive.ubuntulinux.org \
    --root=ubuntu --method=ftp --progress \
    --dist=hardy,hardy-security,hardy-updates,hardy-backports \
    --ignore-release-gpg --section=main,restricted,multiverse,universe \
    --arch=i386 /full/path/to/folder/where/need/to/download/repository/

    يجب أن يبدو المسار الكامل كما يلي: /home/aidsoid/Repositories/ru.archive.ubuntu.com/

    وحفظه. بعد الحفظ، تحتاج إلى جعل الملف قابلاً للتشغيل (chmod +x archive.ubuntulinux.org.sh).

    سيقوم المثال أعلاه بتنزيل مستودع Ubuntu 8.04 (Hardy Heron) إذا كنت لا تزال تستخدمه النسخة القديمة Ubuntu 7.10 (Gutsy Gibbon)، فأنت بحاجة إلى تعديل هذا البرنامج النصي قليلاً، على وجه الخصوص، تحتاج إلى تغيير قيم المعلمة --dist من هاردي إلى جريء. يجب عليك أيضًا الانتباه إلى المعلمة --arch، التي تشير إلى بنية جهاز الكمبيوتر الخاص بك؛ وتشير القيمة i386 إلى أنه سيتم تنزيل الحزم لجهاز كمبيوتر ببنية x86. يمكن أيضًا أن تكون هذه المعلمة amd64 لأجهزة كمبيوتر AMD أو Intel 64 بت.

    4. حسنًا، هذا كل شيء، في الواقع، يمكنك الآن تشغيل البرنامج النصي للتنفيذ. للقيام بذلك، في وحدة التحكم، أثناء وجودك في مجلد المستودعات، اكتب الأمر التالي:

    ./archive.ubuntulinux.org.sh

    سيبدأ البرنامج النصي في العمل. يشغل المستودع بأكمله حوالي 20 إلى 30 غيغابايت، لذا تأكد من أن لديك مساحة خالية على القرص قبل التنزيل. يمكنك مقاطعة البرنامج النصي دون ألم في أي وقت عن طريق الضغط على مجموعة المفاتيح Ctrl + C. عند تشغيل البرنامج النصي مرة أخرى، سيستمر في تنزيل الحزم التي لم يتم تنزيلها. كما أن تشغيل البرنامج النصي مرة أخرى سيؤدي إلى تحديث مستودعك المحلي، أي. يتم التحقق من وجود إصدارات جديدة من البرامج ويتم تنزيلها أيضًا.

    ملاحظة: يمكن لمستخدمي Ubuntu 7.10 أن يتوقعوا واحدًا صغيرًا شرك, مستخدمي أوبونتو 8.04 لا يوجد ما يدعو للقلق. يوجد خطأ في debmirror يؤدي إلى إزالة مجلد التجمع من المستودع المحلي عند تشغيل البرنامج النصي مرة أخرى. يجب تصحيحه قبل تشغيل البرنامج النصي. وصف الخطأ هنا: https://bugs.launchpad.net/ubuntu/+source/debmirror/+bug/136634

    يمكن حل الخطأ بسهولة:
    $ sudo gedit /usr/bin/debmirror
    استبدل السطر المحلي $/="\n\n"; إلى المحلي $/="\n"; وحفظ الملف. الآن سيتم تحديث المستودع دون وقوع أي حادث.

    5. بعد تنزيل البرنامج النصي (قد يستغرق ذلك وقتًا طويلاً)، يمكنك استخدامه عن طريق إضافة سطر deb إلى مصادر التطبيق. (النظام -> الإدارة -> مصادر التطبيق)

    يجب أن يشير سطر deb إلى مجلد المستودع ويجب أن يبدو بالشكل التالي:
    ملف deb:///home/aidsoid/Repositories/ru.archive.ubuntu.com/ هاردي الرئيسي الكون المتعدد المقيد