“Tar: opção não reconhecida --warning” durante 'apt-get install'

10

Acabei de rodar apt-get upgradeno meu debian 5 vps e recebi este erro:

tar: opção não reconhecida `--warning = no-timestamp '

Agora, quando tento instalar outros pacotes, por exemplo: imagemagick, recebo o mesmo erro:

li197-162:~# apt-get install imagemagick
Reading package lists... Done
Building dependency tree       
Reading state information... Done
The following packages were automatically installed and are no longer required:
  pkg-config comerr-dev libssh2-1-dev libpcre3-dev libdb4.6-dev libsqlite3-dev libmysqlclient15-dev libldap2-dev libpcrecpp0 libexpat1-dev libpq5 libidn11-dev
Use 'apt-get autoremove' to remove them.
The following extra packages will be installed:
  fontconfig-config imagemagick-common libfontconfig1 libfreetype6 libglib2.0-0 libice6 libjasper1 libjpeg8 liblcms1 liblqr-1-0 libltdl7 libmagickcore4 libmagickwand4 libpng12-0 libsm6 libtiff4
  libx11-6 libx11-data libxau6 libxcb1 libxdmcp6 libxext6 libxml2 libxml2-dev libxt6 ttf-dejavu-core x11-common
Suggested packages:
  imagemagick-doc autotrace cups-bsd lpr lprng enscript ffmpeg gimp gnuplot grads hp2xx html2ps libwmf-bin mplayer povray radiance sane-utils texlive-base-bin transfig xdg-utils libjasper-runtime
  liblcms-utils
Recommended packages:
  libmagickcore4-extra ghostscript netpbm ufraw-batch libglib2.0-data shared-mime-info gsfonts xml-core
The following NEW packages will be installed:
  fontconfig-config imagemagick imagemagick-common libfontconfig1 libfreetype6 libice6 libjasper1 libjpeg8 liblcms1 liblqr-1-0 libltdl7 libmagickcore4 libmagickwand4 libpng12-0 libsm6 libtiff4
  libx11-6 libx11-data libxau6 libxcb1 libxdmcp6 libxext6 libxt6 ttf-dejavu-core x11-common
The following packages will be upgraded:
  libglib2.0-0 libxml2 libxml2-dev
3 upgraded, 25 newly installed, 0 to remove and 190 not upgraded.
Need to get 0B/11.2MB of archives.
After this operation, 22.4MB of additional disk space will be used.
Do you want to continue [Y/n]? Y
Preconfiguring packages ...
x11-common template parse error: Template parse error near `[email protected]: Samo glavni korisnik, Samo za korisnike konzole, Svako', in stanza #1 of /tmp/x11-common.template.65052

tar: unrecognized option `--warning=no-timestamp'
Try `tar --help' or `tar --usage' for more information.
dpkg-deb: error: subprocess tar returned error exit status 64
dpkg: error processing /var/cache/apt/archives/libfreetype6_2.4.6-2_i386.deb (--unpack):
 subprocess dpkg-deb --control returned error exit status 2
tar: unrecognized option `--warning=no-timestamp'
Try `tar --help' or `tar --usage' for more information.
dpkg-deb: error: subprocess tar returned error exit status 64
dpkg: error processing /var/cache/apt/archives/ttf-dejavu-core_2.33-2_all.deb (--unpack):
 subprocess dpkg-deb --control returned error exit status 2
tar: unrecognized option `--warning=no-timestamp'
Try `tar --help' or `tar --usage' for more information.
dpkg-deb: error: subprocess tar returned error exit status 64
dpkg: error processing /var/cache/apt/archives/fontconfig-config_2.8.0-3_all.deb (--unpack):
 subprocess dpkg-deb --control returned error exit status 2
tar: unrecognized option `--warning=no-timestamp'
Try `tar --help' or `tar --usage' for more information.
dpkg-deb: error: subprocess tar returned error exit status 64
dpkg: error processing /var/cache/apt/archives/libfontconfig1_2.8.0-3_i386.deb (--unpack):
 subprocess dpkg-deb --control returned error exit status 2
tar: unrecognized option `--warning=no-timestamp'
Try `tar --help' or `tar --usage' for more information.
dpkg-deb: error: subprocess tar returned error exit status 64
dpkg: error processing /var/cache/apt/archives/x11-common_1%3a7.6+9_all.deb (--unpack):
 subprocess dpkg-deb --control returned error exit status 2
tar: unrecognized option `--warning=no-timestamp'
Try `tar --help' or `tar --usage' for more information.
dpkg-deb: error: subprocess tar returned error exit status 64
dpkg: error processing /var/cache/apt/archives/libice6_2%3a1.0.7-2_i386.deb (--unpack):
 subprocess dpkg-deb --control returned error exit status 2
tar: unrecognized option `--warning=no-timestamp'
Try `tar --help' or `tar --usage' for more information.
dpkg-deb: error: subprocess tar returned error exit status 64
dpkg: error processing /var/cache/apt/archives/libpng12-0_1.2.46-3_i386.deb (--unpack):
 subprocess dpkg-deb --control returned error exit status 2
tar: unrecognized option `--warning=no-timestamp'
Try `tar --help' or `tar --usage' for more information.
dpkg-deb: error: subprocess tar returned error exit status 64
dpkg: error processing /var/cache/apt/archives/libsm6_2%3a1.2.0-2_i386.deb (--unpack):
 subprocess dpkg-deb --control returned error exit status 2
tar: unrecognized option `--warning=no-timestamp'
Try `tar --help' or `tar --usage' for more information.
dpkg-deb: error: subprocess tar returned error exit status 64
dpkg: error processing /var/cache/apt/archives/libjpeg8_8c-2_i386.deb (--unpack):
 subprocess dpkg-deb --control returned error exit status 2
tar: unrecognized option `--warning=no-timestamp'
Try `tar --help' or `tar --usage' for more information.
dpkg-deb: error: subprocess tar returned error exit status 64
dpkg: error processing /var/cache/apt/archives/libtiff4_3.9.5-2_i386.deb (--unpack):
 subprocess dpkg-deb --control returned error exit status 2
tar: unrecognized option `--warning=no-timestamp'
Try `tar --help' or `tar --usage' for more information.
dpkg-deb: error: subprocess tar returned error exit status 64
dpkg: error processing /var/cache/apt/archives/libxau6_1%3a1.0.6-3_i386.deb (--unpack):
 subprocess dpkg-deb --control returned error exit status 2
tar: unrecognized option `--warning=no-timestamp'
Try `tar --help' or `tar --usage' for more information.
dpkg-deb: error: subprocess tar returned error exit status 64
dpkg: error processing /var/cache/apt/archives/libxdmcp6_1%3a1.1.0-3_i386.deb (--unpack):
 subprocess dpkg-deb --control returned error exit status 2
tar: unrecognized option `--warning=no-timestamp'
Try `tar --help' or `tar --usage' for more information.
dpkg-deb: error: subprocess tar returned error exit status 64
dpkg: error processing /var/cache/apt/archives/libxcb1_1.7-3_i386.deb (--unpack):
 subprocess dpkg-deb --control returned error exit status 2
tar: unrecognized option `--warning=no-timestamp'
Try `tar --help' or `tar --usage' for more information.
dpkg-deb: error: subprocess tar returned error exit status 64
dpkg: error processing /var/cache/apt/archives/libx11-data_2%3a1.4.4-2_all.deb (--unpack):
 subprocess dpkg-deb --control returned error exit status 2
tar: unrecognized option `--warning=no-timestamp'
Try `tar --help' or `tar --usage' for more information.
dpkg-deb: error: subprocess tar returned error exit status 64
dpkg: error processing /var/cache/apt/archives/libx11-6_2%3a1.4.4-2_i386.deb (--unpack):
 subprocess dpkg-deb --control returned error exit status 2
tar: unrecognized option `--warning=no-timestamp'
Try `tar --help' or `tar --usage' for more information.
dpkg-deb: error: subprocess tar returned error exit status 64
dpkg: error processing /var/cache/apt/archives/libxext6_2%3a1.3.0-3_i386.deb (--unpack):
 subprocess dpkg-deb --control returned error exit status 2
tar: unrecognized option `--warning=no-timestamp'
Try `tar --help' or `tar --usage' for more information.
dpkg-deb: error: subprocess tar returned error exit status 64
dpkg: error processing /var/cache/apt/archives/libxt6_1%3a1.1.1-2_i386.deb (--unpack):
 subprocess dpkg-deb --control returned error exit status 2
tar: unrecognized option `--warning=no-timestamp'
Try `tar --help' or `tar --usage' for more information.
dpkg-deb: error: subprocess tar returned error exit status 64
dpkg: error processing /var/cache/apt/archives/libxml2-dev_2.7.8.dfsg-4_i386.deb (--unpack):
 subprocess dpkg-deb --control returned error exit status 2
