Elsaの技術日記(徒然なるままに)

主に自分で作ったアプリとかの報告・日記を記載

MENU

apt update 失敗時の対応

apt update やapt-get updateが失敗し、解決に時間を要したのでメモとして残しておこうと思います。



■現象1

sudo apt-get update

sudo apt update

を実行すると

E: Unmet dependencies. Try 'apt --fix-broken install' with no packages (or specify a solution).

が発生。。。
試しに

sudo apt --fix-broken install

を実行したところ今度は、

E: Sub-process /usr/bin/dpkg returned an error code (1)

が発生。。
f:id:Elsammit:20201128175645p:plain

■解決策1

E: Sub-process /usr/bin/dpkg returned an error code (1)

の直前で

Errors were encountered while processing:
  /var/cache/apt/archives/nvidia-l4t-cuda_32.4.4-20201027211332_arm64.deb
  /var/cache/apt/archives/nvidia-l4t-3d-core_32.4.4-20201027211332_arm64.deb

といった.debが問題であることが分かります。

そこで、こちらの.debファイルを強制インストール実行します。

sudo dpkg --force-all -i /var/cache/apt/archives/nvidia-l4t-cuda_32.4.4-20201027211332_arm64.deb
sudo dpkg --force-all -i /var/cache/apt/archives/nvidia-l4t-3d-core_32.4.4-20201027211332_arm64.deb

■現象2

現象1は解決策1で対応できたのですが、

 E: Some index files failed to download. They have been ignored, or old ones used instead.

といったエラー??が出てしまいました。

■解決策2

こちらの通り、listsを初期化すればOKのようです。

sudo mv /var/lib/apt/lists ~/ ←listsを消してしまうと元に戻せなくなるので、念のため別ディレクトリに残す.
sudo mkdir /var/lib/apt/lists
sudo mkdir /var/lib/apt/lists/partial
sudo apt-get autoclean
sudo apt-get clean
sudo apt-get update

■最後に

Linuxでのパッケージのインストールはapt-get(apt)で管理されているので楽ではあるのですが、
一度エラーなどでトラブルが発生すると復旧に時間かかるし、復旧出来ないと新しいパッケージインストールできなくなってしまうしで結構苦労しますよね。。。
こういうトラブル系も残しておいて、同じ現象発生しても回避できるようにしていきたいです!!