Amazonのアソシエイトとして、ラズパイダ(raspida.com)は適格販売により収入を得ています。詳しくは当サイトの プライバシーポリシーをご覧ください。

リポジトリの記述先であるsources.listについて備忘録として残しておきます。

apt updateしたら、ターミナルにエラー出ることでありますよね。リポジトリが間違っていたり、OSバージョンによってサポートされていなかったりする場合が多いでしょう。

sources.listの記述を削除してもなおエラーが出ている場合、他の場所も見てみましょう。

sources.list

はじめに、sources.listは次の場所にあります。

/etc/apt/sources.list

デフォルトだとこんな記述になっているハズです。(Raspberry Pi OS bullseye 32bit)

deb http://raspbian.raspberrypi.org/raspbian/ bullseye main contrib non-free rpi
    # Uncomment line below then 'apt-get update' to enable 'apt-get source'
    #deb-src http://raspbian.raspberrypi.org/raspbian/ bullseye main contrib non-free rpi

/sources.list.d

次にリスト内で書かれている内容は、フォルダであるsources.list.dの中にそれぞれファイルとして格納されています。

/etc/apt/sources.list.d

ラズパイの場合、他のLinuxと違ってraspi.listなるファイルがあります。他のアプリケーションのインストールによっては他のlistもあるでしょう。

/etc/apt/sources.list.d/raspi.list

raspi.listはsource.listになっているかと思います。

deb http://raspbian.raspberrypi.org/raspbian/ bullseye main

■Pi 5は8GBモデルがオススメ

/varにも残る

もう一つ、/varのディレクトリにもファイルがあります。

/var/lib/apt/lists

varはvariable(変数)が元々の意味なので、動的に変化するファイルが置かれています。/var/logとか、/var/cachceとかもそうですよね。

興味が沸いたら、一度フォルダ内を覗いてみましょう。

もしも削除したいなら

/etc/apt/sources.listの記述を変更したり削除しても、同じようにエラーが出続けていたので、前述の2つのフォルダ内ファイルを削除して再トライしてみました。

もしも削除したいなら、これらの配下にあるファイル群を削除してやり直してみましょう。その後でsudo updateコマンドしてみてください。

rmにオプション-iで確認が入る。 rmにオプション-fで確認しない。 rmにオプション-f、-Rでフォルダも削除できる。

sudo rm -rf /etc/apt/sources.list.d

sudo rm -rf /var/lib/apt/lists

ケースバイケース

ちょっと色んなアプリケーションをインストールして/etc/apt/sources.listがおかしくなってしまい、元に戻そうと思ってハマったので、関連するディレクトを2つご紹介しました。

普通に使っていれば、あまり関係ないことです。

リポジトリを任意で追加した場合や、メジャーアップグレードした後に古いOSバージョンで使用している時など、様々なケースで一致しない時、エラーに遭遇します。

簡単にいえば、アプリで必要なモノを引っ張ってくる場所が違うだけの話なので、修正して更新すれば大概は問題ありません。

apt updatefull-upgradeの際、日頃から、cleanとautoremoveコマンドも実行しておけばより一層良いです。

sudo apt clean
sudo apt autoremove

バージョンアップまとめ