Всем привет! 🦝 Это небольшая статья ЭКСПЕРИМЕНТ! Эксперимент по обновлению библиотек libc6 в Astra Linux CE до версии 2.36. Приятного чтения.
❗️❗️❗️Выполняйте описанные в этой статье действия на свой страх и риск❗️❗️❗️
🌊вВодная часть
В своих предыдущих статьях, я частенько натыкался на проблему старой версии библиотек libc6. Сегодня я провел эксперимент и решил обновить эти библиотеки до версии. Мои поиски информации в интернете связанной с этой темой особо не увенчались успехом. Мне ужалось найти статью интересную статью, которую я уже не раз упоминал в своих инструкциях, 🔗ссылка ниже.
В это статье очень просто написано о том, как обновить библиотеки libc6 до версии 2.28. Это здорово, но хотелось бы более свежую версию. У меня ушло много времени на эксперименты, но обновление таки получислось.
✳️Обновление библиотек
Давайте проверим какая версия библиотек установлена в системе на данный момент. Для этого в терминале пишем следующую команду
ldd --version
Исходя из полученной в терминале информации - установленная версия 2.24. Давайте её обновим.
📌Кстати при проведении манипуляций с системой, не забывайте делать резервные копии самой системы, чтобы в случае чего, иметь возможность вернуть всё как было.
Выполняем скрипт указанный в статье, который загрузит установочные пакеты во временную директорию.
И после загрузки выполняем установку всех загруженных пакетов, с использованием программы управления пакетами dpkg с правами суперпользователя.
sudo dpkg -i *.deb
После выполнения этой команды, мы получим множество ошибок с зависимостями.
В инструкции написано, что выполнять команду установки нужно дважды. И если выполнить эту команду второй раз, то мы получим вот такое окошко в терминале, с подтверждением установки.
Но получить такое окошко с первого раза у меня не получилось.
❓С чем это связано - загадка, для меня по крайней мере❓
Далее, если согласиться с перезапуском служб, то необходимо согласиться с установкой новой версии файла /etc/locale.alias. Файл /etc/locale.alias в Linux отвечает за установку альтернативных имен для различных локалей (locale), используемых системой.
Соглашаемся, введя Y и после этого начнется генерация локалей (locales), включая ru_RU.UTF-8, и установка новой версии файла настройки /etc/locale.alias.
Далее согласно инструкции необходимо выполнить исправление зависимостей пакетов.
sudo apt-get -f install
Вроде всё прошло гладко, а это не может не радовать. Давайте снова проверим версию установленных библиотек libc6
Новая версия на борту, а это значит - можно попробовать установить более свежую версию libc6. Для этого я решил подменить репозиторий в /etc/apt/sources.list.
Для Debian 10 (Buster) последняя версия libc6 это 2.28. Это я понял посетив официальный ftp сервер Debian
Получается, чтобы обновить библиотеки нужно добавить репозиторий от следующего дистрибутива. А после Buster следует Bullseye. Я изменил репозиторий в /etc/apt/sources.list
Далее я выполнил обновление заголовков
sudo apt update
Необходимо будет добавить ключи, я их добавил. Как это делается я писал в одной из своих статей
После добавления ключей, снова выполнил обновление заголовков
Появилось 15 пакетов для обновления, смотрим что это за пакеты
sudo apt list --upgradable
Вот так дела, libc6 может быть обновлен с версии 2.28 до версии 2.31. Нужно попробовать это сделать.
Выполняю обновление
sudo apt dist-upgrade
Новая версия установилась без проблем! Проверяем
И правда, на борту теперь версия 2.31. Я решил не останавливаться на этом и попробовал добавить репозитории от следующей версии Debian - Bookworm.
Теперь появилась возможность обновиться до версии 2.36! Обновляемся.
❗️❗️❗️И тут важный момент❗️❗️❗️
Командой sudo apt dist-upgrade уже не получиться обновиться (Fly хочет улететь). Нужно обновлять именно libc6
Для обновления именно этого пакета, я решил воспользоваться встроенным менеджером пакетов (мне так спокойнее). Запускаем Synaptic и ищем в поиске libc6
Помечаем его для обновления двойным кликом и соглашаемся с установкой.
После установки, вновь проверяем установленную версию
Версия 2.36 на борту! Пробую перезапустить систему, а то вдруг это сон. Но, нет, система успешно перезагрузилась. И даже после перезагрузки, версия осталась 2.36. Что ж, теперь можно попробовать накатить крайнюю версию VS Code.
❗️❗️❗️По окончанию выполнения процесса обновления, настоятельно рекомендую вернуть в /etc/apt/sources.list репозиторий от версии Debian 10 (Buster). В противном случае, при выполнении общего обновления может произойти беда❗️❗️❗️