سؤال ماذا تفعل "sudo apt-get update"؟


أنا أتساءل ماذا sudo apt-get update هل؟

ما الذي يتم تحديثه؟


450
2017-11-27 00:07


الأصل




الأجوبة:


شيء صغير، apt-get update لا يقوم بالفعل بتثبيت إصدارات جديدة من البرنامج. بدلاً من ذلك ، يقوم بتحديث قوائم الحزم للترقيات للحزم التي تحتاج إلى ترقية ، بالإضافة إلى الحزم الجديدة التي وصلت للتو إلى المستودعات.

  • apt-get update تنزيل قوائم الحزم من المستودعات و "التحديثات" عليها للحصول على معلومات عن أحدث إصدارات الحزم واعتمادياتها. وسوف نفعل ذلك لجميع المستودعات و PPAs. من عند http://linux.die.net/man/8/apt-get:

    تستخدم لإعادة مزامنة ملفات فهرس الحزمة من مصادرها. يتم جلب فهارس الحزم المتوفرة من الموقع (المواقع) المحددة في /etc/apt/sources.list(5). يجب إجراء التحديث دائمًا قبل الترقية أو الترقية عن بُعد.

  • apt-get upgrade سيجلب إصدارات جديدة من الحزم الموجودة على الجهاز إذا عرفت APT عن هذه الإصدارات الجديدة عن طريق apt-get update.

    من عند http://linux.die.net/man/8/apt-get:

    تستخدم لتثبيت أحدث إصدارات جميع الحزم المثبتة حاليًا على النظام من المصادر المذكورة في /etc/apt/sources.list(5). يتم استرجاع وترقية الطرود التي تم تركيبها حالياً مع الإصدارات الجديدة المتاحة ؛ تحت أي ظرف من الظروف يتم تثبيت الحزم المثبتة حاليا ، ولا الحزم التي لم يتم تثبيتها بالفعل وتثبيتها. سيتم ترك الإصدارات الجديدة من الحزم المثبتة حاليًا والتي لا يمكن ترقيتها دون تغيير حالة تثبيت حزمة أخرى في الإصدار الحالي. [التشديد على الألغام] يجب إجراء تحديث أولاً حتى يعرف apt-get أن الإصدارات الجديدة من الحزم متوفرة.

  • apt-get dist-upgrade سوف تفعل نفس المهمة التي يقوم بها apt-get upgradeبالإضافة إلى أنه سيتعامل بذكاء مع الاعتمادات ، لذا قد يزيل الحزم القديمة أو يضيف حزمًا جديدة. انظر هنا: ما المقصود بالترقية "dist-upgrade" ولماذا تقوم بترقية أكثر من "الترقية"؟

    من عند http://linux.die.net/man/8/apt-get:

    بالإضافة إلى أداء وظيفة الترقية ، فإن هذا الخيار يعالج بذكاء الاعتمادات المتغيرة مع الإصدارات الجديدة من الحزم ؛ تمتلك apt-get نظام حل النزاعات "الذكي" ، وستحاول ترقية الحزم الأكثر أهمية على حساب المنتجات الأقل أهمية ، إذا لزم الأمر.   ال /etc/apt/sources.list(5) الملف يحتوي على قائمة بالمواقع من   لاسترداد ملفات الحزمة المطلوبة. راجع أيضًا apt_preferences (5) لإنشاء آلية للإفراط في تعيين الإعدادات العامة للحزم الفردية.

يمكنك الجمع بين الاوامر مع && على النحو التالي:

sudo apt-get update && sudo apt-get install foo bar baz foo-dev foo-dbg

أو للحصول على أحدث الإصدارات الممكنة حسب متطلبات إصدار التبعيات:

sudo apt-get update && sudo apt-get dist-upgrade

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


484
2017-11-27 00:17



هل نحتاج دائمًا للتشغيل sudo apt-get update الأمر عندما نثبت الحزم؟ ما هو العيب إذا لم نفعل ذلك؟ - JohnnyQ
JohnnyQ إذا لم تقم بتشغيل هذا الأمر ، فقد تحصل على حزمة قديمة تم تثبيتها. - hexafraction
آه يبدو وكأنه مجرد شيء اتفاقية بعد ذلك. لذا أفترض أنه ليس ضروريًا حقًا خاصة إذا كنت تستخدم حزم أساسية فقط مع الأوامر الأساسية التي لا يتم تحديثها عادة. المشكلة في وضعي هو ذلك apt-get updateيستغرق بعض الوقت ، لا يزال الإنترنت هنا بدائيًا. - JohnnyQ
JohnnyQ بالنسبة لبعض الطرود ، من المهم أن تكون قوائم حزمك محدثة. تتضمن أمثلة هذه الحزم برامج الأمان الهامة. - hexafraction
JohnnyQ ، إذا كان تحديث apt-get بطيئًا ، فستكون عملية الترقية من نوع apt-get بطيئة أيضًا ، لذا فهذا ليس حجة حقاً بعدم إجراء تحديث apt-get أولاً. راجع للشغل ، يمكنك تسريع تحديث apt-get الخاص بك من خلال النظر في المجلد /etc/apt/sources.d/ لمعرفة ما إذا كان لديك أي مستودعات مخصصة مضافة وأحد تلك قد تكون غير مستجيبة ، مما يؤدي إلى إبطاء عملية التحديث بالكامل. - Mladen B.