tar: unrecognized option `--warning=no-timestamp'
Try `tar --help' or `tar --usage' for more information.
dpkg-deb: error: subprocess tar returned error exit status 64
dpkg: error processing /var/cache/apt/archives/libxml2_2.7.8.dfsg-4_i386.deb (--unpack):
 subprocess dpkg-deb --control returned error exit status 2
tar: unrecognized option `--warning=no-timestamp'
Try `tar --help' or `tar --usage' for more information.
dpkg-deb: error: subprocess tar returned error exit status 64
dpkg: error processing /var/cache/apt/archives/libglib2.0-0_2.28.6-1_i386.deb (--unpack):
 subprocess dpkg-deb --control returned error exit status 2
tar: unrecognized option `--warning=no-timestamp'
Try `tar --help' or `tar --usage' for more information.
dpkg-deb: error: subprocess tar returned error exit status 64
dpkg: error processing /var/cache/apt/archives/liblcms1_1.19.dfsg-1_i386.deb (--unpack):
 subprocess dpkg-deb --control returned error exit status 2
tar: unrecognized option `--warning=no-timestamp'
Try `tar --help' or `tar --usage' for more information.
dpkg-deb: error: subprocess tar returned error exit status 64
dpkg: error processing /var/cache/apt/archives/liblqr-1-0_0.4.1-1.1_i386.deb (--unpack):
 subprocess dpkg-deb --control returned error exit status 2
tar: unrecognized option `--warning=no-timestamp'
Try `tar --help' or `tar --usage' for more information.
dpkg-deb: error: subprocess tar returned error exit status 64
dpkg: error processing /var/cache/apt/archives/libltdl7_2.4-4_i386.deb (--unpack):
 subprocess dpkg-deb --control returned error exit status 2
tar: unrecognized option `--warning=no-timestamp'
Try `tar --help' or `tar --usage' for more information.
dpkg-deb: error: subprocess tar returned error exit status 64
dpkg: error processing /var/cache/apt/archives/libjasper1_1.900.1-10_i386.deb (--unpack):
 subprocess dpkg-deb --control returned error exit status 2
tar: unrecognized option `--warning=no-timestamp'
Try `tar --help' or `tar --usage' for more information.
dpkg-deb: error: subprocess tar returned error exit status 64
dpkg: error processing /var/cache/apt/archives/imagemagick-common_8%3a6.6.9.7-5_all.deb (--unpack):
 subprocess dpkg-deb --control returned error exit status 2
tar: unrecognized option `--warning=no-timestamp'
Try `tar --help' or `tar --usage' for more information.
dpkg-deb: error: subprocess tar returned error exit status 64
dpkg: error processing /var/cache/apt/archives/libmagickcore4_8%3a6.6.9.7-5+b1_i386.deb (--unpack):
 subprocess dpkg-deb --control returned error exit status 2
tar: unrecognized option `--warning=no-timestamp'
Try `tar --help' or `tar --usage' for more information.
dpkg-deb: error: subprocess tar returned error exit status 64
dpkg: error processing /var/cache/apt/archives/libmagickwand4_8%3a6.6.9.7-5+b1_i386.deb (--unpack):
 subprocess dpkg-deb --control returned error exit status 2
tar: unrecognized option `--warning=no-timestamp'
Try `tar --help' or `tar --usage' for more information.
dpkg-deb: error: subprocess tar returned error exit status 64
dpkg: error processing /var/cache/apt/archives/imagemagick_8%3a6.6.9.7-5+b1_i386.deb (--unpack):
 subprocess dpkg-deb --control returned error exit status 2
