Tutorial

Установка дистрибутива Anaconda Python в Ubuntu 20.04

Published on May 21, 2020
Русский
Установка дистрибутива Anaconda Python в Ubuntu 20.04

Введение

Anaconda — диспетчер пакетов с открытым исходным кодом, диспетчер среды и дистрибутив языков программирования Python и R. Он широко используется для анализа данных, машинного обучения, крупномасштабной обработки данных, научных вычислений и предиктивной аналитики.

Anaconda включает набор из более 1000 пакетов для анализа данных. Доступны бесплатная версия и платная версия для организаций. Дистрибутив Anaconda поставляется с утилитой командной строки conda. Дополнительную информацию об Anaconda и conda можно найти в официальной документации по Anaconda.

В этом обучающем модуле мы установим версию Anaconda для Python 3 на сервере Ubuntu 20.04.

Предварительные требования

Прежде чем начать изучение настоящего обучающего руководства, необходимо настроить на сервере стандартного пользователя без прав root с привилегиями sudo.

Для выполнения предварительных требований нужно выполнить указания нашего руководства по начальной настройке сервера Ubuntu 20.04.

Установка Anaconda

Для установки Anaconda лучше всего загрузить последнюю версию скрипта bash установки Anaconda, проверить этот скрипт и запустить его.

Последнюю версию Anaconda для Python 3 можно найти на странице загрузки Anaconda. На момент написания последняя версия 2020.02, но если доступна более поздняя стабильная версия, следует использовать ее.

Далее перейдите к директории /tmp на сервере. Этот каталог хорошо подходит для загрузки временных элементов, таких как скрипт bash Anaconda, которые нам не понадобятся после запуска.

  1. cd /tmp

Используйте curl для загрузки ссылки, скопированной с сайта Anaconda: Чтобы ускорить работу, мы будем использовать для вывода файл anaconda.sh.

  1. curl https://repo.anaconda.com/archive/Anaconda3-2020.02-Linux-x86_64.sh --output anaconda.sh

Теперь мы можем проверить целостность данных программы установки посредством проверки криптографического хэша через контрольную сумму SHA-256. Мы используем команду sha256sum с именем файла скрипта в качестве аргумента:

  1. sha256sum anaconda.sh

Результаты выполнения будет выглядеть примерно так:

Output
2b9f088b2022edb474915d9f69a803d6449d5fdb4c303041f60ac4aefcc208bb anaconda.sh

Необходимо проверить вывод на соответствие хэшу Anaconda с Python 3 на странице 64-битной версии Linux для соответствующей версии Anaconda. Если вывод соответствует хэшу, отображаемому в строке sha2561, вы можете продолжать.

Теперь мы можем запустить скрипт:

  1. bash anaconda.sh

Вывод должен выглядеть следующим образом:

Output
Welcome to Anaconda3 2020.02 In order to continue the installation process, please review the license agreement. Please, press ENTER to continue >>>

Нажмите ENTER, чтобы продолжить, а затем нажмите ENTER для чтения лицензии. Когда вы прочитаете лицензию, вам будет предложено принять ее условия:

Output
Do you approve the license terms? [yes|no]

Если вы согласны, введите yes.

Теперь вам будет предложено выбрать место для установки. Вы можете нажать ENTER, чтобы принять место установки по умолчанию, или указать другое место установки.

Output
Anaconda3 will now be installed into this location: /home/sammy/anaconda3 - Press ENTER to confirm the location - Press CTRL-C to abort the installation - Or specify a different location below [/home/sammy/anaconda3] >>>

После этого установка будет продолжена. Процедура установки может занять некоторое время.

После завершения установки появится следующий экран:

Output
... Preparing transaction: done Executing transaction: done installation finished. Do you wish the installer to initialize Anaconda3 by running conda init? [yes|no] [no] >>>

Введите yes, чтобы выполнить инициализацию Anaconda3. На экран будут выведены изменения, внесенные в разные каталоги. В одной из выводимых строк будет содержаться благодарность за установку Anaconda.

Output
... Thank you for installing Anaconda3! ...

Теперь вы можете активировать установку, используя файл ~/.bashrc:

  1. source ~/.bashrc