يمكن أن يوفر لك بحث Google التعريف الخاص بأي أمر طرفي تقريبًا ، كما يمكن أن يساعد - في الأداة الطرفية. فمثلا،

apt-get --help

sudo apt-get update في الأساس ثلاثة أجزاء:

sudo

ينفذ الأمر التالي مع قدرات المستخدم (الجذر). تتطلب العديد من الإجراءات التي تتطلب تعديل ملفات النظام أو تثبيت التطبيقات أذونات إضافية للانتقال.

apt-get

هي أداة سطر الأوامر التي يستخدمها Ubuntu لتثبيت حزم البرامج وإزالتها وإدارتها

update

هو خيار لبرنامج apt-get لاستخدام التحديثات التي ترد في قوائم الحزم من خادم على الإنترنت. توفر قوائم الحزمة الأداة المساعدة apt-get بمعلومات مهمة حول حزم البرامج التي يمكنك تثبيتها باستخدام apt-get. تستخدم apt-get هذه القوائم لتحديد البرنامج المراد تثبيته عند إعطاء أمر للتثبيت. فمثلا

sudo apt-get install guake

سيقوم بتثبيت محطة Guake كما هو مدرج حاليًا في قوائم البرامج المحلية للكمبيوتر الخاص بي. ومع ذلك ، قد لا يكون هذا هو الإصدار المناسب ، أو إذا كان البرنامج جديدًا ، فقد لا يكون متاحًا على الإطلاق. وبالتالي ، عند تثبيت البرنامج باستخدام apt-get ، فإنك عادةً تكتب

sudo apt-get update
sudo apt-get install <package>

ضمان أن apt-get يعرف لتثبيت أحدث إصدار من الحزمة.

مصدر آخر مفيد للمعلومات هو help.ubuntu.com موقع. على سبيل المثال ، إذا بحثت عن هذا الموقع apt-get سوف تجد AptGet / كوميديا كأحد النتائج.


42
2017-11-27 00:16



أليكس ، هل يمكنني استخدام الأمر بشكل أساسي كما كنت تقول: "apt-get update apt-get install <package>" في الأساس يمكن تنفيذ 2 أشياء فقط كتابة الأوامر 2 معا مثل هذا؟ - Elysium
Elysium نعم ، إذا كان لديك && بينهما كما sudo apt-get update&&sudo apt-get install foo bar baz - hexafraction
عن طريق && يعني أن الأمر الثاني لن يعمل إلا إذا نجح الأمر الأول. إذا كنت لا تهتم بنجاح الأمر الأول ، فاستخدم ; في حين أن. - Flimm
قادني بحث Google إلى هذا السؤال / الإجابة. لمعلوماتك فقط ؛) - teewuane


جري sudo apt-get update ببساطة يتأكد أن قائمة الحزم الخاصة بك من جميع المستودعات ومستودعات PPA محدثة. إذا لم تقم بتشغيل هذا الأمر ، فقد تحصل على إصدارات أقدم من حزم مختلفة تقوم بتثبيتها ، أو أسوأ من ذلك ، مشكلات التبعية. إذا كنت قد قمت للتو بإضافة PPA ولم يتم تحديثها ، فلن يعمل أي شيء من PPA على الإطلاق حيث لن يكون لديك قائمة حزم من PPA أو مستودع التخزين.

باختصار: إنه جدا أوصت لتشغيل sudo apt-get update قبل التثبيت ، ولكن ذلك قد يتم تخطيها إذا كنت مضغوطًا حقًا للوقت إلا إذا قمت بتغيير المستودعات أو PPAs منذ آخر apt-get update.


18
2018-06-05 23:21





أنت في حاجة لتشغيل apt-get update مرة واحدة قبل تثبيت الحزم الجديدة حيث يقوم هذا بتحديث معلومات مستودع التخزين المحلي. إذا كنت ستقوم بتثبيت حزم متعددة بعد فترة وجيزة من بعضها البعض ، فلا تحتاج إلى تشغيل apt-get update. أيضا ، يمكنك تثبيت حزم متعددة في وقت واحد إذا قمت بكتابتها sudo apt-get install package1 package2...


12
2018-06-05 23:23



خدعة لطيفة لذلك! - Emerson Hsieh


يقوم بتحديث قائمة البرامج المتاحة على جهاز الكمبيوتر الخاص بك.

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

