【Linux】Ubuntuでapt updateが出来ない時の原因と対処法

2022年11月28日

今回起こった事象と考えられる原因

Ubuntu18.04でLinuxコマンド「apt update」でアップデートしようとした際にに以下のようなエラー分が表示された場合の対処法をメモします。

$ sudo apt update
エラー:1 http://jp.archive.ubuntu.com/ubuntu bionic InRelease
'jp.archive.ubuntu.com' を解決できませんでした
エラー:2 http://jp.archive.ubuntu.com/ubuntu bionic-updates InRelease
'jp.archive.ubuntu.com' を解決できませんでした
エラー:3 http://jp.archive.ubuntu.com/ubuntu bionic-backports InRelease
'jp.archive.ubuntu.com' を解決できませんでした
エラー:4 http://security.ubuntu.com/ubuntu bionic-security InRelease
'security.ubuntu.com' を解決できませんでした
エラー:5 http://archive.ubuntulinux.jp/ubuntu bionic InRelease
'archive.ubuntulinux.jp' を解決できませんでした
エラー:6 http://archive.ubuntulinux.jp/ubuntu-ja-non-free bionic InRelease
'archive.ubuntulinux.jp' を解決できませんでした

パッと見て名前解決が出来ていないようですね。。

今までできていたのになんでだろ。。。

 

解決方法

インターネット上の名前解決が出来ていないということですので、DNSサーバの問い合わせ先IPアドレスを変更することで解決できます。

ネームサーバの問い合わせ先をデフォルトゲートウェイに変更してインターネットへアクセスできるようにしましょう。

/etc/systemd/resolv.confを編集する

$sudo vi /etc/systemd/resolved.conf 

resolv.confファイルをviで開くと、今まで編集したことない場合は以下のように表示されます。

[Resolve]
#DNS=

ここのDNS変数のコメントアウト(#)を外しデフォルトゲートウェイのIPアドレスを設定します。

[Resolve]
DNS=192.168.x.x

デフォルトゲートウェイは個人用でNTTのホームゲートウェイの設定を変えずにそのまま使っていれば、192.168.1.1が多いかな?と思います。

会社のサーバでこの事象が起きている場合はパッケージ管理が異なってくるので社内で確認してください。
というよりも社内のセキュリティという観点から、まずそのサーバがインターネットに接続できない場合が多いかと思います。

変更出来たら保存してviエディタを終了します。

 

systemd-resolvサービスを再起動する

以下のコマンドでsystemd-resolveの再起動をします。

$ sudo systemctl restart systemd-resolve

systemd-resolveの起動状態の確認を行う場合は以下のコマンドで確認します。

$ sudo systemctl status systemd-resolve

正常に起動されている場合はアクティブ状態になっています。

Active: active (running)

 

DNS情報の登録状態を確認

入力したDNS情報が適用されているか?ということも確認してみましょう。

$ sudo systemd-resolve --status

正常に登録されている場合は、GrobalのDNS Serversが以下のように表示されていると思います。

Global
DNS Servers: 192.168.x.x

 

apt updateをもう一度実行してみる

再度、apt updateを行いますと、

 $ sudo apt update

ヒット:1 http://jp.archive.ubuntu.com/ubuntu bionic InRelease
ヒット:2 http://archive.ubuntulinux.jp/ubuntu bionic InRelease
・
・
・

といったように接続に成功しました。