Не может установить libc6 из-за проблем мультидуги на точной Ubuntu

Так как я dpkg-query -L libc6 не работает над моей машиной, должной, я не могу установить любые пакеты.

# apt-cache policy libc6
libc6:
  Installed: 2.15-0ubuntu10.15
  Candidate: 2.15-0ubuntu10.17
  Version table:
     2.15-0ubuntu10.17 0
        500 http://archive.ubuntu.com/ubuntu/ precise-updates/main amd64 Packages
        500 http://security.ubuntu.com/ubuntu/ precise-security/main amd64 Packages
 *** 2.15-0ubuntu10.15 0
        100 /var/lib/dpkg/status
     2.15-0ubuntu10 0
        500 http://archive.ubuntu.com/ubuntu/ precise/main amd64 Packages

# apt-cache policy libc6
libc6:
  Installed: 2.15-0ubuntu10.15
  Candidate: 2.15-0ubuntu10.17
  Version table:
     2.15-0ubuntu10.17 0
        500 http://archive.ubuntu.com/ubuntu/ precise-updates/main amd64 Packages
        500 http://security.ubuntu.com/ubuntu/ precise-security/main amd64 Packages
 *** 2.15-0ubuntu10.15 0
        100 /var/lib/dpkg/status
     2.15-0ubuntu10 0
        500 http://archive.ubuntu.com/ubuntu/ precise/main amd64 Packages

apt-get -f install
Reading package lists... Done
Building dependency tree       
Reading state information... Done
Correcting dependencies... Done
The following extra packages will be installed:
  libc6 libc6-dbg libc6-dev libc6-dev-i386 libc6-i386
Suggested packages:
  glibc-doc
The following packages will be upgraded:
  libc6 libc6-dbg libc6-dev libc6-dev-i386 libc6-i386
5 upgraded, 0 newly installed, 0 to remove and 46 not upgraded.
4 not fully installed or removed.
Need to get 0 B/16.0 MB of archives.
After this operation, 13.3 kB of additional disk space will be used.
Do you want to continue [Y/n]? y
Preconfiguring packages ...
(Reading database ... 792434 files and directories currently installed.)
Preparing to replace libc6:amd64 2.15-0ubuntu10.15 (using .../libc6_2.15-0ubuntu10.17_amd64.deb) ...
dpkg: error processing /var/cache/apt/archives/libc6_2.15-0ubuntu10.17_amd64.deb (--unpack):
 subprocess new pre-installation script returned error exit status 2
Errors were encountered while processing:
 /var/cache/apt/archives/libc6_2.15-0ubuntu10.17_amd64.deb
E: Sub-process /usr/bin/dpkg returned an error code (1)

Теперь для рытья глубже в проблему я извлек preinst сценарий из/var/cache/apt/archives/libc6_2.15-0ubuntu10.17_amd64.deb и выполнил его с обновлением./preinst, 2.15-0ubuntu10.15, который показал, что существует проблема с

# dpkg-query -L libc6
dpkg-query: error: --listfiles needs a valid package name but 'libc6' is not: ambiguous package name 'libc6' with more than one installed instance

Use --help for help about querying packages.

показ установленных пакетов дает:

# dpkg -l libc6
Desired=Unknown/Install/Remove/Purge/Hold
| Status=Not/Inst/Conf-files/Unpacked/halF-conf/Half-inst/trig-aWait/Trig-pend
|/ Err?=(none)/Reinst-required (Status,Err: uppercase=bad)
||/ Name                                                  Version                         Architecture                    Description
+++-=====================================================-===============================-===============================-===============================================================================================================
ii  libc6:amd64                                           2.15-0ubuntu10.15               amd64                           Embedded GNU C Library: Shared libraries
rc  libc6:i386                                            2.15-0ubuntu10.15               i386                            Embedded GNU C Library: Shared libraries

Попытка избавиться от всех i386 пакетов с:

aptitude purge `dpkg --get-selections | grep ":i386" | awk '{print $1}'`

К сожалению, проблема сохраняется с dpkg -l libc6 все еще показ i386 архитектура.

Теперь я застреваю. Какие-либо идеи?

0
задан 22 March 2017 в 09:43

1 ответ

Получил зафиксированный так или иначе со следующими шагами:

aptitude download libc6

mkdir tmp
dpkg-deb -R libc6_2.15-0ubuntu10.17_amd64.deb tmp
# edit DEBIAN/preinst replaced 'dpkg-query -L libc6' with 'dpkg-query -L libc6:amd64'
dpkg-deb -b tmp libc6_2.15-0ubuntu10.17fixed_amd64.deb

dpkg -i libc6_2.15-0ubuntu10.17fixed_amd64.deb

Теперь я смог разрешить конфликты. Для избавлений от всех i386 пакетов, я использовал теперь:

dpkg -l | grep :i386 | awk '{ print $2 }' | xargs dpkg -P

и теперь кажется, что я избавил от i386 пакетов:

dpkg -l libc6
Desired=Unknown/Install/Remove/Purge/Hold
| Status=Not/Inst/Conf-files/Unpacked/halF-conf/Half-inst/trig-aWait/Trig-pend
|/ Err?=(none)/Reinst-required (Status,Err: uppercase=bad)
||/ Name                                                  Version                         Architecture                    Description
+++-=====================================================-===============================-===============================-===============================================================================================================
ii  libc6:amd64                                           2.15-0ubuntu10.17               amd64                           Embedded GNU C Library: Shared libraries
0
ответ дан 3 November 2019 в 14:26

Другие вопросы по тегам:

Похожие вопросы: