Подготовка. Обновление 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.9.1):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 оптимизирует процесс, запуском нескольких тестов, это может немного замедлить процедуру.
Далее скрипт запускает несколько проверок, чтобы быть уверенным, что все необходимые зависимости присутствуют в системе:
- Start the Python 3.11.9 build process:
make -j 12
Чтобы ускорить процесс сборки поставьте после -j количество процессоров, которые у вас есть в рабочей станции. Это можно узнать командой nproc.
- Когда процесс сборки завершится можно запустить установку Питона следующей командой:
sudo make altinstall
Рекомендуется использовать команду altinstall вместо install чтобы произошла замена имеющихся в системе библиотек python3.
Готово. Python 3.11.9 инсталлирован в системе. Версию можно проверить следующей командой:
python3.11 --version
Результат покажет текущую версию Python:
Python 3.11.9