Найти тему

Установка Anaconda в Simply Linux

После того как Windows XP стал мне периодически угрожать принудительно перевести мой домашний компьютер на Widows 10, я решил перейти на Linux. Выбор пал на дистрибутив Ubuntu. Ubuntu 18.04 периодически зависал, хранитель экрана, режим сна и гибернации были недоступны.

Случайно узнал (из статьи негативного характера) о существовании российского дистрибутива Linux - Simply Linux. Изучив вопрос, я был приятно удивлён полнотой предоставляемой информации о дистрибутиве, уровне поддержки и решил установить его на свой домашний компьютер.

Simply Linux не зависает, режимы сна и гибернации в наличии, и в работе он оказался удобнее Ubuntu.

В связи с переустановкой ОС возникла необходимость переустановки основного инструмента для моей работы - программного пакета Anaconda.

Из wikipedia:

Anaconda - дистрибутив языков программирования Python и R, включающий набор популярных свободных библиотек, объединённых проблематиками науки о данных и машинного обучения.

В состав Anaconda входят в том числе Jupyter Notebook и набор библиотек (numpy, scipy, pandas) ради которых я этот программный пакет и устанавливаю.

После установки Anаconda занимает 6,6 Гб дискового пространства. Скорее всего 95% из того, что установлено мне никогда не понадобится, но гораздо проще установить Anаconda полностью чем тратить время на установку только нужных пакетов с целью сберечь дисковое пространство.

Установщик я скачал отсюда:

https://www.anaconda.com/download

По умолчанию сохраняется он в каталог ~/Загрузки

Переходим в режим суперпользователя:

su -

Переходим в каталог Загрузки

cd Загрузки

Запускаем установщик Anaconda

bash Anaconda3-2021.11-Linux-x86_64.sh

где Anaconda3-2021.11-Linux-x86_64.sh - скаченный загрузчик Anaconda

В процессе установки будет задан вопрос о месте установки Anaconda:

Anaconda3 will now be installed into this location:

/home/sergey/anaconda3

- Press ENTER to confirm the location

- Press CTRL-C to abort the installation

- Or specify a different location below

По умолчанию предлагается установить Anaconda в каталог пользователя (в моём случае /home/sergey/). Если просто нажать Enter, то Anaconda установится в каталог по умолчанию.

Т.к. /home у меня смонтирован на магнитном жёстком диске, a корневой каталог / на SSD, то для уменьшения времени загрузки я установил Anaconda на SSD в каталог /opt. Я набрал

/opt/anaconda3

и нажал Enter.

Далее установщик задаст вопрос:

Do you wish the installer to initialize Anaconda3
by running conda init? [yes|no]

Нужно ответить yes

В этом случае в файл ~/.bashrc будут добавлен скрипт, который будет инициализировать пакетный менеджер conda и запускать собственное окружение Anaconda при каждом запуске терминала, что будет видно по подсказке командной строки:

(base) [sergey@localhost ~]$

где (base) - название окружения Anaconda, sergey - имя пользователя, localhost - имя компьютера.

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

conda deactivate

Строка-подсказка изменится на

[sergey@localhost ~]$

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

conda config --set auto_activate_base false

В файл ~/.condarc будет добавлена строка

auto_activate_base: false

Теперь при запуске терминала будет запускаться основное окружение и чтобы получить возможность работать с Anaconda следует сначала запустить её окружение:

conda activate

После этого можно запустить Jupyter Notebook командой

jupyter notebook

либо Anaconda Navigator командой

anaconda-navigator

При повторном запуске можно вместо полного имени команды писать одну или несколько первых букв команды после восклицательного знака:

! ju или !an

Чтобы упростить процесс запуска Jupyter Notebook присвоим ему комбинацию горячих клавиш Ctrl+Alt+J.

Создаём каталог /home/sergey/bin/ в котором размещаем файл jn.sh со следующим содержанием:

#!/bin/bash
cd /home/sergey/dzen # Рабочая папка
conda activate
jupyter notebook

Затем зарегистрируем комбинацию горячих клавиш в системе.

SL -> Диспетчер настроек -> Клавиатура -> Комбинация клавиш -> Добавить -> Команда: /home/sergey/bin/jn.sh -> Комбинация клавиш: Ctrl+Alt+J

Теперь Jupyter Notebook можно запускать нажав Ctrl+Alt+J.

Если при нажатии Ctrl+Alt+J появляется сообщение "Отказано в доступе", то необходимо дать разрешение системе выполнять файл jn.sh командой в терминале

chmod +x /home/sergey/bin/jn.sh

Для того, чтобы иметь возможность создавать файлы в каталоге /opt/anaconda3 и его подкаталогах необходимо дать на это право соответствующему пользователю (себе) :

sudo chown -R sergey /opt/anaconda3

где sergey - имя пользователя.

После этого мы сможем создать в каталоге /opt/anaconda3/lib/python3.9/site-packages/ файл mypackages.pth в который будем добавлять пути к собственным пакетам и модулям с целью получения возможности импортировать их из других модулей, используя ключевое слово import, без указания пути к ним.

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

В качестве примера проверим версии Python в основном окружении и в окружении Anaconda:

[sergey@localhost ~]$ python3 -V

Python 3.9.6

[sergey@localhost ~]$ conda activate

(base) [sergey@localhost ~]$ python3 -V

Python 3.9.7

Из примера видно, что версия Python, входящего в состав Anaconda более поздняя чем версия Python в составе Simply Linux 10.0.

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

Например, мне понадобилась версия пакета scipy выше 1.7.3. Чтобы узнать какие версии доступны, вводим в терминале команду

conda search scipy

Из вывода на экран узнаём, что самой свежей из доступных версий является 1.9.3. Устанавливаем её командой

conda install scipy=1.9.3