После этого вы перейдете в базовую среду програмирования Anaconda по умолчанию, и командная строка изменится следующим образом:

Хотя Anaconda поставляется в комплекте с этой базовой средой программирования по умолчанию, вам потребуются отдельные среды для ваших программ и их изоляции друг от друга.

Вы можете дополнительно проверить установку с помощью команды conda, например, с флагом list:

  1. conda list

На экран будут выведены все пакеты. доступные через установку Anaconda:

Output
# packages in environment at /home/sammy/anaconda3: # # Name Version Build Channel _ipyw_jlab_nb_ext_conf 0.1.0 py37_0 _libgcc_mutex 0.1 main alabaster 0.7.12 py37_0 anaconda 2020.02 py37_0 ...

Мы установили Anaconda и теперь можем перейти к настройке сред Anaconda.

Настройка сред Anaconda

Виртуальные среды Anaconda позволяют организовывать проекты по версиям Python и требуемым пакетам. Для каждой настраиваемой среды Anaconda можно указать версию Python и поместить все связанные файлы программирования в этот каталог.

Вначале можно проверить, какие версии Python доступны нам для использования:

  1. conda search "^python$"

На экран будет выведен перечень разных доступных версий Python, включая версии Python 3 и Python 2. Поскольку в этом обучающем модуле мы используем Anaconda с Python 3, у вас будет доступ только к версиям пакетов Python 3.

Создадим среду, используя самую последнюю версию Python 3. Для этого присвоим значение version 3 аргументу python. Мы назовем среду my_env, но возможно вы захотите использовать описательное название среды, особенно если вы используете несколько сред для доступа к разным версиям Python.

  1. conda create --name my_env python=3

На экран будет выведена информация о том, что мы загрузили, и какие пакеты будут установлены, а затем вам нужно будет ввести y или n. Если вы согласны, введите y.

После этого утилита conda доставит пакеты для среды и сообщит о завершении доставки.

Для активации вашей новой среды введите следующую команду:

  1. conda activate my_env

После активации среды префикс комадной строки изменится, показывая, что вы находитесь не в базовой среде, а в только что созданной.

В среде вы можете проверить использование желаемой версии Python:

  1. python --version
Output
Python 3.8.2

Когда вы будете готовы отключить свою среду Anaconda, введите:

  1. conda deactivate

Вы можете заменить слово source на ., и это не повлияет на результат.

Для работы с конкретной версией Python вы можете передать в аргумент python номер этой версии, например 3.5:

  1. conda create -n my_env35 python=3.5

Вы можете проверить все настроенные среды с помощью следующей команды:

  1. conda info --envs
Output
# conda environments: # base * /home/sammy/anaconda3 my_env /home/sammy/anaconda3/envs/my_env my_env35 /home/sammy/anaconda3/envs/my_env35

Звездочкой обозначается текущая активная среда.

Каждая среда, создаваемая с помощью conda create, имеет несколько пакетов по умолчанию:

  • _libgcc_mutex
  • ca-certificates
  • certifi
  • libedit
  • libffi
  • libgcc-ng
  • libstdcxx-ng
  • ncurses
  • openssl
  • pip
  • python
  • readline
  • setuptools
  • sqlite
  • tk
  • wheel
  • xz
  • zlib

Для добавления дополнительных пакетов, например numpy, вы можете использовать следующую команду:

  1. conda install --name my_env35 numpy

Если вы знаете, что вам потребуется среда numpy после создания, вы можете добавить ее в команду conda create:

  1. conda create --name my_env python=3 numpy

Если вы прекратите работу над каким-либо проектом, и вам больше не нужна будет соответствующая среда, вы можете удалить ее. Для этого введите следующее:

  1. conda remove --name my_env35 --all

Теперь при вводе команды conda info --envs удаленная среда больше не будет отображаться в списке.

Обновление Anaconda

Необходимо регулярно проверять статус обновления Anaconda, чтобы использовать все самые последние версии пакетов.

Для этого нужно предварительно обновить утилиту conda:

  1. conda update conda

Введите y в диалоге, чтобы продолжить обновление.

После обновления conda вы можете обновить дистрибутив Anaconda:

  1. conda update anaconda

Введите y в диалоге, чтобы продолжить.

Так вы будете гарантированно использовать самые последние версии conda и Anaconda.

Удаление Anaconda

Если вы больше не хотите использовать Anaconda, запустите модуль anaconda-clean, который удалит файлы конфигурации при удалении Anaconda.

  1. conda install anaconda-clean

Введите y в диалоге.

После установки вы можете запустить следующую команду. Перед удалением каждого компонента вам нужно будет ввести y в диалоге. Если вы не хотите проходить через диалоги, добавьте флаг --yes в конец команды:

  1. anaconda-clean

При этом в вашем домашнем каталоге будет создана папка резервного копирования с именем .anaconda_backup:

Output
Backup directory: /home/sammy/.anaconda_backup/2020-05-06T024432

Теперь вы можете удалить весь каталог Anaconda с помощью следующей команды:

  1. rm -rf ~/anaconda3

В заключение вы можете удалить строку PATH из файла .bashrc , добавленного Anaconda. Для этого откройте nano или другой текстовый редактор:

  1. nano ~/.bashrc

Прокрутите файл до конца (если установка выполнена недавно) или нажмите CTRL + W для поиска Anaconda. Удалите или закомментируйте блок Anaconda:

/home/sammy/.bashrc
...
# >>> conda initialize >>>
# !! Contents within this block are managed by 'conda init' !!
__conda_setup="$('/home/sammy/anaconda3/bin/conda' 'shell.bash' 'hook' 2> /dev/null)"
if [ $? -eq 0 ]; then
    eval "$__conda_setup"
else
    if [ -f "/home/sammy/anaconda3/etc/profile.d/conda.sh" ]; then
        . "/home/sammy/anaconda3/etc/profile.d/conda.sh"
    else
        export PATH="/home/sammy/anaconda3/bin:$PATH"
    fi
fi
unset __conda_setup
# <<< conda initialize <<<

Закончив редактирование файла, нажмите CTRL + X для выхода и y для сохранения изменений.

Удаление Anaconda с вашего сервера завершено. Если вы не отключили базовую среду программирования, вы можете выйти и снова войти на сервер для ее удаления.

Заключение

В этом обучающем модуле вы выполнили установку Anaconda, поработали с утилитой командной строки conda, настроили среды, выполнили обновление Anaconda и удалили Anaconda.

Вы можете использовать Anaconda для управления рабочими задачами анализа данных, научных вычислений, аналитики и обработки больших объемов данных. Теперь вы можете ознакомиться с обучающими модулями по анализу данных и машинному обучению, чтобы узнать больше о различных доступных инструментах и проектах, которыми вы можете заняться.

Также мы предлагаем бесплатную электронную книгу по машинному обучению «Проекты машинного обучения на Python».

Thanks for learning with the DigitalOcean Community. Check out our offerings for compute, storage, networking, and managed databases.

Learn more about our products

About the authors

Still looking for an answer?

Ask a questionSearch for more help

Was this helpful?
 
Leave a comment


This textbox defaults to using Markdown to format your answer.

You can type !ref in this text area to quickly search our full set of tutorials, documentation & marketplace offerings and insert the link!

Try DigitalOcean for free

Click below to sign up and get $200 of credit to try our products over 60 days!

Sign up

Join the Tech Talk
Success! Thank you! Please check your email for further details.

Please complete your information!

Become a contributor for community

Get paid to write technical tutorials and select a tech-focused charity to receive a matching donation.

DigitalOcean Documentation

Full documentation for every DigitalOcean product.

Resources for startups and SMBs

The Wave has everything you need to know about building a business, from raising funding to marketing your product.

Get our newsletter

Stay up to date by signing up for DigitalOcean’s Infrastructure as a Newsletter.

New accounts only. By submitting your email you agree to our Privacy Policy

The developer cloud

Scale up as you grow — whether you're running one virtual machine or ten thousand.

Get started for free

Sign up and get $200 in credit for your first 60 days with DigitalOcean.*

*This promotional offer applies to new accounts only.