Вопрос или проблема
Я использую Pop! OS. При выполнении любой простой команды apt
или apt-get
в терминале, даже такой простой, как apt --help
, я получаю сообщение об ошибке
apt: /lib/x86_64-linux-gnu/libc.so.6: версия 'GLIBC_2.32' не найдена (требуется /lib/x86_64-linux-gnu/libsystemd.so.0)
Однако, когда я ввожу lld --version
, он говорит мне, что я использую GLIBC 2.32. – конкретно, он говорит
lld (Ubuntu GLIBC 2.32-0ubuntu3) 2.32
Каждое решение, которое я нашел в Интернете, советует использовать что-то вроде sudo apt clean
для очистки, обновления или исправления, но уловка в том, что apt
— это именно то, что я не могу использовать. Есть ли какой-то ручной способ исправить это?
Эта проблема делает мой компьютер практически непригодным для использования, поэтому любая помощь будет очень ценна.
Скачайте и обновите следующие пакеты, используя sudo dpkg -i
, затем sudo apt --fix-broken install
, и, надеюсь, это решит вашу проблему, как и у меня
apt_2.3.15_amd64.deb libapt-pkg6.0_2.3.15_amd64.deb libc-bin_2.33-6_amd64.deb
apt-utils_2.3.15_amd64.deb libc6_2.31-13+deb11u2_amd64.deb libc-l10n_2.33-6_all.deb
debconf_1.5.79_all.deb libc6_2.31-13+deb11u2_i386.deb libgcc-s1_11.2.0-16_amd64.deb
debconf-i18n_1.5.79_all.deb libc6_2.33-6_amd64.deb libgcc-s1_11.2.0-16_i386.deb
debconf-utils_1.5.79_all.deb libc6_2.33-6_i386.deb libstdc++6_11.2.0-16_amd64.deb
gcc-11-base_11.2.0-16_amd64.deb libc6-dev_2.33-7_amd64.deb libstdc++6_11.2.0-16_i386.deb
gcc-11-base_11.2.0-16_i386.deb libc6-dev_2.33-7_i386.deb locales_2.33-6_all.deb
Поскольку иногда зависимые пакеты могут быть испорчены во время попытки обновить один или другой пакет независимо, выполнение этого может помочь решить проблему. 🙂
Попробуйте выполнить эту команду (если ваша программа написана на GO)
GOOS=linux GOARCH=amd64 CGO_ENABLED=0 go build -o main main.go
Ответ или решение
Ошибка ‘GLIBC_2.32’ не найдена при использовании apt и apt-get в Pop! OS
Когда вы сталкиваетесь с ошибкой вида apt: /lib/x86_64-linux-gnu/libc.so.6: version 'GLIBC_2.32' not found (required by /lib/x86_64-linux-gnu/libsystemd.so.0)
при попытке запуска команд из apt
или apt-get
, это может создавать значительные трудности, особенно если вы не можете использовать эти инструменты для диагностики и устранения проблемы.
Возможные причины проблемы
-
Несоответствующая версия GLIBC: Сообщение об ошибке указывает на то, что требуется версия GLIBC 2.32, которая не может быть найдена. Это может быть результатом неудачного обновления или конфликтов между установленными пакетами.
-
Проблемы с пакетами: Возможно, что некоторые пакеты были повреждены или установлены неправильно, что приводит к зависимостям, нарушающим работу других пакетов.
Решение проблемы
Поскольку команды apt
и apt-get
не доступны для использования, вы можете рассмотреть следующие шаги для ее устранения:
-
Загрузка .deb пакетов вручную:
Посколькуapt
не работает, вы можете вручную загрузить необходимые пакеты, такие какapt
,libc6
, и другие зависимости. Используйте следующий список как отправную точку. Скачайте их с официального сайта вашей дистрибутивной версии или с trusted источников:apt_2.3.15_amd64.deb
libapt-pkg6.0_2.3.15_amd64.deb
libc-bin_2.33-6_amd64.deb
libc6_2.33-6_amd64.deb
- и другие, описанные в вашем вопросе.
Убедитесь, что загружаемые версии пакетов совместимы с вашей системой.
-
Установка пакетов с помощью dpkg:
После того как вы скачали необходимые .deb файлы, воспользуйтесь следующей командой для их установки:sudo dpkg -i путь_к_пакетам/*.deb
Обязательно замените
путь_к_пакетам
на фактический путь к загруженным пакетам. Если возникнут проблемы с зависимостями, это будет указано в выводе команды. -
Использование apt для исправления сломанных зависимостей:
После установки пакетов используйте следующую команду для исправления возможных сломанных зависимостей:sudo apt --fix-broken install
Если эта команда также недоступна, возможно, вам удастся запустить ее с помощью специального бинарного файла, если он доступен.
-
Проверка версии GLIBC:
Если необходимо, убедитесь, что установленная версия GLIBC соответствует требуемой. Проверить версию можно с помощью команды:ldd --version
-
Сборка программного обеспечения на Go:
Если ваше программное обеспечение было разработано на Go и вызывает эту ошибку, попробуйте пересобрать его с установленными флагами:GOOS=linux GOARCH=amd64 CGO_ENABLED=0 go build -o main main.go
Заключение
Ошибка ‘GLIBC_2.32’ может серьезно повлиять на работоспособность вашего дистрибутива Pop! OS. Следование указанным шагам по загрузке и установке необходимых пакетов позволит вам восстановить функциональность команд apt
и apt-get
. В идеале, регулярное обновление системы должно предотвратить возникновение подобных ситуаций в будущем. Если вышеописанные шаги не помогли, возможно, стоит рассмотреть переустановку дистрибутива или восстановление из резервной копии.