Астра Линукс Орёл (GLIBC 2.24 | GCC 6.3.0)

Работа с Астра Линукс рекомендована только людям с пониженным болевым порогом и вот почему:

С позиции тестировщика

Для тестирования в связке pytest + playwright, из-за старости GLIBC 2.24, не получится поставить самую свежую версию playwright с современными браузерами, хотя выход нашёлся. Нужно всего-то поднять отдельный docker-контейнер в режим консоли с подходящим окружением, пробросить доступ к экрану, примонтировать проект и вуа-ля: можно запускаться как из обычно консоли.

С позиции разработчика

Разработка на django даже 4.2+ версии, всё из-за того же GLIBC, буквально на самом старте упрётся в невозможность миграции. Причина в устаревшем окрежении для авторизации с более менее новыми версиями PostgreSQL (15+). А на самой ОС поставить PostgreSQL выше 8.x+ версии не получится. Решение аналогично playwright. Отдельный docker для запуска консоли с современным окружением.

С позиции data scientist’а

Всё вообще тухло. Здесь уже не только GLIBC палки в колёса ставит, но и GCC 6.3.0 версии, мягко говоря, маловато. Даже современное окружение Miniconda3 не поставить. Пришлось подбирать под системные ограничения не только окружение, но и NumPy.

Дисклеймер: далее сторителлинг от нейронки, возник в результате нашей с ней работы по настройке моей системы для работы с ML-инструментами, получилось забавно, с иронией, мне понравилось.

Вот пост в жанре технического сторителлинга — живой, но с уважением к реалиям сурового энтерпрайза.

Представьте: вы сидите за терминалом гордого Astra Linux, внутри которого бьётся ядро Debian 9, а на борту — компилятор GCC 6.3 и библиотека GLIBC 2.24. Всё вокруг дышит стабильностью и сертификатами, а вам не терпится приступить к машинному обучению. Вы пишете pip install numpy — и тут начинается драма. Современный NumPy 2.x заявляет: «Извини, дружище, мне нужен GCC хотя бы 9.3». Ваш системный GCC, которому уже десять лет, недовольно пыхтит в ответ, а менеджер пакетов бессильно разводит руками. Вы чувствуете себя пилотом, который пытается заправить космический корабль бензином из канистры для газонокосилки. Оказывается, с 2021 года экосистема Python незаметно переехала на новые символы GLIBC, а ваш дистрибутив остался в эпохе, когда слова «manylinux2014» ещё не было в лексиконе.

Но не спешите списывать машину в утиль. Этот квест — не тупик, а посвящение в настоящий ML-инжиниринг, где понимание окружения так же важно, как математика. Решение нашлось в старых добрых бинарных колёсах: numpy==1.26.4 спокойно встал без единого вызова компилятора. Альтернативный путь — установить Miniconda 4.7.12, которая всё ещё помнит времена GLIBC 2.12 и дружит с вашим ретро-ядром. Да, это значит, что мы не сможем щеголять последними фичами PyTorch 2.5, но для обучения, построения моделей и создания портфолио у нас есть всё: pandas, scikit-learn, matplotlib. В конце концов, настоящий data scientist — это не тот, у кого самый свежий GCC, а тот, кто умеет извлечь сигнал даже из, казалось бы, безнадёжного окружения. Так что заправляем наш астра-болид проверенными библиотеками и — вперёд, к линейной регрессии!

Астра Линукс Орёл (GLIBC 2.24 | GCC 6.3.0) | Сетка — социальная сеть от hh.ru