سؤال تحديث Python على نظام Ubuntu


أريد تحديث بنية Python على مربع Linux ، ولكن الطريقة الوحيدة التي أعرف كيفية القيام بها هي إلغاء تثبيت الإصدار الحالي وتثبيت الإصدار الجديد. النظام الخاص بي محدث بالفعل (لقد قمت بتحديث أمس). كنت أرغب في معرفة ما إذا كان هناك طريقة لتحديث برنامج معين من سطر الأوامر ، مثل sudo apt-get update <program-name>. أعلم أن هذا الأمر غير موجود ، لكنني آمل أن يفعل شيء مماثل.


66
2018-02-04 23:18


الأصل


إذا كان النظام الخاص بك محدثًا ، فستجد بايثون على نظامك (وفقًا لمستودعاتك). هل أنا على خطأ؟ - cYrus


الأجوبة:


كما لاحظ آخرون بالفعل ، العارية sudo apt-get install package سيقوم بتثبيت أحدث إصدار متاح ، ليحل محل الإصدار الأقدم إذا لزم الأمر.

ولكن مع وجود بعض البرامج (من بينها بايثون) فإن الوضع مختلف بعض الشيء. بعض الإصدارات الرئيسية ، وتختلف جدا وتختلف بشكل غير طبيعي خاصة بهم الحزم. على سبيل المثال، بايثون 2.6، بيثون 2.7، Python 3.1 كلهم يعيشون في حزم منفصلة على أوبونتو.

أهمية خاصة هي حقيقة أن واحدة من سياسات Ubuntu هي استخدام Python بكثافة لكتابة برنامج المستخدم النهائي. في الواقع ، جزء كبير إلى حد ما من النظام هو مكتوبة في بيثون. في هذه اللحظة ، يعمل الرمز على Python 2.6 - لذلك هذا الإصدار هو الإعداد الافتراضي عند التثبيت ؛ والرمز متعود تعمل بسهولة ، على سبيل المثال ، Python 2.7 - بسبب عدم التوافق. لتحويل النظام إلى Python 2.7 ، يجب أن يتم إنجاز جزء من العمل ، يتكون من تحديث وإعادة اختبار جميع النصوص. هذا لا يمكن القيام به بسهولة. أي ، لا يمكنك فقط "تبديل" النظام الخاص بك إلى Python 2.7 وحذف الإصدار الأقدم.

لكن. إذا كنت لا تهتم بالتروس الفاخرة للنظام الخاص بك وتحتاج فقط إلى بايثون أحدث - لا أرى أي عقبات. اذهب و sudo apt-get install python3 ورمز ل 3.x بيثون بشجاعة ؛ تذكر فقط لبدء البرامج النصية الخاصة بك python3 والاستخدام #!/usr/bin/env python3 خط shebang.


55
2018-02-05 01:52



تفاصيل كبيرة حول أعمال ما وراء المشهد. - efficiencyIsBliss


sudo apt-get install python 3.3.3

هذا هو لثعبان (3.3.3) لإصدار مختلف يجب استخدام رقم الإصدار المقابل.


14
2018-04-19 02:52



أعتقد أن المسافة بين الثعبان والنسخة لا ينبغي أن تكون هناك. sudo apt-get install python3.6 عملت بالنسبة لي ، ولكن لا يؤثر على بايثون 3.5 بأي شكل من الأشكال. - GUI Junkie
sudo apt-get install python 3.6.1  > Note, selecting 'libghc-unix-time-dev-0.3.6-1b8cf' for regex '3.6.1' ...  تخبر الوسيطات المنفصلة apt بتثبيت حزم متعددة - Clancy Hood
بعد تثبيت رقم الإصدار بيثون هو نفسه؟ ماذا قد يكون السبب؟ - Ramesh Pareek
لقد استخدمت هذه الطريقة ، ولكن لم أتمكن من العثور على مكان تركيبها (أي كيفية فتح قذيفة 3.7). RameshPareek قد يكون هذا مشكلتك أيضا. لا يبدو أن في / usr / bin. python is already the newest version (2.7.12-1~16.04). python set to manually installed. أيه أفكار؟ - Mike Palmice


sudo apt-get install python3.6

