失敗した更新からの回復

失敗した更新からの回復

強いテキスト私は約30か月間、18.04.02デスクトップの安定したインストールを実行しています。サーバーは2週間ほど電源が入っていなかったので、今朝電源を入れたときに自動セキュリティ更新が実行されました。完了後、更新マネージャーを実行すると、次のエラーメッセージが表示されました。

明らかにパッケージに矛盾があります。「sudo nano /etc/apt /sources.list」を実行して、サードパーティのリポジトリがないことを確認しました。少なくとも私はそう思います。

一貫したパッケージセットに戻す方法はありますか。いいえ、最近のバックアップはありません。もちろん、エラーメッセージの提案に従いました。

コメントに応じて編集しました。apt-get install -f からの出力

Your Hardware Enablement Stack (HWE) is supported until April 2023.
Last login: Mon Sep 27 15:38:50 2021 from 192.168.1.96
stephen@leia:~$
stephen@leia:~$ sudo apt-get install -f
[sudo] password for stephen:
Reading package lists... Done
Building dependency tree
Reading state information... Done
Correcting dependencies... Done
The following package was automatically installed and is no longer required:
  linux-hwe-5.4-headers-5.4.0-77
Use 'sudo apt autoremove' to remove it.
The following additional packages will be installed:
  libwebkit2gtk-4.0-37
Suggested packages:
  libwebkit2gtk-4.0-37-gtk2
The following packages will be upgraded:
  libwebkit2gtk-4.0-37
1 to upgrade, 0 to newly install, 0 to remove and 24 not to upgrade.
1 not fully installed or removed.
Need to get 0 B/13.4 MB of archives.
After this operation, 81.9 kB of additional disk space will be used.
Do you want to continue? [Y/n] y
(Reading database ... 264170 files and directories currently installed.)
Preparing to unpack .../libwebkit2gtk-4.0-37_2.32.4-0ubuntu0.18.04.1_amd64.deb ...
Unpacking libwebkit2gtk-4.0-37:amd64 (2.32.4-0ubuntu0.18.04.1) over (2.32.3-0ubuntu0.18.04.1) ...
dpkg-deb (subprocess): decompressing archive member: lzma error: compressed data is corrupt
dpkg-deb: error: <decompress> subprocess returned error exit status 2
dpkg: error processing archive /var/cache/apt/archives/libwebkit2gtk-4.0-37_2.32.4-0ubuntu0.18.04.1_amd64.deb (--unpack):
 cannot copy extracted data for './usr/lib/x86_64-linux-gnu/libwebkit2gtk-4.0.so.37.53.5' to '/usr/lib/x86_64-linux-gnu/libwebkit2gtk-4.0.so.37.53.5.dpkg-new': unexpected end of file or stream
Errors were encountered while processing:
 /var/cache/apt/archives/libwebkit2gtk-4.0-37_2.32.4-0ubuntu0.18.04.1_amd64.deb
E: Sub-process /usr/bin/dpkg returned an error code (1)
stephen@leia:~$

マシンは安定しているように見えますが、現在はアップデートできません。これは絶望的な原因でしょうか?

ご協力ありがとうございます

エラーメッセージ

答え1

出力には問題を解決するために必要な情報が含まれています。

cannot copy extracted data for './usr/lib/x86_64-linux-gnu/libwebkit2gtk-4.0.so.37.53.5' to '/usr/lib/x86_64-linux-gnu/libwebkit2gtk-4.0.so.37.53.5.dpkg-new':unexpected end of file or stream

理解しやすくするために、少し抽象化してみましょう...

cannot copy extracted data for X to Y:unexpected end of file or stream

X = './usr/lib/x86_64-linux-gnu/libwebkit2gtk-4.0.so.37.53.5'
Y = '/usr/lib/x86_64-linux-gnu/libwebkit2gtk-4.0.so.37.53.5.dpkg-new'

それはどういう意味ですか?

予期しないファイルまたはストリームの終了「」は、その名の通り、パッケージが不完全または破損していることを意味します。ローカル キャッシュからパッケージを削除し、apt でパッケージの新しい完全なコピーをダウンロードする必要があります。

どのパッケージですか?

X によって提供されたパスを使用して、apt にその質問をしてみましょう。

  • パッケージ名は 2 行目にあります。libwebkit2gtk-4.0-37
$ dpkg -S /usr/lib/x86_64-linux-gnu/libwebkit2gtk-4.0.so.37
libwebkit2gtk-4.0-37:amd64: /usr/lib/x86_64-linux-gnu/libwebkit2gtk-4.0.so.37

破損したローカル パッケージを削除して、新しいコピーをダウンロードするにはどうすればよいですか?

$ sudo apt clean libwebkit2gtk-4.0-37                 // Delete local
$ sudo apt update
$ sudo apt install --reinstall libwebkit2gtk-4.0-37   // Download fresh

答え2

私の場合うまくいった解決策は、sudo apt full-upgradeを実行することでした。これは破損したパッケージの新しいコピーをダウンロードする効果があり、その後sudo apt upgradeを実行します。

関連情報