Debianベースの組み込みLinux用のイメージを作成しています。以前、そのイメージのベースとして使用するデバイスでapt-get update
を使用したことがあるため、/var/lib/apt/lists
の下のリストは非常に大きくなります(サイズはほぼ100 MBです。)
apt-get
機能を維持したい(したがって、aptリポジトリを削除したくない)が、解放したいこれらのリストで使用されているスペース(リストは画像のほぼ2倍のサイズです)。
その方法を知っている人はいますか?/var/lib/apt/lists
?
回答
次を使用できます:
rm /var/lib/apt/lists/*
これにより、パッケージリストが削除されます。リポジトリは削除されません。リポジトリは/etc/apt/sources.list
の構成ファイルで構成されます。発生する可能性があるのはapt-cache
は、パッケージリストを更新しない限り、パッケージ情報を取得できません。また、apt-get install
はE: Unable to locate package <package>
で失敗します。これは、情報が利用可能ですabパッケージを取り出します。
次に実行します:
apt-get update
これらのリストを書き換えると、コマンドが再び機能します。
とにかく、何かをインストールする前にapt-get update
を実行することをお勧めします。
コメント
回答
リストは利用可能なものに関する知識であるため、リストを削除すると、何もインストールできなくなります。これは、ソースからリポジトリを削除するのとまったく同じです。リスト(やりたくないと言う)
1つのオプションは、リストを圧縮し、次のupdate
。
私がよく行うことは(特に追加のソースを試してみたい場合)、ディレクトリ/etc/apt/sources.available
を作成し、ディストリビューションのエントリを追加することです。次に、/etc/apt/sources.list.d
からシンボリックリンクを作成してサブセットを簡単に有効にし、それらのシンボリックリンクを削除して無効にすることができます。
ソースリストが空の場合、apt-get update
-これで/var/lib/apt/lists
がクリアされます。次に、適切なソースを/etc/apt/sources.list.d
にリンクし直しますが、実際に使用する予定になるまでupdate
しないでください。
rm -rf /var/lib/apt/lists/*