ฉันติดตั้ง Anaconda บนคอมพิวเตอร์ของฉันแล้วและต้องการอัปเดต ในนาวิเกเตอร์ที่ฉันจะเห็นว่ามีหลายแพคเกจแต่ละที่สามารถปรับปรุง แต่ยังมีแพคเกจที่บางครั้งมีจำนวนรุ่นและบางครั้งก็พูดว่าanaconda
custom
ฉันจะดำเนินการอย่างไร
ฉันติดตั้ง Anaconda บนคอมพิวเตอร์ของฉันแล้วและต้องการอัปเดต ในนาวิเกเตอร์ที่ฉันจะเห็นว่ามีหลายแพคเกจแต่ละที่สามารถปรับปรุง แต่ยังมีแพคเกจที่บางครั้งมีจำนวนรุ่นและบางครั้งก็พูดว่าanaconda
custom
ฉันจะดำเนินการอย่างไร
คำตอบ:
ในกรณีส่วนใหญ่สิ่งที่คุณต้องการทำเมื่อคุณบอกว่าคุณต้องการอัปเดต Anaconda คือการใช้คำสั่ง:
conda update --all
(แต่สิ่งนี้ควรนำหน้าด้วยconda update -n root conda
เพื่อให้คุณconda
ติดตั้งเวอร์ชันล่าสุด)
สิ่งนี้จะอัพเดตแพ็คเกจทั้งหมดในสภาพแวดล้อมปัจจุบันเป็นเวอร์ชั่นล่าสุด - ด้วยการพิมพ์ขนาดเล็กซึ่งอาจใช้แพ็คเกจรุ่นเก่ากว่าเพื่อตอบสนองข้อ จำกัด ในการพึ่งพา (มักจะไม่จำเป็นและเมื่อจำเป็น ตัวแก้แผนแพ็คเกจจะทำอย่างดีที่สุดเพื่อลดผลกระทบ)
สิ่งนี้จะต้องดำเนินการจากบรรทัดคำสั่งและวิธีที่ดีที่สุดในการเดินทางมาจาก Anaconda Navigator จากนั้นไปที่แท็บ "สภาพแวดล้อม" จากนั้นคลิกที่สามเหลี่ยมข้างๆroot
สภาพแวดล้อมเลือก "Open Terminal":
การดำเนินการนี้จะอัปเดตเฉพาะสภาพแวดล้อมที่เลือกไว้ (ในกรณีนี้คือroot
สภาพแวดล้อม) หากคุณมีสภาพแวดล้อมอื่น ๆ ที่คุณต้องการอัปเดตคุณสามารถทำซ้ำขั้นตอนข้างต้นได้ แต่คลิกที่สภาพแวดล้อมก่อน เมื่อเลือกแล้วจะมีเครื่องหมายสามเหลี่ยมอยู่ทางด้านขวา (ดูภาพด้านบนขั้นตอนที่ 3) หรือจากบรรทัดคำสั่งคุณสามารถระบุชื่อสภาพแวดล้อม ( -n envname
) หรือเส้นทาง ( -p /path/to/env
) เช่นเพื่ออัปเดตdspyr
สภาพแวดล้อมของคุณจากภาพหน้าจอด้านบน:
conda update -n dspyr --all
หากคุณสนใจที่จะอัปเดตแต่ละแพ็คเกจเพียงคลิกที่ลูกศรสีน้ำเงินหรือหมายเลขเวอร์ชันสีน้ำเงินใน Navigator เช่นสำหรับastroid
หรือastropy
ในภาพหน้าจอด้านบนและนี่จะติดแท็กแพ็คเกจเหล่านั้นเพื่ออัปเกรด เมื่อเสร็จแล้วคุณต้องคลิกปุ่ม "สมัคร":
หรือจากบรรทัดคำสั่ง:
conda update astroid astropy
หากคุณไม่สนใจเกี่ยวกับรุ่นของแพ็คเกจและเพียงแค่ต้องการ"ชุดล่าสุดของแพ็คเกจทั้งหมดในการแจกจ่าย Anaconda มาตรฐานตราบใดที่พวกเขาทำงานร่วมกัน"คุณควรดูที่ส่วนสำคัญนี้
ในกรณีส่วนใหญ่การอัปเดตแพคเกจ Anaconda ในรายการแพคเกจจะมีผลลัพธ์ที่น่าประหลาดใจ: คุณอาจลดระดับแพ็คเกจจำนวนมาก (อันที่จริงมีแนวโน้มว่าจะเป็นเวอร์ชั่นที่custom
ระบุ สรุปสาระสำคัญข้างต้นให้รายละเอียด
root
สภาพแวดล้อมของคุณอาจไม่ใช่สถานที่ที่ดีที่จะลองและจัดการชุดแพคเกจที่แน่นอน: มันจะเป็นพื้นที่ทำงานแบบไดนามิกที่ติดตั้งแพคเกจใหม่และแพคเกจใหม่แบบสุ่ม หากคุณต้องการชุดของแพคเกจที่แน่นอนแล้วสร้างสภาพแวดล้อม conda เพื่อเก็บไว้ ขอบคุณแคชแพคเกจ conda และวิธีการเชื่อมโยงไฟล์ที่ใช้ในการทำเช่นนี้คือ i) เร็วและ ii) ใช้พื้นที่ดิสก์เพิ่มเติมน้อยมาก เช่น
conda create -n myspecialenv -c bioconda -c conda-forge python=3.5 pandas beautifulsoup seaborn nltk
เอกสาร CONDAมีรายละเอียดเพิ่มเติมและตัวอย่าง
เรื่องนี้ไม่เป็นไปเพื่อความช่วยเหลือเกี่ยวกับการอัปเดตแพคเกจที่ได้รับการติดตั้งจาก PyPI ผ่านpip
หรือแพคเกจใด ๆ python setup.py install
ที่ติดตั้งโดยใช้ conda list
จะให้คำแนะนำบางอย่างเกี่ยวกับแพ็คเกจ Python ที่อิงกับ pip ที่คุณมีในสภาพแวดล้อม แต่จะไม่ทำอะไรเป็นพิเศษเพื่ออัปเดต
เป็นเรื่องเดียวกันโดยมีข้อยกเว้นว่าคุณอาจไม่สามารถอัปเดตroot
สภาพแวดล้อมได้หากมีบุคคลอื่น (พูดกับ/opt/anaconda/latest
) ติดตั้ง หากคุณไม่สามารถอัปเดตสภาพแวดล้อมที่คุณใช้งานอยู่คุณควรจะโคลนและอัปเดต:
conda create -n myenv --clone root
conda update -n myenv --all
conda update anaconda
การอัปเดตในอนาคต เพิ่งทำconda update --all
และไม่สามารถเริ่มต้น Navigator หลังจากนั้นเพราะสิ่งPySide ModuleNotFoundError
ที่ฉันไม่สามารถแก้ไขได้ แม้หลังจากปรับลดรุ่นแล้ว ดังนั้นฉันต้องติดตั้ง Anaconda อีกครั้งและตั้งค่าสภาพแวดล้อมของฉันอีกครั้ง และ thats ครั้งที่ 2 conda update anaconda
นี้เกิดขึ้นกับผมในขณะที่ผมไม่เคยมีปัญหากับ แม้ว่านั่นหมายความว่าแพคเกจของฉันไม่ทันสมัยมาก (การกระจายยังคงได้รับการปรับปรุงค่อนข้างบ่อย: docs.anaconda.com/anaconda/release-notes ) ฉันชอบที่จะมีระบบที่เสถียร
conda update conda
เช่นกัน Conda มีการพัฒนาอย่างมีนัยสำคัญในปีที่ผ่านมาและโดยเฉพาะอย่างยิ่งเรามีการเปิดตัวในช่วงปลายเดือนกันยายน 2017 ที่แนะนำการปรับปรุงจำนวนมาก หากconda update --all
แบ่งสิ่งต่าง ๆ (ซึ่งในอดีตมันเกือบจะแน่ใจแล้ว) นี่เป็นข้อผิดพลาดที่คุณควรรายงานไปยังตัวติดตามปัญหาของ conda GitHub - วันนี้การดำเนินการไม่ควรทำลายส่วนประกอบที่มีอยู่ใด ๆ (ด้วยเงื่อนไข condiso ต้องขึ้นอยู่กับ วันที่)
conda update -n root conda
แทนสิ่งที่กล่าวถึงข้างต้นเพื่อให้มันใช้งานได้
conda update --all
ไม่ได้เป็นสิ่ง 95% ของประชาชนที่ต้องการ มันสามารถนำไปสู่สภาพแวดล้อมที่ไม่เสถียร คำตอบโดย user3056882 นั้นปลอดภัยกว่า
conda update --all
ล้มเหลวสำหรับฉันด้วยข้อผิดพลาด 'สิทธิ์ถูกปฏิเสธ' รันด้วยสิทธิ์ผู้ดูแลระบบสำเร็จ ในการรันด้วยสิทธิ์ผู้ดูแลระบบ: เริ่ม> Anaconda3> พรอมต์ Anaconda> คลิกขวา> More> Run As Administrator
หากคุณพยายามอัปเดตเวอร์ชัน Anaconda ของคุณเป็นเวอร์ชั่นใหม่คุณจะสังเกตเห็นว่าการเรียกใช้ตัวติดตั้งใหม่จะไม่ทำงานเนื่องจากบ่นว่าไดเรกทอรีการติดตั้งนั้นไม่ว่างเปล่า
ดังนั้นคุณควรใช้ conda เพื่ออัปเกรดตามรายละเอียดโดยเอกสารอย่างเป็นทางการ :
conda update conda
conda update anaconda
สิ่งนี้ป้องกันข้อผิดพลาด:
ข้อผิดพลาด conda.core.link:_execute(502): เกิดข้อผิดพลาดขณะถอนการติดตั้งแพคเกจ 'ค่าเริ่มต้น :: conda-4.5.4-py36_0' PermissionError (13, 'การเข้าถึงถูกปฏิเสธ')
เปิด "command หรือ conda prompt" และเรียกใช้:
conda update conda
conda update anaconda
เป็นความคิดที่ดีที่จะเรียกใช้คำสั่งทั้งสองครั้ง (หลังจากนั้นอีกครั้ง) เพื่อให้แน่ใจว่าไฟล์พื้นฐานทั้งหมดได้รับการอัพเดต
สิ่งนี้จะนำคุณกลับสู่ 'การเผยแพร่ล่าสุด' ซึ่งมีแพ็คเกจที่ผู้คนใน Continuum เลือกไว้เพื่อทำงานร่วมกันได้ดี
หากคุณต้องการให้รุ่นล่าสุดของแต่ละแพ็คเกจทำงาน (ซึ่งอาจนำไปสู่สภาพแวดล้อมที่ไม่เสถียร ):
conda update --all
หวังว่านี่จะช่วยได้
แหล่งที่มา:
conda update anaconda
ควรนำคุณกลับสู่ 'การเผยแพร่' หนึ่งในนั้นซึ่งมีแพ็คเกจที่ผู้คนใน Continuum เลือกให้ทำงานร่วมกันได้ดี
conda install anaconda
ถ้าคุณได้รับแพคเกจไม่ได้ติดตั้งลองข้อผิดพลาด
หากคุณมีปัญหาในการรับเช่น 3.3.x ถึง 4.x (conda update conda "ใช้งานไม่ได้" เพื่อไปยังรุ่นถัดไป) กว่าลองใช้วิธีที่เฉพาะเจาะจงมากขึ้นเช่น:
conda install conda=4.0 (or conda install anaconda=4.0)
https://www.anaconda.com/blog/developer-blog/anaconda-4-release/
คุณควรรู้ว่าคุณทำอะไรเพราะคอนดออาจแตกได้เนื่องจากการติดตั้งแบบบังคับ หากคุณต้องการความยืดหยุ่น / ความปลอดภัยที่มากขึ้นคุณสามารถใช้ pkg-manager เช่น nix (-pkgs) [กับ nix-shell] / NixOS
conda update --all
แบ่งทุกอย่างเช่นคำถามที่พบบ่อยของตัวเองกล่าวและในกรณีของฉันมันเริงร่าข้อเสนอที่จะปรับลดหลามของฉันจาก 3.7.0 ไป 3.6.6 (แม้ว่ามันรู้ 3.7.1 สามารถใช้ได้)
นี่คือสิ่งที่เอกสารทางการของ Anacondaแนะนำ:
conda update conda
conda update anaconda=2020.02
หากบรรทัดที่สองมีข้อผิดพลาด (พิมพ์ผิดในเอกสารหรือไม่) สิ่งนี้ใช้ได้ที่นี่:
conda install anaconda=2020.02
(คุณสามารถค้นหาตัวระบุเวอร์ชันทั้งหมดได้ที่นี่ )
คำสั่งจะอัปเดตเป็นรุ่นเฉพาะของอนาคอนดาเมตาแพ็คเกจ
นี่คือสิ่งที่ 95% ของผู้ใช้ Anaconda ต้องการ เพียงอัปเกรดเมตาดาต้าแพคเกจรุ่นล่าสุดของ Anaconda (รวบรวมและทดสอบโดยผู้จัดจำหน่าย Anaconda) และไม่สนใจสถานะการอัปเดตของแต่ละแพ็คเกจ (ซึ่งจะออกโดยconda update --all
)
conda update ...
พิมพ์ผิดหรือเปล่า? ตกลง
นี่คือวิธีปฏิบัติที่ดีที่สุด (จากประสบการณ์ต่ำต้อยของฉัน) การเลือกแพ็กเกจทั้งสี่นี้จะอัปเดตการอ้างอิงอื่น ๆ ทั้งหมดเป็นเวอร์ชันที่เหมาะสมซึ่งจะช่วยให้คุณรักษาสภาพแวดล้อมให้สอดคล้องกัน ปัญหาหลังนี้เป็นปัญหาทั่วไปที่คนอื่น ๆ ได้แสดงไว้ในคำตอบก่อนหน้านี้ วิธีนี้ไม่จำเป็นต้องใช้เครื่อง
เปิด Anaconda cmd ในโหมดฐาน:
จากนั้นใช้conda update condaเพื่ออัปเดต Anaconda
จากนั้นคุณสามารถใช้การอัปเดต conda -เพื่ออัปเดตข้อกำหนดทั้งหมดสำหรับแอนาคอนดา
conda update conda
conda update --all
บน Mac เปิดเทอร์มินัลแล้วรันคำสั่ง 2 คำสั่งต่อไปนี้
conda update conda
conda update anaconda
ตรวจสอบให้แน่ใจว่าได้รันคำสั่งแต่ละครั้งหลายครั้งเพื่ออัปเดตเป็นเวอร์ชันปัจจุบัน
ฉันใช้ Windows 10 อัปเดตทุกอย่างต่อไปนี้และติดตั้งแพ็กเกจใหม่บางอย่างรวมถึงการปรับปรุงหลาม (สำหรับฉันมันคือ 3.7.3)
ที่เชลล์ลองต่อไปนี้ (อย่าลืมเปลี่ยนตำแหน่งที่ติดตั้งข้อมูล Anaconda3 ของคุณ) ใช้เวลาพอสมควรในการอัพเดททุกอย่าง
conda update --prefix X:\XXXXData\Anaconda3 anaconda
หากต้องการอัปเดตเวอร์ชันที่ติดตั้งของคุณเป็นเวอร์ชันล่าสุดให้เรียกใช้ 2019.07
conda install anaconda=2019.07
ในกรณีส่วนใหญ่วิธีนี้สามารถตอบสนองความต้องการของคุณและหลีกเลี่ยงปัญหาการพึ่งพา
conda create -n py37 -c anaconda anaconda=5.3.1
conda env export -n py37 --file env.yaml
ค้นหา env.yaml ใน C: \ Windows \ System32 และเรียกใช้ cmd ในฐานะผู้ดูแลระบบ
conda env update -n root -f env.yaml
จากนั้นก็ใช้งานได้!
สิ่งนี้สามารถปรับปรุงงูหลามเท่านั้น:
conda update python
conda update [-n root] -v anaconda
python: 3.7.0-hc167b69_0 --> 3.6.6-hc167b69_0
ดูเหมือนว่าจะหักมาก