Errors were encountered while processing:
 /var/cache/apt/archives/libfreetype6_2.4.6-2_i386.deb
 /var/cache/apt/archives/ttf-dejavu-core_2.33-2_all.deb
 /var/cache/apt/archives/fontconfig-config_2.8.0-3_all.deb
 /var/cache/apt/archives/libfontconfig1_2.8.0-3_i386.deb
 /var/cache/apt/archives/x11-common_1%3a7.6+9_all.deb
 /var/cache/apt/archives/libice6_2%3a1.0.7-2_i386.deb
 /var/cache/apt/archives/libpng12-0_1.2.46-3_i386.deb
 /var/cache/apt/archives/libsm6_2%3a1.2.0-2_i386.deb
 /var/cache/apt/archives/libjpeg8_8c-2_i386.deb
 /var/cache/apt/archives/libtiff4_3.9.5-2_i386.deb
 /var/cache/apt/archives/libxau6_1%3a1.0.6-3_i386.deb
 /var/cache/apt/archives/libxdmcp6_1%3a1.1.0-3_i386.deb
 /var/cache/apt/archives/libxcb1_1.7-3_i386.deb
 /var/cache/apt/archives/libx11-data_2%3a1.4.4-2_all.deb
 /var/cache/apt/archives/libx11-6_2%3a1.4.4-2_i386.deb
 /var/cache/apt/archives/libxext6_2%3a1.3.0-3_i386.deb
 /var/cache/apt/archives/libxt6_1%3a1.1.1-2_i386.deb
 /var/cache/apt/archives/libxml2-dev_2.7.8.dfsg-4_i386.deb
 /var/cache/apt/archives/libxml2_2.7.8.dfsg-4_i386.deb
 /var/cache/apt/archives/libglib2.0-0_2.28.6-1_i386.deb
 /var/cache/apt/archives/liblcms1_1.19.dfsg-1_i386.deb
 /var/cache/apt/archives/liblqr-1-0_0.4.1-1.1_i386.deb
 /var/cache/apt/archives/libltdl7_2.4-4_i386.deb
 /var/cache/apt/archives/libjasper1_1.900.1-10_i386.deb
 /var/cache/apt/archives/imagemagick-common_8%3a6.6.9.7-5_all.deb
 /var/cache/apt/archives/libmagickcore4_8%3a6.6.9.7-5+b1_i386.deb
 /var/cache/apt/archives/libmagickwand4_8%3a6.6.9.7-5+b1_i386.deb
 /var/cache/apt/archives/imagemagick_8%3a6.6.9.7-5+b1_i386.deb
E: Sub-process /usr/bin/dpkg returned an error code (1)
li197-162:~# 

Eu realmente não tenho idéia do que está errado e como consertar isso. É possível desfazer uma apt-get upgrade?

DanielZ
fonte
1
qual versão "apt-cache policy x11-common" lista para "Candidate". Eu pergunto porque suspeito que você possa estar atualizando um servidor debian 5 (atualmente "oldstable") usando fontes apontando para o debian 6 (atualmente "stable").
ensopado de

Respostas:

14

Acabei de ter exatamente esse problema. Como Gilles sugeriu, a atualização taré a resposta, mas (surpresa surpresa) tarnão pode ser atualizada da maneira usual porque dpkgrequer a versão 1.23 ou posterior antes de descompactar e instalar a última tardeb. dpkgrealmente precisa de uma dependência explícita para garantir que, quando uma versão posterior do dpkgfor instalada, a tarversão mais recente prossiga primeiro, mas acho que é um risco combinar diferentes testes e versões instáveis ​​de maneiras não suportadas. Ainda é indesejável e isso parece uma maneira infeliz de prejudicar um sistema.

Minha primeira idéia foi procurar o binário mais recente do tar projeto GNU , mas infelizmente eles só têm downloads de fontes, o que não é útil se (como eu) você não tiver as várias ferramentas de compilação instaladas.

Se você baixar o tarbinário mais recente .debpara combinar com o seu sistema a partir de packages.debian.org e o colocar em um local temporário em algum lugar (apenas para ser arrumado), você poderá entrar nele com o arcomando, por exemplo, ar x tar_1.26-2_amd64.debno meu caso.
Em seguida, descompacte o data.tar.gzarquivo resultante com um comando como tar zxvf data.tar.gz, usando sua versão anterior existente tar, que deve funcionar desde que você não tente fazer nada bobo como usar um --warningparâmetro que não estará disponível até a versão 1.23. :) Isso permitirá que você chegue ao tarbinário, que (dentro do arquivo data.tar.gz) provavelmente estava em bin/tar.
Tendo feito isso, adicionei o caminho para esse binário na frente doPATHvariável no meu shell, que no meu bash shell poderia ser feita com o comando export PATH=/root/temp/bin:$PATH, mas ajuste o caminho para caber onde quer que o novo tarbinário esteja sentado. Depois disso, executar uma dpkg --install tar_1.26-2_amd64.debmaravilha trabalhada regular , porque dpkgprocurará no caminho e encontrará o tarbinário mais recente antes de encontrar a versão mais antiga no bincaminho regular .

