Доброго времени.Впервые столкнулся с такой проблемой, хотя не раз обновлял Debian с lenny на squeeze, в общем суть такая:
Само обновление прошло 'без единого разрыва', т.е. как обычно, но, после этого перестал запускаться dpkg с какой-то странной ошибкой, которая даже не гуглится, например:# dpkg
els_max_count:~## dpkg -l "*"
elsSegmentation faultБиблиотеки что используются вроде все корректно работают, по крайней мере в других бинарниках, которые на них тоже залинкованы. В strace ничего внятного не видно (может быть только мне, конечно).
В общем может кто уже видел сабж...
> В общем может кто уже видел сабж...google://dpkg Segmentation fault
видел...Попробуй
aptitude reinstall dpkg, или
dpkg --clear-avail
apt-get update, или ещё чего оттуда...
>> В общем может кто уже видел сабж...
> google://dpkg Segmentation fault
> видел...
> Попробуй
> aptitude reinstall dpkg
> , или
> dpkg --clear-avail
> apt-get update
> , или ещё чего оттуда...О да, фронтэнд apt безусловно заработает на нерабочем dpkg.
> aptitude reinstall dpkg
аналогично
> dpkg --clear-avail
он не запускается даже без аргументов
> google://dpkg Segmentation fault
's/dpkg Segmentation fault/els_max_count/g'
>[оверквотинг удален]
>> dpkg --clear-avail
>> apt-get update
>> , или ещё чего оттуда...
> О да, фронтэнд apt безусловно заработает на нерабочем dpkg.
>> aptitude reinstall dpkg
> аналогично
>> dpkg --clear-avail
> он не запускается даже без аргументов
>> google://dpkg Segmentation fault
> 's/dpkg Segmentation fault/els_max_count/g'Скачать, распаковать - всё это вручную.
>[оверквотинг удален]
>>> apt-get update
>>> , или ещё чего оттуда...
>> О да, фронтэнд apt безусловно заработает на нерабочем dpkg.
>>> aptitude reinstall dpkg
>> аналогично
>>> dpkg --clear-avail
>> он не запускается даже без аргументов
>>> google://dpkg Segmentation fault
>> 's/dpkg Segmentation fault/els_max_count/g'
> Скачать, распаковать - всё это вручную.К сожалению, все файлы пакеты целы судя по контрольным суммам. Но я на всякий случай првоерил, не помогает.
Вот еще, разница в стрейсе рабочего (сначала) и нерабочего dpkg.open("/usr/share/locale/en_US.UTF-8/LC_MESSAGES/dpkg.mo", O_RDONLY) = -1 ENOENT (No such file or directory)
open("/usr/share/locale/en_US.utf8/LC_MESSAGES/dpkg.mo", O_RDONLY) = -1 ENOENT (No such file or directory)
open("/usr/share/locale/en_US/LC_MESSAGES/dpkg.mo", O_RDONLY) = -1 ENOENT (No such file or directory)
open("/usr/share/locale/en.UTF-8/LC_MESSAGES/dpkg.mo", O_RDONLY) = -1 ENOENT (No such file or directory)
open("/usr/share/locale/en.utf8/LC_MESSAGES/dpkg.mo", O_RDONLY) = -1 ENOENT (No such file or directory)
open("/usr/share/locale/en/LC_MESSAGES/dpkg.mo", O_RDONLY) = -1 ENOENT (No such file or directory)
--------------open("/usr/lib/locale/or1_op_defs/LC_IDENTIFICATION", O_RDONLY) = -1 ENOENT (No such file or directory)
open("/usr/lib/locale/or1/LC_IDENTIFICATION", O_RDONLY) = -1 ENOENT (No such file or directory)
umask(022) = 022
open("ont_info", O_RDONLY|O_NONBLOCK|O_DIRECTORY|O_CLOEXEC) = -1 ENOENT (No such file or directory)
getcwd("/root", 4098) = 6
getcwd("/root", 4098) = 6
write(2, "els", 3els) = 3
getcwd("/root", 4098) = 6
getcwd("/root", 4098) = 6
write(2, "_max_count", 10_max_count) = 10
exit_group(2) = ?
> Вот еще, разница в стрейсе рабочего (сначала) и нерабочего dpkg.
> open("/usr/share/locale/en_US.UTF-8/LC_MESSAGES/dpkg.mo", O_RDONLY) = -1 ENOENT (No
> such file or directory)
> open("/usr/lib/locale/or1_op_defs/LC_IDENTIFICATION", O_RDONLY) = -1 ENOENT (No such
> file or directory)$ LANG=C dpkg -l \*
?
>> Вот еще, разница в стрейсе рабочего (сначала) и нерабочего dpkg.
>> open("/usr/share/locale/en_US.UTF-8/LC_MESSAGES/dpkg.mo", O_RDONLY) = -1 ENOENT (No
>> such file or directory)
>> open("/usr/lib/locale/or1_op_defs/LC_IDENTIFICATION", O_RDONLY) = -1 ENOENT (No such
>> file or directory)
> $ LANG=C dpkg -l \*
> ?Тоже самое, и, судя по стрейсу, все равно идёт в /usr/lib/locale/or1_op_defs
В общем какбы решил проблему, распаковал бинарник старого (lenny) dpkg в систему, с него обновил из пакета до версии из squeeze.Получается что не отработали/не корректно отработали preinst/postinst скрипты из пакета, других вариантов не вижу...
Всем спасибо за потраченное в топике время.