# Как установить и настроить Anaconda на Ubuntu

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

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

В этой инструкции мы установим Anaconda, работающую на Python 3 на VPS с Ubuntu.

Нам понадобится только предварительно настроенный сервер на Ubuntu.

# Установка Anaconda

Устанавливать Anaconda мы будем из официального источника. Для этого перейдём в папку, где у нас хранятся временные файлы, и скачаем туда архив с официального сайта разработчика (opens new window):

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

Мы можем убедиться в достоверности скачанного установочного файла, проверив его хэш:

sha256sum anaconda.sh

Результат вывода мы можем сравнить с хэшами, представленными на официальном сайте (opens new window).

После сравнения хэшей и подтверждения правильности скачанной версии можно переходить к установке Anaconda. Запустим установочный скрипт:

bash anaconda.sh

После начала установки Anaconda попросит прочитать длинное лицензионное соглашение и принять его (указываем yes). Затем Anaconda предложит выбрать директорию для установки и запустит установку приложения. По завершении установки на экран будет выведено сообщение:

# Output
…
Thank you for installing Anaconda3!

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

# Начало работы

Запустим Anaconda и перейдём к работе с ней:

source ~/.bashrc

Это позволит нам перейти в базовую среду программирования. При этом в командной строке перед именем нашего пользователя появится сообщение (base):

(base) user@ubuntu:

Базовая среда для программирования присутствует в Anaconda «из коробки». Её можно использовать для проверки установки и базовой настройки программы, но не для создания новых проектов — для каждого из них лучше создавать отдельную среду.

В качестве альтернативного метода проверки установки Anaconda можно посмотреть список доступных для установки пакетов:

conda list

# Output

# packages in environment at /home/regular/anaconda3:
#
# Name                    Version                   Build                     Channel
_ipyw_jlab_nb_ext_conf    0.1.0            py39h06a4308_0
_libgcc_mutex             0.1                        main
_openmp_mutex             4.5                       1_gnu
alabaster                 0.7.12             pyhd3eb1b0_0
anaconda                  2021.11                  py39_0
anaconda-client           1.9.0            py39h06a4308_0
anaconda-navigator        2.1.1                    py39_0
…

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

# Создание новой среды в Anaconda

Для каждого нового проекта лучше всего создавать отдельную среду — это поможет разделить зависимости, установить в каждую такую среду свою версию Python и необходимые для функционирования дополнительные пакеты.

Сначала определим версию Python, которой будем пользоваться. Проверим список всех доступных для установки версий:

conda search “^python$"

# Output

Loading channels: done
# Name                       Version           Build  Channel
python                        2.7.13     hac47a24_15  pkgs/main
python                        2.7.13     heccc3f1_16  pkgs/main
python                        2.7.13     hfff3488_13  pkgs/main
python                        2.7.14     h1571d57_29  pkgs/main
python                        2.7.14     h1571d57_30  pkgs/main
…
python                        3.10.0      h12debd9_5  pkgs/main
python                        3.10.0      h151d27f_3  pkgs/main
python                        3.10.3      h12debd9_5  pkgs/main
python                        3.10.4      h12debd9_0  pkgs/main

На экран будет выведен список всех доступных версий Python со сведениями об их сборке и расположении.

Создадим новую среду программирования и присвоим её переменной python значение 3.10.3, чтобы активировать соответствующую версию Python:

(base) root@ubuntu: conda create --name new_env python=3.10.3

В данном случае мы устанавливаем не последнюю из доступных версий Python. Установить последнюю можно, указав python3.

При создании новой среды Anaconda предупредит, что будет загружена и установлена часть дополнительных пакетов:

# Output

The following packages will be downloaded:

    package                    |            build
    ---------------------------|-----------------
    ca-certificates-2022.3.29  |       h06a4308_0         117 KB
    certifi-2021.5.30          |  py310h06a4308_0         148 KB
    ncurses-6.3                |       h7f8727e_2         782 KB
    openssl-1.1.1n             |       h7f8727e_0         2.5 MB

…

The following NEW packages will be INSTALLED:

  _libgcc_mutex      pkgs/main/linux-64::_libgcc_mutex-0.1-main
  _openmp_mutex      pkgs/main/linux-64::_openmp_mutex-4.5-1_gnu
  bzip2              pkgs/main/linux-64::bzip2-1.0.8-h7b6447c_0
  ca-certificates    pkgs/main/linux-64::ca-certificates-2022.3.29-h06a4308_0

А в конце выдаст подсказку по активации новой среды:

# Output# To activate this environment, use
#
#     $ conda activate new_env
#
# To deactivate an active environment, use
#
#     $ conda deactivate

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

(base) root@ubuntu: conda activate new_env

(new_env) root@ubuntu: python --version

# Output

Python 3.10.3

Как видим, создание новой среды прошло успешно.

Чтобы закончить работу со средой программирования, в которой вы сейчас находитесь (new_env в нашем случае), введите команду conda deactivate:

(new_env) root@ubuntu: conda deactivate

После этого вы вернётесь в базовую среду (base).

Проверить все доступные среды можно командой:

(base) root@ubuntu:conda info --envs

# conda environments:
#
base                  *  /home/root/anaconda3
new_env                  /home/root/anaconda3/envs/new_env

Звёздочкой выделена активная среда.

# Установка дополнительных пакетов

Новые среды программирования в Anaconda создаются со стандартным набором пакетов:

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

Если вы знаете, что при создании нового проекта вам понадобятся дополнительные пакеты, их можно добавить к стандартному набору пакетов ещё при создании среды:

(base) root@ubuntu: conda create --name seabron_env python=3 seaborn

Здесь мы добавляем к стандартному набору установки Seaborn — пакет для создания инфографики в Python.

Если же дополнительный пакет нужно установить уже в ходе работы над проектом в созданную среду, просто выполните команду install:

(seabron_env) root@ubuntu: conda install seaborn