I am using Ubuntu 14.04 and when I try to run
apt-get update
It gives an error
Reading package lists... Error!
Segmentation fault
What could be the root cause of this? And how can I fix it?
Severus Tux
9,7469 gold badges58 silver badges97 bronze badges
asked Jul 15, 2016 at 5:59
18
The mistake was in sources.list I had duplicate source lists. So it was trying to read them again and again and failing to fork. I rebooted my machine. Deleted the duplicate sources. Its working all fine and good
answered Jul 15, 2016 at 6:50
PeeKayPeeKay
971 silver badge5 bronze badges
2
You must log in to answer this question.
Not the answer you’re looking for? Browse other questions tagged
.
Not the answer you’re looking for? Browse other questions tagged
.
Внимание: apt-get -s не работает (ключик для проведения «мысленного эксперимента» вместо действия приводит к неадекватной оценке последствий). |
Превышение числа пакетов
Если команда apt-get update завершается чем-то вроде:
Reading Package Lists... Error! E: Dynamic MMap ran out of room E: Error occured while processing ktechlab (UsePackage3)
или:
E: Wow, you exceeded the number of package names this APT is capable of. E: Problem with MergeList /tmp/aptbox/var/lib/apt/lists/_ALT_Sisyphus_noarch_base_pkglist.classic E: The package lists or status file could not be parsed or opened.
— скорее всего, apt’y приходится перелопачивать больше пакетов, чем дозволено лимитом (#16900).
Решение N1[1]:
в /etc/apt/apt.conf добавить строку (если ещё нет):
APT::Cache-Limit <LimitInBytes>;
Где <LimitInBytes> — число большее, чем размер /var/lib/rpm/Packages в байтах.
Возможно, придётся подбирать Cache-Limit несколько раз, пока ошибка не исчезнет.
В apt 0.5.15lorg2-alt50 лимиты выставлены следующим образом (разница обусловлена предположением подключения biarch-репозитория):
- 83886080 (80M на 32-битных архитектурах);
- 100663296 (96M на 64-битных архитектурах).
Решение N2 (если в обновлённом apt это уже увеличили):
Обновить apt и libapt из соответствующего репозитория:
apt-get update -o APT::Cache-Limit=100663296 apt-get install apt
Объезд:
Отключить лишние репозитории в /etc/apt/sources.list.d/*.list и вновь отдать команду:
apt-get update
«Битые» пакеты
Если при обновлении системы или установке отдельных пакетов вываливается нечто вроде:
Committing changes... Preparing... ########################################### [100%] 1: some_package error: unpacking of archive failed: cpio: Bad magic E: Some errors occurred while running transaction
вероятней всего, rpm-архив (в данном случае «some_package») испорчен (получен не полностью).
Решение:
Отдать команды:
apt-get clean apt-get install some_package
Ошибка обновления через rsync
Если при попытке обновления сведений о пакетах выходит ошибка с повторяющимися строками вроде приведённых ниже для apt-get update:
E: Программа обработки метода /usr/lib/apt/methods/rsync не найдена. E: Tried to dequeue a fetching object
и для synaptic:
E: The method driver /usr/lib/apt/methods/rsync could not be found.
— то это означает, что в числе активных репозиториев есть подключенные через протокол rsync. Следует либо их отключить, либо доустановить пакет apt-rsync.
Ошибка сегментирования
Если при работе apt-get падает по Segmentation fault, удалите кэш apt:
mv /var/cache/apt/*pkgcache.bin /tmp
Если это поможет, и если примера в altbug #31089 ещё нет, приложите эти файлы к багу.
Проверьте stack лимиты, должно быть не менее:
# ulimit -s 8192
Задать можно тут:
/etc/security/limits.conf root hard stack 8192 root soft stack 8192
Ругань о неудовлетворённых зависимостях при попытке сделать apt-get dist-upgrade
В таком случае надо сначала попытаться обновить отдельно apt и rpm, а потом повторить попытку dist-upgrade:
apt-get install apt rpm apt-get dist-upgrade
Такое поведение не типичное, и случилось после того, как в строгие зависимости стали добавлять помимо name = epoch:version-release ещё и значение disttag (в rpm 4.0.4-alt128), а rpm до версии 4.13.0.1-alt6 не всегда справлялся с различением таких версий.
Удаление дубликатов пакетов (например, после прерванного dist-upgrade)
В пакете apt-scripts, начиная с версии 0.1.4-alt1, добавлена команда apt-get dedup, которая удаляет все непозволенные дубликаты из системы:
apt-get install apt-scripts # если ещё не установлен apt-get dedup
Ссылки
- ↑ На 04/04/2015 у apt в p7 недостаточный лимит для использования репозитория autoimports, а на октябрь 2015 — у apt в Sisyphus тоже altbug #31410. В p7 это не чувствуется сейчас благодаря попаданию в p7 порта apt-0.5.15lorg2-alt50 (его лимиты см. ниже), я для Sisyphus это объехали для удобства подключения Autoimports в apt-conf-autoimports-sisyphus-1.0-alt3 способом, здесь описанным.
I am using Ubuntu 14.04 and when I try to run
apt-get update
It gives an error
Reading package lists... Error!
Segmentation fault
What could be the root cause of this? And how can I fix it?
Severus Tux
9,7469 gold badges58 silver badges97 bronze badges
asked Jul 15, 2016 at 5:59
18
The mistake was in sources.list I had duplicate source lists. So it was trying to read them again and again and failing to fork. I rebooted my machine. Deleted the duplicate sources. Its working all fine and good
answered Jul 15, 2016 at 6:50
PeeKayPeeKay
971 silver badge5 bronze badges
2
You must log in to answer this question.
Not the answer you’re looking for? Browse other questions tagged
.
Not the answer you’re looking for? Browse other questions tagged
.
I have a following minimalistic sources.list
file:
root@c:~# cat /etc/apt/sources.list
deb http://ftp.fi.debian.org/debian/ wheezy main
root@c:~# apt-get update
Hit http://ftp.fi.debian.org wheezy Release.gpg
Hit http://ftp.fi.debian.org wheezy Release
Hit http://ftp.fi.debian.org wheezy/main i386 Packages
Hit http://ftp.fi.debian.org wheezy/main Translation-en
Reading package lists... Done
root@c:~#
Now when I try to install a package, I end up with segmentation fault. For example:
root@c:~# apt-get install tcpdump
Reading package lists... Done
Building dependency tree
Reading state information... Done
Segmentation fault
root@c:~#
In /var/log/messages
there is a following entry logged:
Mar 29 05:46:25 c kernel: [ 4677.384747] apt-get[5607]: segfault at b8647e30 ip b8647e30 sp bfaaa9c8 error 14
The last (sp) number always changes, i.e if I execute apt-get install nmap
three times, then following is logged:
Mar 29 05:46:59 c kernel: [ 4711.046400] apt-get[5612]: segfault at b86cbe30 ip b86cbe30 sp bfb36ea8 error 14
Mar 29 05:47:02 c kernel: [ 4714.229648] apt-get[5616]: segfault at b8609e30 ip b8609e30 sp bfcecec8 error 14
Mar 29 05:47:03 c kernel: [ 4715.505656] apt-get[5620]: segfault at b86dae30 ip b86dae30 sp bfb4b588 error 14
I have tried with different repositories and cleaned local repository of retrieved package files. What might cause segment fault when installing a package? Is my apt-get
broken?
Модераторы: Warderer, Модераторы разделов
-
Stvad
- Сообщения: 106
- ОС: Gentoo Linux
Решено: Ошибка сегментирования (APT)
В общем имеется вдс с дебианом, со вчерашнего дня при попытке как либо заюзать apt-get (or aptitude) выдает «ошибка сегментирования»… пример:
Код: Выделить всё
stvlad:/home/stvad# aptitude
Ouch! Got SIGSEGV, dying..
Ошибка сегментирования
либо же в случае с апт гетом
Код: Выделить всё
stvlad:/home/stvad# apt-get install subversion
Ошибка сегментирования... 0%
подскажите в чем дело? и как это исправить..
-
AlexFilth
- Сообщения: 450
- Статус: Хронический ламер
- ОС: GENTOO
Re: Решено: Ошибка сегментирования (APT)
Сообщение
AlexFilth »
Если обновлялись накануне падения, значит неудачно обновились.
Чесно говоря — попробуйте скачать пакет apt под свою версию Debian с packages.debian.org и сделать dpkg -i apt___.deb
Если и с dpkg такая же проблема — попробуйте скачать исходники apt и собрать из них. Я так делал после неудачного отката системы.
-=emerge -auDn world=-