サーバーをアップグレードしたいので実行しましたが、引き続きapt-get dist upgrade
次のエラーが発生します。
Unpacking replacement aptitude ...
dpkg-deb: file `/var/cache/apt/archives/aptitude_0.6.8.2-1_armel.deb' contains ununderstood data member data.tar.xz , giving up
dpkg: error processing /var/cache/apt/archives/aptitude_0.6.8.2-1_armel.deb (--unpack):
subprocess dpkg-deb --fsys-tarfile returned error exit status 2
dpkg: considering deconfiguration of aptitude, which would be broken by installation of aptitude-common ...
dpkg: yes, will deconfigure aptitude (broken by aptitude-common).
Unpacking aptitude-common (from .../aptitude-common_0.6.8.2-1_all.deb) ...
De-configuring aptitude ...
dpkg-deb: file `/var/cache/apt/archives/aptitude-common_0.6.8.2-1_all.deb' contains ununderstood data member data.tar.xz , giving up
dpkg: error processing /var/cache/apt/archives/aptitude-common_0.6.8.2-1_all.deb (--unpack):
subprocess dpkg-deb --fsys-tarfile returned error exit status 2
Errors were encountered while processing:
/var/cache/apt/archives/aptitude_0.6.8.2-1_armel.deb
/var/cache/apt/archives/aptitude-common_0.6.8.2-1_all.deb
E: Sub-process /usr/bin/dpkg returned an error code (1)
私が試したいくつかのことは次のとおりです。
sudo apt-get dist-upgrade
sudo dpkg --configure -a
sudo ldconfig
sudo apt-get check
sudo apt-get -f install
sudo apt-get -f upgrade --fix-missing
いつも同じエラーで終わって、どうしようもないですね。
どうすればいいですか?
答え1
質問のタイトルに書いたように、squeeze(以前の安定版)ではなく、Debian wheezy(現在の安定版)でシステムを更新しています。
おそらくプレ押出システム(Lenny、Etch、...)があるようです。したがって、少なくとも1つのバージョンをスキップする必要があります。これはサポートされておらず、dpkgがパッケージファイルを解凍できない理由です(「新しい」.xz圧縮のため)。
解決策は徐々に更新されます。したがって、Lennyの場合は、まず圧迫してから喘ぎます。システム全体を新しくインストールすることもオプションです。
システムが古すぎると、通常のダウンロードサーバーで次の最新バージョンを見つけるのが困難になる可能性があります。その後、使用http://snapshot.debian.org。
答え2
sudo dpkg -r aptitude_0.6.8.2-1_armel
sudo apt-get -f install
sudo apt-get update
sudo apt-get upgrade
答え3
正確な回答ができなくてすみません。これはただのポインタです。向かい解決策、誰もそれを見ることができないようです。
エラーメッセージには、DEBファイル内のパッケージがないことが示されています。
.tar.gzしかし、一つ
.tar.xz
これは、lzmaを使用して圧縮されたことを意味します。 apt / dpkgにこれらのファイルを解凍する方法を伝えれば、問題は解決します。