こんにちは、しきゆらです。
今回は、Ubuntuでapt update
を実行したときに404エラーが発生していたので
解消するために色々調べつつ対応したのでメモしておきます。
今回利用していたUbuntuのバージョンは以下の通り。
$ cat /etc/os-release
PRETTY_NAME="Ubuntu 22.10"
NAME="Ubuntu"
VERSION_ID="22.10"
VERSION="22.10 (Kinetic Kudu)"
...
前回のPostgreSQLのインストールのように、あれこれリポジトリを追加したりOSを更新しているとapt update
を実行するとリポジトリの一部で404エラーが出るようになっていました。
出ていたエラーは以下の通り。
$ sudo apt update
...
Err:10 <https://ppa.launchpadcontent.net/deadsnakes/ppa/ubuntu> kinetic Release
404 Not Found [IP: 185.125.190.52 443]
エラーが出ていたのは「ppa.launchpadcontent.net/deadsnakes/ppa/ubuntu
」でした。
何を入れたときのものかすでに覚えていないですが、404であれば不要だろう、ということで解消していきます。
ざっくりと手順を記載すると以下の通りです。
それぞれに分けてみていきます。
調べてみると、apt updateで参照するリポジトリは/etc/apt配下にあるxxx.listというファイルで管理されているようです。
Repositories/CommandLine - Community Help Wiki
ということで、この中にあるファイルの中に該当するURLが書かれているファイルを探しましょう。 まずは、該当するリポジトリが書かれたファイルの一覧を取得してみます。
なお、出力結果は環境によって異なるので適宜ご自身の環境に合わせて読み替えてください。
$ find /etc/apt -name "*.list"
/etc/apt/sources.list
/etc/apt/sources.list.d/amdgpu.list
/etc/apt/sources.list.d/rocm.list
/etc/apt/sources.list.d/deadsnakes-ubuntu-ppa-kinetic.list
/etc/apt/sources.list.d/amdgpu-proprietary.list
/etc/apt/sources.list.d/docker.list
/etc/apt/sources.list.d/pgdg.list
取得できたそれぞれのファイルの中を確認していきます。
とはいえ、catとかエディタとかでひとつづつ見ていくのは手間。
この辺もコマンドでやってしまいましょう。
$ find /etc/apt -name "*.list" | xargs grep ppa
/etc/apt/sources.list.d/deadsnakes-ubuntu-ppa-kinetic.list:deb <https://ppa.launchpadcontent.net/deadsnakes/ppa/ubuntu/> kinetic main
/etc/apt/sources.list.d/deadsnakes-ubuntu-ppa-kinetic.list:# deb-src <https://ppa.launchpadcontent.net/deadsnakes/ppa/ubuntu/> kinetic main
なお、xargsは標準入力やファイルなどからリストを受け取って、それを別コマンドの引数とするコマンドのようです。
【 xargs 】コマンド――コマンドラインを作成して実行する:Linux基本コマンドTips(176) - @IT
これで、該当するファイルのパスと内容を確認できました。
無効化するには、単純にコメントアウトすればよいだけなので以下のように先頭に#を追加。
cat /etc/apt/sources.list.d/deadsnakes-ubuntu-ppa-kinetic.list
# deb <https://ppa.launchpadcontent.net/deadsnakes/ppa/ubuntu/> kinetic main
# deb-src <https://ppa.launchpadcontent.net/deadsnakes/ppa/ubuntu/> kinetic main
これにて対応は完了。
apt updateを実行して404エラーが出ないことを確認できれば完了です。
私の環境では特に不要としてコメントアウトしてしまっていますが、リポジトリを追加したということは何らかのアプリ等をインストールするために追加しているはずなので
利用しているパッケージが度のリポジトリで管理されているかを確認してあげる必要があるかと思います。
未確認ですが、この辺で確認できそうです。
現在認識しているaptリポジトリーの一覧や、リポジトリーに含まれているパッケージを調べたい - CLOVER🍀
今回はUbuntuでapt update時に404エラーが発生していたので、解消するために原因や解消方法を調べました。
何気なく使っているパッケージマネージャの裏側をなんとなくチラ見できた気がします。
調べてみると、よく使うものでもよくわからずに使っているんだなぁというのと、もう少し深く知りたくなります。
今回はここまで。
おわり
勉強したり手を動かした記録を「しきゆらの備忘録」(http://shikiyura.com)へ投稿している人。 Ruby/JavaScriptをよく書いている。いろんな言語に触れてみたい。新しい物・辛いもの好き。バグは愛すべきもの。一応社会人。
Crieitは誰でも投稿できるサービスです。 是非記事の投稿をお願いします。どんな軽い内容でも投稿できます。
また、「こんな記事が読みたいけど見つからない!」という方は是非記事投稿リクエストボードへ!
こじんまりと作業ログやメモ、進捗を書き残しておきたい方はボード機能をご利用ください。
ボードとは?
コメント