web-dev-qa-db-ja.com

パッケージをインストール/削除/アップグレードできません

だから私は数日前にUbuntu 11.10 64ビットをアップグレードしようとしてエラーを受け取りました:

dpkg:../../src/archives.c:978:tarobject:アサーション `r == stab.st_size 'が失敗しました。

そこで、私は このUbuntuフォーラムの投稿この1つ に従いました。

情報フォルダーとステータスファイルからubuntu-docsを削除しました。

これで、パッケージをインストール/削除/アップグレードしようとすると、エラーが発生します。

Traceback (most recent call last):
  File "/usr/lib/python2.7/dist-packages/aptdaemon/worker.py", line 968, in simulate
    trans.unauthenticated = self._simulate_helper(trans)
  File "/usr/lib/python2.7/dist-packages/aptdaemon/worker.py", line 1092, in _simulate_helper
    return depends, self._cache.required_download, \
  File "/usr/lib/python2.7/dist-packages/apt/cache.py", line 235, in required_download
    pm.get_archives(fetcher, self._list, self._records)
SystemError: E:I wasn't able to locate a file for the ubuntu-docs package. This might mean you need to manually fix this package.

コマンドラインからubuntu-docsをインストールしようとすると、次の出力が表示されます。

 BlockquoteReading package lists... Done
Building dependency tree       
Reading state information... Done
The following packages will be upgraded:
  ubuntu-docs
1 upgraded, 0 newly installed, 0 to remove and 33 not upgraded.
1 not fully installed or removed.
Need to get 1,408 kB of archives.
After this operation, 22.5 MB of additional disk space will be used.
Get:1 http://us.archive.ubuntu.com/ubuntu/ oneiric/main ubuntu-docs all 11.10.4 [1,408 kB]
Fetched 1,408 kB in 5s (265 kB/s)        
(Reading database ... 
dpkg: warning: files list file for package `ubuntu-docs' missing, assuming package has no files currently installed.
(Reading database ... 323646 files and directories currently installed.)
Preparing to replace ubuntu-docs 11.10.4 (using .../ubuntu-docs_11.10.4_all.deb) ...
Unpacking replacement ubuntu-docs ...
dpkg: ../../src/archives.c:978: tarobject: Assertion `r == stab.st_size' failed.
E: Sub-process /usr/bin/dpkg exited unexpectedly

...これは問題を始めたときと同じように見えるので、情報を調べました-パッケージubuntu-docsはありませんが、ステータスにエントリがあるので、削除して再試行しましたが、すぐにSudo dpkg --configure -aを実行すると、ubuntu-docsのエントリが再表示されます。

何かご意見は?

Edit(フォーマットを保存するためのコメントとしてではない)

このスレッド は、ステータスから対応する行を削除した後、Sudo apt-get updateを実行する必要があると言います。そこで、Sudo apt-get cleanに続いてSudo apt-get updateを実行しました。しかし、次のようなメッセージを受け取りました:

E: dpkg was interrupted, you must manually run 'Sudo dpkg --configure -a' to correct the problem.

Sudo dpkg --configure -aの実行後、ステータスファイルには次の行が含まれます。

Package: ubuntu-docs
Status: install reinstreq half-installed
Priority: optional
Section: doc
Version: 11.10.4

それが役立つかどうかわからない。

11
wisemonkey

ここに私のために働いたものがあります:

Sudo dpkg --force-all -r ubuntu-docs

何か問題が発生した場合は再度報告します。 BTWソリューションは dpkgを再び動作させる方法 に投稿されました

Ohh yeaアドバイス:今度はSynapticを使用してシステムを毎回更新する必要があります-ubuntu-docsはすべての更新に含まれているため、選択を解除する必要があります:-/後続のすべての更新から特定のパッケージを削除する方法を尋ねる他の質問を開始すると思います。

6
wisemonkey

インストールパッケージが破損していると、パッケージ管理システムが破損し、Linuxでパッケージ(ソフトウェア)をインストールまたは削除できないことがあります。 Ubuntuにndas-adminをインストールしようとした後、apt-getから受け取ったメッセージエラーを次に示します。

$ Sudo apt-get install mplayer(または任意のパッケージ)パッケージリストの読み取り…完了依存関係ツリーの構築
状態情報の読み取り…完了E:パッケージndas-adminを再インストールする必要がありますが、アーカイブを見つけることができません。 (これはエラーです)

Sudo apt-get install -fを試して問題を修正しようとしましたが、同じエラーが発生しました。私が持っていた唯一のオプションは、dpkgステータスファイルを手動で編集することでした。

$ Sudo gedit /var/lib/dpkg/status    (if you prefer you can use vi instead of gedit)
Locate the corrupt package, and remove the whole block of information about it and save the file. Mine looked like this:

Package: ndas-admin
Status: deinstall reinstreq half-configured
Priority: extra
Section: alien
Installed-Size: 100
Maintainer: root <root@ubuntu510>
Architecture: i386
Version: 1.0.2-24
Depends: libc6 (>= 2.3.4-1)
Description: Administration toosl for XIMETA,Inc NDAS device driver for Linux operating system
 ndas-admin – This program allows the user to register/enable/disable/unregister the XIMETA NDAS hard disk.
 .
 (Converted from a rpm package by alien version 8.53.)

一定。これが他の人に役立つことを願っています。

7

コマンドが、マシンにキャッシュされている破損したパッケージを再利用しようとしている可能性があります。次のコマンドを実行して、aptキャッシュをクリアしてください。

Sudo apt-get clean

(警告、それはすべてのキャッシュされたパッケージを削除するので、インストールの途中にいる場合は、たくさんのものを再ダウンロードする必要があります)。

その後、通常どおりアップグレードプロセスを実行できます。

1
ImaginaryRobots