Tentando reinstalar o libc6-dev: o subprocesso foi eliminado por sinal

0

Eu estou tentando reinstalar o libc6-dev desde que eu acidentalmente removi /usr/include/stdio.h, e estou recebendo a seguinte mensagem:

Do you want to continue? [Y/n] y
Get:1 http://us.archive.ubuntu.com/ubuntu artful-updates/main amd64 libc6-dev amd64 2.26-0ubuntu2.1 [2,526 kB]
Get:2 http://us.archive.ubuntu.com/ubuntu artful-updates/main i386 libc6-dev i386 2.26-0ubuntu2.1 [2,144 kB]
Fetched 4,669 kB in 1s (4,293 kB/s)       
(Reading database ... 910409 files and directories currently installed.)
Preparing to unpack .../libc6-dev_2.26-0ubuntu2.1_amd64.deb ...
Unpacking libc6-dev:amd64 (2.26-0ubuntu2.1) over (2.26-0ubuntu2.1) ...
dpkg: error processing archive /var/cache/apt/archives/libc6-dev_2.26-0ubuntu2.1_amd64.deb (--unpack):
 trying to overwrite shared '/usr/include/stdlib.h', which is different from other instances of package libc6-dev:amd64
dpkg-deb: error: subprocess paste was killed by signal (Broken pipe)
Preparing to unpack .../libc6-dev_2.26-0ubuntu2.1_i386.deb ...
Unpacking libc6-dev:i386 (2.26-0ubuntu2.1) over (2.26-0ubuntu2.1) ...
dpkg: error processing archive /var/cache/apt/archives/libc6-dev_2.26-0ubuntu2.1_i386.deb (--unpack):
 trying to overwrite shared '/usr/include/stdlib.h', which is different from other instances of package libc6-dev:i386
dpkg-deb: error: subprocess paste was killed by signal (Broken pipe)
Errors were encountered while processing:
 /var/cache/apt/archives/libc6-dev_2.26-0ubuntu2.1_amd64.deb
 /var/cache/apt/archives/libc6-dev_2.26-0ubuntu2.1_i386.deb
E: Sub-process /usr/bin/dpkg returned an error code (1)

Eu pesquisei soluções, mas elas lidam com o uso de apt install -f , em vez de reinstala pacotes.

    
por bb94 17.04.2018 / 22:05

1 resposta

1

Se você tem certeza de que isso realmente quer fazer (veja o comentário acima), você pode fazer

sudo apt-get -o Dpkg::Options::="--force-overwrite" install libc6-dev-amd64 libc6-dev-i386

Isso passa o sinalizador --force-overwrite para o dpkg, que permite que um pacote sobrescreva o arquivo de outro. Claro, se você tiver os arquivos deb, você pode usar o comando dpkg diretamente como:

sudo dpkg -i --force-overwrite libc6-dev-amd64 libc6-dev-dev-i386

    
por Martin W 17.04.2018 / 22:45