هذا يثبث python 3 في لينكس على طول الثعبان الجانب 2.To الوصول إلى python 3 تدخل بعد فتح المحطة.

python3

8
2018-01-16 02:47



هذا تكرار إجابة أخرى ويضيف أي محتوى جديد. من فضلك لا نشر إجابة ما لم يكن لديك بالفعل شيء جديد للمساهمة. - DavidPostill♦
آسف ، أردت فقط كتابة الأمر للحصول على الأمر الجديد. - G-Ox7cd
إذا قمت بتشغيل أن أحصل E: Unable to locate package python3.6 E: Couldn't find any package by glob 'python3.6' E: Couldn't find any package by regex 'python3.6' - Kajsa
sudo add-apt-repository ppa: deadsnakes / ppa -y && sudo apt-get update - ski_squaw
E: Unable to locate package python3.6 - Dims


من الموقع الشقيق: https://askubuntu.com/questions/44122/how-to-upgrade-a-single-package-using-apt-get

كل من هذه الأوامر يتم تحديثها عن طريق تثبيت ، والتي يجب أن تعمل بشكل جيد في كثير من الحالات ، ولكن قد لا تكون ما تبحث عنه في حالة معينة.

إذا كنت ترغب في ترقية حزمة معينة فقط وفقط إذا كانت مثبتة بالفعل ، فاستخدم الأمر:

sudo apt-get install --only-upgrade packagename

3
2017-11-19 00:45





أنت قريب من التفكير في أمر مثل sudo apt-get update (وهو أمر فعلي ، لكنه لا يفعل ما تريده.)

لترقية Python ، وأي شيء آخر قمت بتثبيته ، قم بإجراء الأمر:

sudo apt-get upgrade

2
2018-02-04 23:29



شكرًا ، لكنني كنت على علم بالفعل بأمر التحديث ، ولهذا السبب قمت بنشر حقيقة أن نظامي محدث بالفعل. كنت أتمنى العثور على أمر يمكن استهدافه لتطبيقات محددة. - efficiencyIsBliss
لن ترتّب الترقية أي شيء محدّثًا ، لذلك لن يحدث أي فرق ؛ ص - Journeyman Geek♦


قد يكون pyenv خيارًا جيدًا بالنسبة لك: https://github.com/yyuu/pyenv


في ما يخص @ الجواب ulidtko، قد يكون بديلاً محتملاً لاستبدال python النظام تماماً استخدام بيئة معزولة مع الإصدار python المطلوب. هذا هو مماثل ل "بيئة افتراضية" ، ولكن للبيثون نفسها. لقد استخدمت هذا في الماضي للمشاريع القديمة التي تعمل على 2.6 python ، وكذلك عند الترقية من الإصدار القديم من python إلى python3.


2
2018-02-14 19:03



لست على دراية بالمنطقة ، ولكن هل يمكن أن تشرح كيف يعالج هذا السؤال ويحل المشكلة؟ - Ben N
فيما يتعلق بإجابة @ ulidtko (superuser.com/a/241903/152143) ، قد يكون بديلاً محتملاً لاستبدال python النظام بالكامل لاستخدام بيئة معزولة مع الإصدار python المطلوب. هذا هو مماثل ل "بيئة افتراضية" ، ولكن للبيثون نفسها. لقد استخدمت هذا في الماضي للمشاريع القديمة التي تعمل على 2.6 python ، وكذلك عند الترقية من الإصدار القديم من python إلى python3. - nicefinly


في حال كنت تبحث عن ترقية الإصدار الثانوي فقط من حزمة python مثل 2.7.11+ t0 2.7.12 ، فافعل ذلك sudo apt-get install python2.7 يجب أن يفعل لك


2
2018-01-01 05:46





apt-get install python

أعتقد أن هذا يجب أن ينجح. سوف تحتاج إلى تغيير "python" لتتناسب مع اسم الحزمة المناسب في المستودع الخاص بك بشكل واضح.


1
2018-02-04 23:57





كما نعلم جميعا أن بايثون تأتي مع الإصدار 3.5. لذلك من السهل جداً تحديث Python 2.7 (والذي يكون افتراضياً في Ubuntu 16.04) إلى Python 3.5.

اتبع الخطوات التالية:

  1. فتح المحطة.
  2. تصبح المستخدم الجذر باستخدام الأمر sudo.
  3. استخدم الرمز أدناه لتحديث Python 2.7 إلى 3.5

    sudo apt-get install python3.5

  4. ستتم مطالبتك بإذن منك ، ثم أعط الخيار Y.

  5. انتظر حتى تكتمل العملية.
  6. مسح الشاشة باستخدام الأمر clear
  7. تحقق من الإصدار python بواسطة الأمر أدناه.

    بيثون -فيرشن


1
2017-11-04 08:13



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


في الحالة الفردية التي تقوم فيها بتشغيل إصدار LTS ، قد يكون python خلف إصدار ثانوي ، على سبيل المثال 2.7.5 بدلاً من 2.7.10.

أحد الاحتمالات سيكون ترقية النظام:

  • جلس prompt=normal في /etc/update-manager/release-upgrades
  • ترقية النظام
    • على سطر الأوامر ، يمكنك الكتابة sudo do-release-upgrade لجعل مدير الترقية يقوم بعمله للترقية إلى أحدث إصدار (= غير LTS).
    • يستخدم الحل واجهة المستخدم الرسومية مدير التحديث

كما هو الحال دائما عند الترقية ، إلقاء نظرة على ملاحظات الإصدار، نظرًا لأن الترقية قد تؤدي إلى كسر النظام في حالات قليلة ، راجع @ تعليق جينو.


0
2017-11-25 19:10



المتأنق ، لقد حاولت التغيير الخاص بك وهذا حطم بلدي نظام أوبونتو 14.04! في الأساس ، حاولت التحديث من 14.04 إلى Ubuntu 15 ولم تكن قادرة على القيام بذلك بنجاح ، تاركًا نظامي في حالة نصفية حيث لم يعد تسجيل الدخول الرسومي ناجحًا - على سبيل المثال ، وأود أن الدخول عن طريق تسجيل الدخول الرسومية ومن ركلة لي العودة إلى نفس تسجيل الدخول الرسومية. قضيت ساعة الماضية + إعادة تثبيت أوبونتو 14.04 على الجهاز الخاص بي لإصلاح كسر المزعوم حل. - Gino
Gino: شكرا لك على ردود الفعل. هل كان لديك نظرة askubuntu.com/questions/612973/...، askubuntu.com/questions/223501/... وملاحظات الإصدار؟ هناك مشكلة مع "سائق AMD في fglrx". هل تريد أي مساعدة أخرى؟ - serv-inc
أعتقد أن اقتراحك ، للتحايل على فحوص السلامة العادية ، وبالتالي السماح للترقية إلى إصدار غير LTS محفوف بالمخاطر. حتى هذا اليوم ، لا أعرف سبب فشل الترقية ، نظرًا لأنه لم يعرض أي رسائل خطأ يمكن تشخيصها. بدلاً من ذلك ، انتهى بي الأمر بنظام لم يعد قابلاً للاستخدام. إذا كنت أتذكر بشكل صحيح ، فقد انتهى بي الأمر بإعادة تشغيل تثبيت Ubuntu مع بعض الإعدادات التي تمكنت من استعادة معظم نظامي. وكملاحظة جانبية ، فأنا مبرمج محترف ، لذلك أعرف بشكل عام طريقي حول نظام linux. - Gino
Gino: يبدو أن هذا هو الإجراء القياسي للتبديل من LTS إلى LTS. إنه "[يغير] مستوى الوعي بالإصدارات الجديدة. يمكن تعيين هذا إلى الإصدارات "المعتمدة" (العادية) أو الإصدارات "على المدى الطويل فقط" (LTS) أو حتى "لا شيء" (لا يوجد ترقيات كبيرة). "" للحصول على عرض الأسعار انظر askubuntu.com/questions/240160/.... ويستخدم مدير ترقية النظام. لسوء الحظ ، في حالتك ، لم تنجح الترقية (الافتراضية) ، والتي قد تكون بسبب برنامج تشغيل عربات التي تجرها الدواب (انظر الارتباطات أعلاه). - serv-inc