Ubuntu が故障しました - パッケージがインストールされません。どうすればいいですか?

Ubuntu が故障しました - パッケージがインストールされません。どうすればいいですか?

最近、Ubuntu で奇妙な動作が発生しています。まず、最も重要なのは、アップデートがインストールされないことです。パッケージのインストール エラーが発生し、まったく動作しません。

以前、ソフトウェア センターから TeamViewer をインストールしようとしましたが、同じパッケージ エラーが発生しました。また、接続速度が本来よりも遅くなっているように感じますが、これがこのケースに関係があるかどうかはわかりません。

インストールの何が問題なのでしょうか? これらのパッケージ インストール エラーを修正するにはどうすればよいですか?

ここに画像の説明を入力してください

答え1

これは、Ubuntu でよく聞かれる質問です。さまざまな方法で尋ねられます。しかし、答えはいつも同じです。パッケージが壊れているときに、この問題によく遭遇します。次のリンクを確認します。

https://askubuntu.com/questions/461975/i-cant-edit-update-remove-or-install-my-broken-packages

$ sudo apt-get autoremove
$ sudo apt-get --purge remove && sudo apt-get autoclean
$ sudo apt-get -f install
$ sudo apt-get update
$ sudo apt-get upgrade && sudo apt-get dist-upgrade
$ sudo dpkg-reconfigure -a
$ sudo dpkg --configure -a

それらのほとんどを実行しました。まだ追加できるものがいくつかあります。しかし、これまでのところ、リストにあるものによって、破損した Ubuntu の壊れたパッケージの問題が解決されました。

壊れたパッケージの問題を修正した後の Teamviewer のインストールに関しては、次を試してください。

$ sudo apt-get install lib32z1 lib32ncurses5 lib32bz2-1.0
$ sudo dpkg --add-architecture i386
$ sudo apt-get update
## (Download the latest 32-Bit / 64-Bit Multiarch go to the download and run)
$ sudo dpkg -i teamviewer_linux.deb

答え2

/bootパーティションがいっぱいになると、インストールとアップデートが失敗する可能性があります。

そのパーティションがいっぱいかどうかを確認するには、ターミナルを開いてコマンドを入力するdfと、次のような表示が出ます。

Filesystem              1K-blocks      Used Available Use% Mounted on
/dev/mapper/ubuntu-root 959421896 379475996 531218164  42% /
udev                       832664         4    832660   1% /dev
tmpfs                      168352       576    167776   1% /run
none                         5120         0      5120   0% /run/lock
none                       841752         0    841752   0% /run/shm
cgroup                     841752         0    841752   0% /sys/fs/cgroup
/dev/sda1                  233191     27581    193169  13% /boot   <==== Note this line

Use% が/boot99% のような場合は、古いパッケージのバックアップをクリアする必要があります。/bootコマンドを使用して、フォルダーに何があるかを確認しますls /boot。 のようなファイルが多数ある場合initrd.img-3.2.0-##-generic vmlinuz-3.2.0-##-generic(ここで、## は 40、41、42、43 などのバージョン番号で、数十個のコピーが見つかる場合があります)、古いコピーをいくつか削除しても安全です。

古いコピーを削除するには、次のコマンドを使用します。

dpkg --get-selections|grep 'linux-image*'|awk '{print $1}'|egrep -v "linux-image-$(uname -r)|linux-image-generic" |while read n;do sudo apt-get -y remove $n;done

(クレジット:このリンクUbuntuで動作するように修正済み)

次に実行してsudo apt-get autoremove依存関係をクリーンアップします。

答え3

これは私が今日カーネルで経験したのと似たような問題です。このサイト実際に修正されました。dpkg ステータス ファイルを編集して手動で修正する必要がありました。

しかし、これを行う前に、元のファイルのバックアップを作成してください状態これで問題が解決しない場合は、ファイルを元に戻すことができます。

  1. sudo gedit /var/lib/dpkg/status
  2. Then locate the corrupted package. Remove the whole block of information pertaining to it, save then exit.

どのパッケージが原因かわからない場合は、次を実行できます。

sudo apt-get アップデート
sudo apt-get アップグレード

これにより、どのパッケージで問題が発生しているかがわかります。例:


/var/cache/apt/archives/ (パッケージ名) の処理中にエラーが発生しました
E: サブプロセス /usr/bin/dpkg がエラー コード (1) を返しました

ターミナル内でどのようなエラー メッセージが出ているのか分からないので、本当にわかりません。しかし、それが役に立つようであれば、試してみる価値はあるでしょう。また、役に立たない場合でも、バックアップしたファイルをいつでも復元できます。1 つだけ、うまくいくかどうかがわかるまで再起動しないでください。幸運を祈ります!

関連情報