Anaconda'yı nasıl güncelleyebilirim?


259

Bilgisayarımda Anaconda yüklü ve güncellemek istiyorum. Navigator'da güncellenebilen birkaç ayrı paket olduğunu, ancak anacondabazen sürüm numarası olan ve bazen söyleyen bir paket olduğunu görebiliyorum custom. Nasıl ilerlerim?

resim açıklamasını buraya girin


1
Çoğu cevap, önermek conda update [-n root] -v anaconda, ama benim İNDİRMEK için sunuyor python: 3.7.0-hc167b69_0 --> 3.6.6-hc167b69_0. Çok bozuk görünüyor.
smci

Yanıtlar:


418

İnsanların% 95'i aslında ne istiyor

Çoğu durumda Anaconda'yı güncellemek istediğinizi söylediğinizde yapmak istediğiniz şey komutu çalıştırmaktır:

conda update --all

(Ancak bu edilmelidir preceeded tarafından conda update -n root condason zorunda condasürümü yüklü)

Bu, mevcut ortamdaki tüm paketleri en son sürüme güncelleyecektir - küçük baskı, bağımlılık kısıtlamalarını karşılamak için bazı paketlerin eski bir sürümünü kullanabileceği (genellikle bu gerekli olmayacak ve gerektiğinde paket planı çözücü etkisini en aza indirmek için elinden geleni yapacaktır).

Bunun komut satırından yürütülmesi gerekir ve oraya ulaşmanın en iyi yolu Anaconda Navigator, ardından "Ortamlar" sekmesidir, ardından root"Terminali Aç" ı seçerek ortamın yanındaki üçgeni tıklatın :

Navigator'dan terminali aç

Bu işlem yalnızca seçilen bir ortamı (bu durumda rootortam) güncelleyecektir. Güncellemek istediğiniz başka ortamlarınız varsa yukarıdaki işlemi tekrarlayabilirsiniz, ancak önce çevreyi tıklayın. Seçildiğinde, sağda üçgen bir işaretçi vardır (yukarıdaki resme bakın, adım 3). Veya komut satırından ortamın adını ( -n envname) veya yolunu ( -p /path/to/env) sağlayabilirsiniz, örneğin dspyrortamınızı yukarıdaki ekran görüntüsünden güncellemek için :

conda update -n dspyr --all

Tek tek paketleri güncelleyin

Yalnızca tek bir paketi güncellemekle ilgileniyorsanız, Navigator'daki mavi oku veya mavi sürüm numarasını tıklayın, örn. Yukarıdaki ekran görüntüsü için astroidveya astropyekran görüntüsü ve bu, yükseltme için bu paketleri etiketleyecektir. İşiniz bittiğinde "Uygula" düğmesini tıklamanız gerekir:

Tek tek paketleri güncellemek için başvurun

Veya komut satırından:

conda update astroid astropy

Sadece standart Anaconda Dağıtımındaki paketleri güncelleme

Paket sürümlerini önemsemiyorsanız ve sadece "birlikte çalıştıkları sürece standart Anaconda Dağıtımındaki tüm paketlerin en son kümesini" istiyorsanız , bu özete bir göz atmalısınız .

Anaconda paketini güncellemek neden her zaman kötü bir fikirdir

Çoğu durumda paket listesindeki Anaconda paketini güncellemek şaşırtıcı bir sonuç doğuracaktır: aslında birçok paketi eski sürüme geçirebilirsiniz (aslında, sürümü şu şekilde belirtiyorsa custom). Yukarıdaki özette ayrıntılar verilmektedir.

Conda ortamlarından yararlanın

Ortamınız rootmuhtemelen tam bir paket setini denemek ve yönetmek için iyi bir yer değildir: yüklü yeni paketler ve paketler rastgele güncellenmiş dinamik bir çalışma alanı olacaktır. Tam bir paket kümesine ihtiyacınız varsa, onları tutmak için bir conda ortamı oluşturun. Conda paketi önbelleği ve dosya bağlama yönteminin kullanımı sayesinde bu genellikle i) hızlıdır ve ii) çok az ek disk alanı tüketir. Örneğin

conda create -n myspecialenv -c bioconda -c conda-forge python=3.5 pandas beautifulsoup seaborn nltk

Conda dokümantasyon fazla ayrıntı ve örnekler vardır.

pip, PyPI ve kurulum araçları?

Bunların hiçbiri, PyPI üzerinden pipyüklenen paketleri veya kullanarak yüklenen paketleri güncellemeye yardımcı olmaz python setup.py install. conda listbir ortamda sahip olduğunuz pip tabanlı Python paketleri hakkında bazı ipuçları verecektir, ancak bunları güncellemek için özel bir şey yapmayacaktır.

Anaconda veya Anaconda Enterprise'ın ticari kullanımı

rootBaşka bir kişi tarafından yüklenmişse ortamı güncelleyemeyebilmeniz dışında, hemen hemen aynı hikaye /opt/anaconda/latest. Kullandığınız ortamları güncelleyemiyorsanız, klonlayıp güncelleyebilmeniz gerekir:

conda create -n myenv --clone root
conda update -n myenv --all

4
@MattSchmatt da yaptığınızdan emin olun conda update conda. Conda geçen yıl önemli ölçüde gelişti ve özellikle Eylül 2017'nin sonlarında birçok iyileştirme getiren bir sürümümüz vardı. Eğer conda update --allsonları şeyler (ki, tarihsel olarak, bunu yapmak için neredeyse emindi) daha sonra bu Conda GitHub sorun izleyicide rapor etmelidir bir hata olduğunu - bugün operasyonun bu olmamalı kadar olmak şartı Conda ihtiyaçları var olan tüm bileşenleri (kırmak tarihi).
IanSR

7
conda update -n root condaÇalışması için yukarıda belirtilenlerin yerine yapmak zorunda kaldım .
Lucas

9
İnsanların conda update --all% 95'inin istediği bu değil. Kararsız bir ortama yol açabilir. Tarafından cevap user3056882 daha güvenlidir.
gagarine

1
Mevcut macOS Anaconda3 version is 5.1.0. Ama yaptığım zaman koştuğum halde conda -Vbana söyler ve . Neden herhangi bir fikir? 4.5.1conda update condaconda update anaconda
Edison

3
conda update --all'izin reddedildi' hatasıyla benim için başarısız oldu. Yönetici ayrıcalığı ile başarıyla çalıştırıldı. Yönetici ayrıcalığı ile çalıştırmak için: Başlat> Anaconda3> Anaconda İstemi> Sağ tıklayın> Diğer> Yönetici Olarak Çalıştır.
BabarBaig

100

Anaconda sürümünüzü yeni bir sürüme güncellemeye çalışıyorsanız, yükleme dizininin boş olmadığından şikayet ettiği için yeni yükleyiciyi çalıştırmanın işe yaramayacağını fark edeceksiniz.

Bu nedenle, resmi dokümanlar tarafından ayrıntılı olarak açıklandığı gibi yükseltmek için conda kullanmalısınız :

conda update conda
conda update anaconda


Windows'da "tüm kullanıcılar için" kurulumunu yaptıysanız, Anaconda isteminden Yönetici ayrıcalıklarıyla çalıştırmak gerekebilir.

Başlat menüsünde Anaconda Prompt'a sağ tıklayın

Bu hatayı önler:

HATA conda.core.link:_execute(502): 'defaults :: conda-4.5.4-py36_0' paketi kaldırılırken bir hata oluştu. PermissionError (13, 'Erişim engellendi')


46

"Command or conda istemi" ni açın ve çalıştırın:

conda update conda
conda update anaconda

Tüm temel dosyaların güncellendiğinden emin olmak için her iki komutu da (birbiri ardına) iki kez çalıştırmak iyi bir fikirdir.

Bu sizi Continuum'daki kişilerin birlikte iyi çalışması için seçilen paketleri içeren en son 'sürümlere' geri koymalıdır.

Her paketin son sürümünün çalışmasını istiyorsanız (bu, kararsız bir ortama yol açabilir ):

conda update --all 

Bu yardımcı olur umarım.

Kaynaklar:


10
Her paketin en son sürümüne sahip olmak yerine istikrarlı bir ortam tercih ediyorsanız, 4. adımı atlayın conda update anaconda.
rudolfbyker

Teşekkürler rudolfbyker. Cevabınızı yorumunuzu yansıtacak şekilde düzenledim.
H.Latte

Paket yüklü değil hata alırsanız deneyin conda install anaconda.
Shital Shah

Ben conda güncelleyin ve sonra tüm paketleri çalışmayı durdurdu .... Neden bilmiyorum ama çözüm iyi bir fikir değil çünkü conda yükseltmek için bu şekilde kullanarak istikrarlı değil .... İşte haddeleme
Travis

6

