Назад | Перейти на главную страницу

dpkg сломан при обновлении Debian Etch до Lenny

Добрый день!

Пытаясь вернуть коробку Ленни, похоже, я что-то сломал. Он обновляет libc и glib после этого dpkg кажется сломанным.

Я могу бегать apt-get, но он получает ошибку сегментации от dpkg:

# apt-get -f install
Reading package lists... Done
Building dependency tree... Done
0 upgraded, 0 newly installed, 0 to remove and 316 not upgraded.
9 not fully installed or removed.
Need to get 0B of archives.
After unpacking 0B of additional disk space will be used.
/bin/sh: line 1:  4606 Segmentation fault      /usr/sbin/dpkg-preconfigure --apt
E: Sub-process /usr/bin/dpkg received a segmentation fault.

Я могу войти через SSH, но даже ls не работает:

# ls
Segmentation fault

Могу ли я что-нибудь сделать удаленно через SSH?

    # ldd /bin/ls
    linux-gate.so.1 =>  (0xffffe000)
    librt.so.1 => /lib/tls/i686/cmov/librt.so.1 (0xb7fc8000)
    libacl.so.1 => /lib/libacl.so.1 (0xb7fc2000)
    libselinux.so.1 => /lib/libselinux.so.1 (0xb7fac000)
    libc.so.6 => /lib/i686/cmov/libc.so.6 (0xb7e51000)
    libpthread.so.0 => /lib/tls/i686/cmov/libpthread.so.0 (0xb7e3f000)
    /lib/ld-linux.so.2 (0xb7fd8000)
    libattr.so.1 => /lib/libattr.so.1 (0xb7e3b000)
    libdl.so.2 => /lib/i686/cmov/libdl.so.2 (0xb7e37000)
    libsepol.so.1 => /lib/libsepol.so.1 (0xb7df6000)

Кажется, я временно исправил это с помощью:

 # touch /etc/ld.so.nohwcap

Отсюда: http://saintaardvarkthecarpeted.com/blog/archive/2005/08/_etc_ld_so_nohwcap.html

Я думаю, вам следует включить дамп основного файла с помощью ulimit -c unlimited и запустите программу с ошибкой, чтобы затем получить дамп ядра. Если повезет и gdb установлен и не имеет ошибок, вы можете проанализировать coredump на месте, gdb -c core.pid. Он покажет вам хотя бы адрес невыполненной инструкции, чтобы вы могли угадать отказавшую библиотеку по этому адресу. Если gdb не устанавливается, попробуйте scp coredump на другой хост. Следующим шагом, вероятно, будет замена отказавшей библиотеки какой-либо другой версией с другого хоста на scp.