لاحظ أن update يختلف عن upgrade. التحديث ، كما ذكر أعلاه ، سوف يجلب البرمجيات المتاحة وتحديث القوائم في حين upgrade سيقوم بتثبيت إصدارات جديدة من البرامج المثبتة على الكمبيوتر الخاص بك (تحديثات البرامج الفعلية).

لترقية البرنامج الخاص بك بالفعل (وليس "تحديث" القوائم) ، يمكنك تنفيذ الأمر

sudo apt-get upgrade

والذي يتم تنفيذه عادة بعد "تحديث".


10
2017-11-27 00:21



ما هو sudo apt-get install لذلك؟ تثبيت حزم معينة بدلا من الترقية العامة؟ - Peter Mortensen


عند تثبيت الحزم من سطر الأوامر مع sudo apt-get install ... (أو sudo aptitude install ...) ، أو عند ترقيتها من سطر الأوامر (مع upgrade أو dist-upgrade بدلا من install) ، يتم الحصول على المعلومات التالية من تكوين النظام المحلي الخاص بك ، و ليس من الإنترنت:

  1. ما هي الحزم المتاحة

  2. ما إصداراتها متوفرة

  3. حيث يجب استرداد الحزم المتوفرة من

جري sudo apt-get update (أو sudo aptitude update) تحديث هذا على النظام المحلي الخاص بك. هذه هي الخطوة التي تقوم بالفعل باسترداد معلومات حول الحزم التي يمكن تثبيتها ، بما في ذلك ما هي التحديثات لحزم الحزم المثبتة حاليا المتاحة، من مصادر الإنترنت.

عند تثبيت الحزم باستخدام واجهة المستخدم الرسومية (مدير التحديث ، أو مركز البرامج ، أو مدير الحزم Synaptic) ، فإن عمل sudo apt-get update يتم تلقائيا. عندما تقوم بتثبيت الحزم من سطر الأوامر ، فهي ليست كذلك ، ويجب عليك دائمًا القيام بذلك بنفسك ما لم تفعل ذلك في الآونة الأخيرة.

لأنه يتم الحصول على معلومات حول إصدارات الحزم التي تم تحديثها عن طريق التشغيل sudo apt-get update (أو sudo aptitude update) ، فمن المستحسن تشغيل هذا قبل تثبيت أي حزمة ، وضروريًا لتشغيله لتثبيت آخر التحديثات ، حتى لو لم تقم بإضافة أو إزالة أي مصادر برمجيات (مثل PPA).

يرجى ملاحظة أنه إذا كنت ستقوم بتنفيذ عمليات إدارة حزم متعددة في نفس الوقت ، فلن تحتاج إلى تشغيل sudo apt-get update قبل كل واحد. فقط إذا لم يتم تحديث المعلومات لفترة ، يجب عليك التأكد من تشغيلها.


4
2018-06-05 23:59





كما ذكرت إليا كاجان أعلاه ، سوف تفعل توقع أنه سيتم تشغيل تطبيق واجهة المستخدم الرسومية apt-get update قبل apt-get install / apt-get upgrade، لكنني اكتشفت خطأً مثيراً 404 ، على جهاز VM جديد هجومي - أمني نسبيًا ، كان لي متلبسًا لمدة دقيقة.

من سطر الأوامر ، ركضت apt-get update، ثم حاول الأمر System Tools / Software-Update مرة أخرى ، وتم تشغيله هذه المرة بدون أخطاء 404.

لذا ، أعتقد أنك لا تستطيع أن تفترض ذلك دائمًا apt-get update يتم تشغيلها من تطبيقات واجهة المستخدم الرسومية ...


4
2018-04-02 02:58



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


كما قال الكثير من الناس قبلي هذا بتحديث المستودع المحلي الخاص بك (قائمة حزمة).

قد تواجه مشكلة إذا حاولت التثبيت

apt-get install foobar

و foobar أو التبعية لم يكن لديك أحدث إصدار في المستودع. هذا يمكن أن يكون مشكلة خاصة إذا تثبيت ملف .deb يدوياً أو ppa من طرف ثالث.

أساسا يتأكد قائمتك يطابق رئيس قائمة.


2
2018-06-05 23:38





دعونا نعتبر مثال التثبيت مشغل وسائط VLC على أوبونتو:

sudo apt-get update

وسوف يتحقق من مستودعات التحديثات المتاحة.

بينما

sudo apt-get install vlc vlc-plugin-pulse mozilla-plugin-vlc

سيثبت مشغل وسائط VLC من المستودعات التي بحثنا عنها.

إذا قمت بتسجيل الدخول كمستخدم أساسي (مسؤول) ، فلن تحتاج إلى استخدامه sudoلأن لديك امتيازات المستخدم الفائقة بالفعل.


2
2017-11-27 07:24