PHP7.4 ldap сломан на focal после 13 декабря 2024 года.

Вопрос или проблема

Вчера вечером незапланированное обновление (13/12/2024) на Ubuntu 20.04.6 LTS (focal) обновило php7.4 с версии 7.4.3-4ubuntu2.24 до 7.4.3-4ubuntu2.26.

К сожалению, после обновления модуль php-ldap больше не работает.

Не удается загрузить динамическую библиотеку 'ldap.so' (попытка: /usr/lib/php/20190902/ldap.so (/usr/lib/php/20190902/ldap.so: неопределенный символ: RETURN_THROWS), /usr/lib/php/20190902/ldap.so.so (/usr/lib/php/20190902/ldap.so.so: не удается открыть общий объектный файл

Я проверил это на двух разных серверах.
Я надеялся, что можно будет откатиться, но единственные версии, доступные в репозиториях в данный момент, это последние и базовая версия.
Кто-нибудь знает, где я могу найти пакеты для отката?
И, что наиболее важно, куда сообщить о проблеме?

У нас была такая же проблема. Если вы не удаляете кэш после обновлений, вы можете переустановить старые пакеты, как мы сделали:

apt install php7.4-common=7.4.3-4ubuntu2.24 php7.4-ldap=7.4.3-4ubuntu2.24 php7.4-cli=7.4.3-4ubuntu2.24 php7.4-json=7.4.3-4ubuntu2.24 php7.4-opcache=7.4.3-4ubuntu2.24 php7.4-readline=7.4.3-4ubuntu2.24 libapache2-mod-php7.4=7.4.3-4ubuntu2.24

Та же проблема здесь, приложения, которые используют php и модуль ldap для аутентификации, больше не работают сегодня 12/13/2024

УВЕДОМЛЕНИЕ: Сообщение PHP: Предупреждение PHP: Ошибка при загрузке: Не удается загрузить динамическую библиотеку ‘ldap.so’ (попытка: /usr/lib/php/20190902/ldap.so

Ответ или решение

К сожалению, проблема с модулем php-ldap после обновления PHP 7.4 на Ubuntu 20.04.6 LTS (Focal) 13 декабря 2024 года, довольно серьезная. Обновление, произведенное автоматически, привело к ошибке, из-за которой модуль не может быть загружен, и это значительно мешает работе приложений, использующих аутентификацию через LDAP.

Подробный анализ проблемы

Согласно предоставленной информации, после обновления до версии 7.4.3-4ubuntu2.26 возникает следующая ошибка:

Unable to load dynamic library 'ldap.so' (tried: /usr/lib/php/20190902/ldap.so (/usr/lib/php/20190902/ldap.so: undefined symbol: RETURN_THROWS), /usr/lib/php/20190902/ldap.so.so (/usr/lib/php/20190902/ldap.so.so: cannot open shared object file)

Эта ошибка указывает на то, что библиотека ldap.so не может быть загружена из-за отсутствия определенного символа (RETURN_THROWS). Это может происходить из-за несовместимости между версиями PHP и модулей или изменений в API, внесенных в процессе обновления.

Возможные решения

  1. Откат обновлений: Поскольку вы заметили, что другие версии пакетов недоступны в репозиториях, вы можете попробовать выполнить откат с помощью локального кэша пакетного менеджера APT, если он не был очищен после обновления. Для этого выполните следующую команду:

    sudo apt install php7.4-common=7.4.3-4ubuntu2.24 php7.4-ldap=7.4.3-4ubuntu2.24 php7.4-cli=7.4.3-4ubuntu2.24 php7.4-json=7.4.3-4ubuntu2.24 php7.4-opcache=7.4.3-4ubuntu2.24 php7.4-readline=7.4.3-4ubuntu2.24 libapache2-mod-php7.4=7.4.3-4ubuntu2.24

    Убедитесь, что вы используете правильные версии пакетов. Это может временно решить проблему.

  2. Проверка совместимости с другими модулями: Возможно, конфликты возникают из-за других обновленных модулей. Проверьте, требует ли модуль ldap обновления или переустановки.

  3. Сообщение о проблеме: Для последующего разрешения проблемы, создание отчета об ошибке может помочь как вам, так и другим пользователям. Чтобы сообщить о проблеме, вы можете воспользоваться следующими ресурсами:

    • Ubuntu Launchpad – зарегистрируйте баг, указав детали и воспроизводимые шаги.
    • Форумы и сообщества, такие как Ask Ubuntu или Stack Overflow – поделитесь проблемой и получите возможные решения от сообщества.

Заключение

На данный момент лучше всего установить предыдущие версии необходимых пакетов, если доступ к ним сохраняется. Хотя проблемы с совместимостью могут возникать в результате обновлений, взаимодействие с сообществом и разработчиками может помочь решить возникшие сложности. Это также будет способствовать улучшению будущих релизов и минимизации подобных затруднений.

Оцените материал
Добавить комментарий

Капча загружается...