[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Bug#882272: libc6:amd64: upgrade of libc6:amd64 + libc6:i386 + libc6-i686 breaks system



Package: libc6
Version: 2.24-11+deb9u1
Severity: critical
Justification: breaks the whole system


Upgrade of glibc packages from jessie to stretch versions failed
resulting in most programs (presumably all non-static 32-bit ones) to
segfault on start. I believe the following happend:
1. libc6:i386 and libc6:amd64 2.24-11+deb9u1 were unpacked,
/etc/ld.so.nohwcap was created by preinst scripts.
2. postinst of libc6:amd64 started running and removed
/etc/ld.so.nohwcap (as $hwcappkgs is empty for amd64).
3. As libc6-i686 2.19-18+deb8u10 was still installed most applications
started segfaulting (including most essential ones).

Unfortunately, I did not have any root shell open, and while
export LD_HWCAP_MASK=0
workaround worked on many applications, it had no effect on setuid
programs (like su and sudo). I had to resolve the problem by rebooting
system with break=init argument and running
touch /root/etc/ld.so.nohwcap
from initramfs shell (and later calling
dpkg --purge libc6-i686
before finishing upgrade of libc6:amd64).

This probably should be fixed by replacing

    case ${DPKG_MAINTSCRIPT_ARCH} in
        alpha)
            hwcappkgs="libc6-alphaev67"
            ;;
        i386)
            hwcappkgs="libc6-i686 libc6-xen"
            ;;
        kfreebsd-i386)
            hwcappkgs="libc0.1-i686"
            ;;
    esac

with something like

    hwcappkgs="libc6-alphaev67 libc6-i686 libc6-xen libc0.1-i686"

or

    hwcappkgs="libc6.1-alphaev67:alpha libc6-i686:i386 libc6-xen:i386 libc0.1-i686:kfreebsd-i386"

in debian/script.in/nohwcap.sh.


sghpc% sudo apt upgrade
Чтение списков пакетов… Готово
Построение дерева зависимостей       
Чтение информации о состоянии… Готово
Расчёт обновлений…Следующие пакеты устанавливались автоматически и больше не требуются:
  aumix aumix-common bzip2-doc gdb-doc libc6-i686 linux-image-3.16.0-4-amd64:amd64 linux-image-4.9.0-3-amd64-dbg:amd64
  python-networkx python-pygraphviz python-skimage python-skimage-lib
Для их удаления используйте «apt-get autoremove».
Готово
НОВЫЕ пакеты, которые будут установлены:
  libc-l10n
Пакеты, которые будут оставлены в неизменном виде:
  geeqie geeqie-common geeqie-dbg
Пакеты, которые будут обновлены:
  glibc-doc libc-bin libc-dev-bin libc6 libc6:amd64 libc6-dbg libc6-dbg:amd64 libc6-dev libc6-i686 locales locales-all
  multiarch-support
обновлено 12, установлено 1 новых пакетов, для удаления отмечено 0 пакетов, и 3 пакетов не обновлено.
Необходимо скачать 0 B/44,6 MB архивов.
После данной операции, объём занятого дискового пространства уменьшится на 9 642 kB.
Хотите продолжить? [Д/н] 
Чтение журнала изменений... Выполнено                 
apt-listchanges: Хотите продолжить? [Y/n] 
apt-listchanges: Отправка почты root: apt-listchanges: журнал изменений sghpc
apt-listchanges: Отправка почты root: apt-listchanges: новости о sghpc
Предварительная настройка пакетов ...
(Чтение базы данных … на данный момент установлено 803482 файла и каталога.)
Подготовка к распаковке …/locales_2.24-11+deb9u1_all.deb …
Распаковывается locales (2.24-11+deb9u1) на замену (2.19-18+deb8u10) …
Выбор ранее не выбранного пакета libc-l10n.
Подготовка к распаковке …/libc-l10n_2.24-11+deb9u1_all.deb …
Распаковывается libc-l10n (2.24-11+deb9u1) …
Подготовка к распаковке …/locales-all_2.24-11+deb9u1_i386.deb …
Распаковывается locales-all (2.24-11+deb9u1) на замену (2.19-18+deb8u10) …
Подготовка к распаковке …/libc6_2.24-11+deb9u1_i386.deb …
Деконфигурируется libc6:amd64 (2.19-18+deb8u10) …
Checking for services that may need to be restarted...
Checking init scripts...##########.........................................................................................] 
Распаковывается libc6:i386 (2.24-11+deb9u1) на замену (2.19-18+deb8u10) …
Подготовка к распаковке …/libc6_2.24-11+deb9u1_amd64.deb ….................................................................] 
Checking for services that may need to be restarted........................................................................] 
Checking init scripts...
Распаковывается libc6:amd64 (2.24-11+deb9u1) на замену (2.19-18+deb8u10) …
Настраивается пакет libc6:amd64 (2.24-11+deb9u1) ….........................................................................] 
dpkg: ошибка при обработке пакета libc6:amd64 (--configure):...............................................................] 
 подпроцесс установлен сценарий post-installation уничтожен по сигналу (Ошибка сегментирования)
Настраивается пакет libc6:i386 (2.24-11+deb9u1) …
Устанавливается новая версия файла настройки /etc/ld.so.conf.d/i386-linux-gnu.conf …
dpkg: ошибка при обработке пакета libc6:i386 (--configure):................................................................] 
 подпроцесс установлен сценарий post-installation уничтожен по сигналу (Ошибка сегментирования)
При обработке следующих пакетов произошли ошибки:
 libc6:amd64
 libc6:i386
E: Sub-process /usr/bin/dpkg returned an error code (1)
E: Problem executing scripts DPkg::Post-Invoke 'adequate --help >/dev/null 2>&1 || exit 0; exec adequate --debconf --user nobody --pending'
E: Sub-process returned an error code



-- System Information:
Debian Release: 8.9
  APT prefers oldstable-updates
  APT policy: (900, 'oldstable-updates'), (900, 'oldstable'), (500, 'stable-updates'), (500, 'proposed-updates'), (500, 'oldstable-proposed-updates'), (500, 'oldoldstable-updates')
Architecture: i386 (x86_64)
Foreign Architectures: amd64

Kernel: Linux 4.9.0-4-amd64 (SMP w/4 CPU cores)
Locale: LANG=ru_RU.UTF-8, LC_CTYPE=ru_RU.UTF-8 (charmap=UTF-8)
Shell: /bin/sh linked to /bin/dash
Init: sysvinit (via /sbin/init)

Versions of packages libc6:amd64 depends on:
ii  libgcc1  1:4.9.2-10

libc6:amd64 recommends no packages.

Versions of packages libc6:amd64 suggests:
ii  debconf [debconf-2.0]  1.5.61
ii  glibc-doc              2.24-11+deb9u1
ii  libc-l10n              2.24-11+deb9u1
ii  locales                2.24-11+deb9u1

-- debconf information:
* libraries/restart-without-asking: false
  glibc/kernel-too-old:
  glibc/kernel-not-supported:
  glibc/restart-failed:
* glibc/disable-screensaver:
* glibc/upgrade: true
* glibc/restart-services: openbsd-inetd exim4 cups cron atd apache2


Reply to: