Подготовка. Обновление Python на Astra Linux¶
По умолчанию на Astra Linux установлен старый Python версии 3.6. Это не дает возможности пользоваться современными библиотеками, которые используются в ПО и могут быть использованы пользователями при написании своих скриптов.
В связи с этим необходимо произвести обновление Python. Ниже представлены все необходимые команды для того, чтобы скачать исходные коды Python, скомпилировать их на рабочей станции и установить. К сожалению, в общем доступе нет установочной версии Python для простой установки, поэтому необходимо их собрать самому из исходников.
-
Установить зависимости:
sudo apt install build-essential zlib1g-dev libncurses5-dev libgdbm-dev liblzma-dev libnss3-dev libssl-dev libsqlite3-dev libreadline-dev libffi-dev curl libbz2-dev -
Скачать текущую версию исходников с официального сайта Python download page при помощи операции
wgetПример для текущей версии Python на время написания инструкции (Python 3.11.9):wget https://www.python.org/ftp/python/3.11.9/Python-3.11.9.tgz -
Когда загрузка завершена, разархивировать архив с помощью команды tar :
tar -xf Python-3.11.9.tgz -
Перейти в папку, где находятся разархивированные файлы и запустить скрипт
configure:cd Python-3.11.9 ./configure --enable-optimizations
Опция --enable-optimizations оптимизирует процесс, запуском нескольких тестов, это может немного замедлить процедуру.
Далее скрипт запускает несколько проверок, чтобы быть уверенным, что все необходимые зависимости присутствуют в системе:
- Запустить процесс сборки Python 3.11.9:
make -j 12
Чтобы ускорить процесс сборки поставьте после -j количество процессоров, которые у вас есть на рабочей станции. Это можно узнать командой nproc.
- Когда процесс сборки завершится можно запустить установку Питона следующей командой:
sudo make altinstall
Рекомендуется использовать команду altinstall вместо install, чтобы не заменить имеющиеся в системе библиотеки python3.
Готово. Python 3.11.9 инсталлирован в системе. Версию можно проверить следующей командой:
python3.11 --version
Результат покажет текущую версию Python:
Python 3.11.9