izogi
fonte
Trabalhou para mim. Para aqueles que chegam a esta página depurando a instalação do Debian em um NSLU2, você precisa deste arquivo .deb: packages.debian.org/squeeze/armel/tar/download Você pode usar outra máquina (ok para mac) para fazer o bit "ar" acima . Eu uso curl para sincronizar com meu NSLU. Mais uma vez obrigado izogi.
Mauvis Ledford #
3

Eu não tinha arno meu sistema, então fiz esse kludge horrível:

mv /bin/tar /bin/tar.real
echo "tar.real xpf -" >/bin/tar
chmod +x /bin/tar
cd /
# put in the correct path
dpkg-deb -x /var/cache/apt/archives/tar_1.26-4_armel.deb .
# check things are working and then
#rm /bin/tar.real
darkskiez
fonte
+1. Eu precisava que essa pergunta fosse respondida quando uma atualização estivesse com problemas graves o suficiente para que eu tivesse apenas um 'tar' antigo e nenhum 'ar'. Obrigado!
Bignose
2

Você pode não precisar se preocupar em baixar o pacote tar.

Provavelmente, para chegar a esse ponto, porque você estava no meio de uma atualização, e seu sistema de gerenciamento de pacotes já baixou o pacote tar mais recente para você, e estará esperando por você em:

/var/cache/apt/archives/tar_(version-release_platform).deb

por exemplo:

# ls -t /var/cache/apt/archives/tar_*|head -1

/var/cache/apt/archives/tar_1.26-4_amd64.deb

Foi assim que consertei meu sistema:

Encontre a versão mais recente no seu sistema:

root@host:~# ls -t /var/cache/apt/archives/tar_*|head -1
/var/cache/apt/archives/tar_1.26-4_amd64.deb

Crie uma área de trabalho temporária e descompacte o arquivo .deb:

root@host:~# mkdir fix_tar
root@host:~# cd fix_tar
root@host:~/fix_tar# ar x /var/cache/apt/archives/tar_1.26-4_amd64.deb

Descompacte o arquivo data.tar.gz para encontrar o novo binário tar:

root@host:~/fix_tar# ls -l
total 972
-rw-r--r-- 1 root root   2536 2012-02-03 12:20 control.tar.gz
-rw-r--r-- 1 root root 978996 2012-02-03 12:20 data.tar.gz
-rw-r--r-- 1 root root      4 2012-02-03 12:20 debian-binary
root@host:~/fix_tar# tar xzf data.tar.gz
root@host:~/fix_tar# find * -name tar
bin/tar
usr/share/doc/tar
usr/lib/mime/packages/tar

Verifique a versão existente no seu sistema:

root@host:~/fix_tar# /bin/tar --version
tar (GNU tar) 1.20
Copyright (C) 2008 Free Software Foundation, Inc.
License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law.

Written by John Gilmore and Jay Fenlason.

Faça backup da versão antiga caso algo dê muito errado e você precise dela de volta:

root@host:~/fix_tar# mv /bin/tar /bin/tar_1.20

Coloque a nova cópia no lugar:

root@host:~/fix_tar# mv ./bin/tar /bin/tar

Verifique a nova versão:

root@host:~/fix_tar# /bin/tar --version
tar (GNU tar) 1.26
Copyright (C) 2011 Free Software Foundation, Inc.
License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>.
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law.

Written by John Gilmore and Jay Fenlason.

Você Terminou! :-)

Eu fui capaz de continuar com outro:

root@host:~# aptitude update
root@host:~# aptitude safe-upgrade
JohnGH
fonte
Resposta fantástica!
Mikewaters
1

Você tem a versão mais recente do tar à mão em outro lugar (um computador diferente)?
Nesse caso, basta scpque ele /usr/local/bin, assumindo que /usr/local/binprecede o normal tarem seu caminho de comando. Em seguida, você pode atualizar:

apt-get install tar
santo
fonte
1

Substituir o tar pela nova versão disponível em / var / cache ... funcionou totalmente para mim. Eu gastei muito tempo tentando descobrir como consertar minha instalação do debian squeeze para me permitir instalar novos pacotes depois de atrapalhar as coisas, mexendo na lista de fontes e estupidamente deixando o webmin tentar uma atualização (erro grave). Muito obrigado às respostas diretas e objetivas de vocês.

Tam Saunders
fonte