Örneğin 3.3.x'den 4.x'e (conda update conda "sonraki sürümü almak için" çalışmaz ") elde etmekte sorun yaşıyorsanız, bunun gibi daha spesifik deneyin:

conda install conda=4.0 (or conda install anaconda=4.0)

https://www.anaconda.com/blog/developer-blog/anaconda-4-release/

Ne yaptığınızı bilmelisiniz, çünkü zorla kurulum nedeniyle conda kırılabilir. Daha fazla esneklik / güvenlik elde etmek istiyorsanız, nix (-pkgs) [nix-shell] / NixOS gibi pkg-manager kullanabilirsiniz.


Belki, ama bunu tamamen kırık, bir çamur olarak görmez misiniz?
smci

"Süreklilik" sürümü standart bir örnektir (web) geliştirmede. Her zaman olduğu gibi, her şeyi düzeltmek ve yeniden değerlendirmek istiyorsanız, güncellenmiş Sürümler ile hepsini yeniden oluşturmanız gerekir. Genel olarak güncellemeler içeren bir "conda update --all" ../conda/../pinned dosyası da düzgün çalışmalıdır (! Ek pip kurulumlarına dikkat edin!).
InLaw

2
Güncelleyiciye hangi sürümün güncelleneceğini manuel olarak söylememiz gerektiğinde, artık bir güncelleyici değil, sadece güzel bir GUI'ye sahip kırık bir yükleyici. Genel conda update --allolarak kendi SSS'lerinin söylediği gibi her şeyi kırıyor ve benim
durumumda python'umu 3.7.0'dan 3.6.6'ya

Bu, bir yükleyici hakkındaki fikrinizdir, ancak BT'de bir STANDART (bir nedenden dolayı). Yine, özellikle sabitlenmiş dosyanıza bağlıdır ve Pkgs'i de PIP aracılığıyla yüklediyseniz! Size göre: python 3.7.x ile mevcut olmayan veya uyumlu pkgs varsa, Python sürümü ile env tüm pkgs kısıtlamalarına en uygun olabilir. "Conda" olmasının nedeni budur.
InLaw

Conda kullanma nedeniniz nedir (şikayet ettiğiniz bütünlük kontrolü / eski sürüme geçme için değilse)?
InLaw

6

Bu nedir resmi Anaconda dokümantasyon tavsiye eder:

conda update conda 
conda update anaconda=2020.02

İkinci satır bir hata atarsa ​​(dokümanlardaki yazım hatası?) Bu burada çalıştı:

conda install anaconda=2020.02

(tüm sürüm tanımlayıcılarını burada bulabilirsiniz )

Komut, Anaconda meta paketinin belirli bir sürümüne güncellenecektir.

Bu , Anaconda kullanıcılarının% 95'inin istediği imho. Sadece Anaconda meta paketinin en son sürümüne yükseltme (Anaconda Distribütörleri tarafından bir araya getirilip test edildi) ve her bir paketin (tarafından verilecek conda update --all) güncelleme durumunu umursamayarak .


5

İşte en iyi uygulama (mütevazi deneyimlerime göre). Bu dört paketi seçtiğinizde , diğer tüm bağımlılıklar da ortamınızı tutarlı tutmanıza yardımcı olacak uygun sürümlere güncelleyecektir. İkincisi, başkalarının daha önceki yanıtlarda ifade ettiği yaygın bir sorundur. Bu çözümün terminale ihtiyacı yoktur.

Anaconda3 veya Anaconda2 en iyi uygulamasını güncelleme ve yükseltme


Teşekkür ederim, bana yardımcı oldu!
Ilan Aizelman WS

3

Anaconda cmd'yi temel modda açın:

Daha sonra Anaconda'yı güncellemek için conda güncelleme condasını kullanın

Daha sonra Anaconda için tüm gereksinimleri güncellemek için conda update --all komutunu kullanabilirsiniz.

conda update conda  
conda update --all  

2

Mac'te terminali açın ve aşağıdaki 2 komutu çalıştırın.

conda update conda
conda update anaconda

geçerli sürüme güncellemek için her komutu birden çok kez çalıştırdığınızdan emin olun.


7
birden fazla zaman? bunu yapmak mantıklı.
Deepak

2
Benim tecrübelerime göre, komutları sadece python paketlerinin en son sürümlerine güncellemediğinde çalıştırırsanız. Bu yüzden birden çok kez çalıştırmanızı öneririm.
Ajay Sant

Bu, aynı sayfadaki başka bir cevabın kopyası: stackoverflow.com/a/46842054/109618
David J.

2

Windows 10 kullanıyorum. Aşağıdaki her şeyi günceller ve ayrıca bir python güncellemesi de dahil olmak üzere bazı yeni paketler yükler (benim için 3.7.3 idi).

Kabukta aşağıdakileri deneyin (Anaconda3 Verilerinizin kurulu olduğu yeri değiştirdiğinizden emin olun). Her şeyi güncellemek biraz zaman alıyor.

conda update --prefix X:\XXXXData\Anaconda3 anaconda

1

Yüklü sürümünüzü en son sürüme güncellemek için, örneğin 2019.07, çalıştırın

conda install anaconda=2019.07

Çoğu durumda, bu yöntem ihtiyaçlarınızı karşılayabilir ve bağımlılık sorunlarından kaçınabilir


0
conda create -n py37 -c anaconda anaconda=5.3.1
conda env export -n py37 --file env.yaml

C: \ Windows \ System32 dizininde env.yaml dosyasını bulun ve cmd'yi yönetici olarak çalıştırın

conda env update -n root -f env.yaml  

o zaman işe yarıyor!


-6

Bu yalnızca python'u güncelleyebilir:

conda update python
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.