libc6을 업데이트할 수 없습니다: 하위 프로세스의 이전 제거 후 스크립트가 신호에 의해 종료되었습니다(세그먼트 오류).

libc6을 업데이트할 수 없습니다: 하위 프로세스의 이전 제거 후 스크립트가 신호에 의해 종료되었습니다(세그먼트 오류).

Raspbian 7에서 Raspbian 8로 업그레이드하는 동안 문제가 발생했습니다. 이 스레드와 비슷한 제목의 스레드를 찾았고 많은 것을 시도했지만 항상 같은 오류가 발생합니다.

노드는 제한된 대역폭 회선의 원격 위치에 있으므로 전체 재구축을 수행하는 것은 실용적이지 않습니다.

내가 받은 가장 유익한 메시지는 "dpkg -C"입니다.

root@mynode# dpkg -C
The following packages are in a mess due to serious problems during
installation.  They must be reinstalled for them (and any packages
that depend on them) to function properly:
 libc6:armhf          Embedded GNU C Library: Shared libraries

The following packages have been unpacked but not yet configured.
They must be configured using dpkg --configure or the configure
menu option in dselect for them to work:
 libc6-dev:armhf      GNU C Library: Development Libraries and Header Files
 libc-dev-bin         GNU C Library: Development binaries
 locales              GNU C Library: National Language (locale) data [support]
 libnih1              NIH Utility Library
 libnih-dbus1         NIH D-Bus Bindings Library

그러나 libc6:armhf를 설치하거나 다시 설치하려고 하면 다음과 같은 일이 발생합니다.

root@mynode# apt-get --reinstall install  libc6:armhf
Reading package lists... Done
Building dependency tree
Reading state information... Done
You might want to run 'apt-get -f install' to correct these:
The following packages have unmet dependencies:
 locales : Depends: libc-bin (> 2.19) but 2.13-38+rpi2+deb7u8 is to be installed
E: Unmet dependencies. Try 'apt-get -f install' with no packages (or specify a solution).

libc-bin을 설치하거나 다시 설치하려고 하면 다음과 같은 메시지가 나타납니다.

root@mynode# apt-get --reinstall install  libc-bin
Reading package lists... Done
Building dependency tree
Reading state information... Done
The following extra packages will be installed:
  libc6
Suggested packages:
  glibc-doc
The following packages will be upgraded:
  libc-bin libc6
2 upgraded, 0 newly installed, 0 to remove and 731 not upgraded.
6 not fully installed or removed.
Need to get 0 B/5,124 kB of archives.
After this operation, 870 kB disk space will be freed.
Do you want to continue [Y/n]? y
Preconfiguring packages ...
(Reading database ... 82552 files and directories currently installed.)
Preparing to replace libc6:armhf 2.13-38+rpi2+deb7u8 (using .../libc6_2.19-18+deb8u10_armhf.deb) ...
Checking for services that may need to be restarted...
Checking init scripts...
Unpacking replacement libc6:armhf ...
dpkg: warning: subprocess old post-removal script was killed by signal (Segmentation fault)
dpkg: trying script from the new package instead ...
dpkg: error processing /var/cache/apt/archives/libc6_2.19-18+deb8u10_armhf.deb (--unpack):
 subprocess new post-removal script was killed by signal (Segmentation fault)
dpkg: error while cleaning up:
 subprocess installed pre-installation script was killed by signal (Segmentation fault)
Errors were encountered while processing:
 /var/cache/apt/archives/libc6_2.19-18+deb8u10_armhf.deb
E: Sub-process /usr/bin/dpkg returned an error code (1)

나는 붙어있다. 어떤 제안이 있으십니까?

답변1

나는 그것을 알아냈습니다 - 일종의 - 문제가 있는 업그레이드를 수행할 수 있는 동일한 시스템을 발견했습니다. /etc/apt의 다양한 파일을 비교한 결과 많은 차이점을 발견했습니다.

성공적인 시스템의 apt 디렉토리 전체를 손상된 시스템으로 복사하여 문제가 해결되었습니다.

올바른 파일 내용이 무엇인지 알아내려는 모든 사람에게 행운을 빕니다. 인터넷 검색을 하면 1000가지의 답변이 반환되며 모두 다릅니다. 운이 좋게도 나는 그것이 올바른 시스템을 가지고 있었습니다. 따라서 시도해 볼 수 있는 또 다른 구성이 있습니다. 이것은 다섯 가지 다른 시스템에서 저에게 효과적이었습니다.

/etc/apt/sources.list:

deb http://archive.raspberrypi.org/debian/ jessie main
# Uncomment line below then 'apt-get update' to enable 'apt-get source'
#deb-src http://archive.raspberrypi.org/debian/ jessie main
root@stn4133:/etc/apt# more sources.list
deb http://mirrordirector.raspbian.org/raspbian/ jessie main contrib non-free rpi
# Uncomment line below then 'apt-get update' to enable 'apt-get source'
#deb-src http://mirror.ox.ac.uk/sites/archive.raspbian.org/archive/raspbian/ jessie main contrib non-free rpi

/apt/etc/sources.list.d/raspi.list:

deb http://archive.raspberrypi.org/debian/ jessie main
# Uncomment line below then 'apt-get update' to enable 'apt-get source'
#deb-src http://archive.raspberrypi.org/debian/ jessie main

공개 키가 누락되었다는 오류가 발생할 수도 있습니다. 이는trusted.gpg가 불완전하기 때문입니다. 이 문제를 해결하려면 이 문서의 지침을 따르세요. https://chrisjean.com/fix-apt-get-update-the-following-signatures-couldnt-be-verified-because-the-public-key-is-not-available/

관련 정보