Apt-Get-Liste löschen

32

Ich erstelle ein Image für ein eingebettetes Linux, das auf Debian basiert. Ich habe apt-get updatezuvor auf dem Gerät verwendet, das ich als Basis für dieses Image verwenden möchte, daher sind die Listen unter /var/lib/apt/listsziemlich groß (fast 100 MB groß).

Ich möchte die apt-getFunktionalität beibehalten (damit ich keine apt-Repositorys entfernen kann), aber ich möchte den in diesen Listen belegten Speicherplatz freigeben (die Listen sind fast doppelt so groß wie das Image).

Weiß jemand, wie man das macht? Kann ich die Dateien einfach unter löschen /var/lib/apt/lists?

Dakkaron
quelle

Antworten:

47

Sie können einfach verwenden:

rm /var/lib/apt/lists/*

Dadurch werden die Paketlisten entfernt. Es werden keine Repositorys gelöscht, sie werden in der Konfigurationsdatei in konfiguriert /etc/apt/sources.list. Das Einzige, was passieren kann, ist, dass Tools wie apt-cachekeine Paketinformationen abrufen können, wenn Sie die Paketlisten nicht aktualisiert haben. Wird auch apt-get installmit scheitern E: Unable to locate package <package>, da keine Informationen über das Paket verfügbar sind.

Dann laufen Sie einfach:

apt-get update

Diese Listen neu zu schreiben und der Befehl wird wieder funktionieren.

Auf jeden Fall wird empfohlen, apt-get updatevor der Installation etwas auszuführen .

Chaos
quelle
6

Die Listen wissen, was verfügbar ist. Wenn Sie sie löschen, können Sie also nichts installieren. Dies entspricht genau dem Entfernen der Repositorys aus Ihrer Quellliste (was Sie nicht möchten).

Eine Möglichkeit ist, dass Sie die Listen komprimieren und daran denken, sie vor dem nächsten zu dekomprimieren update.

Was ich oft mache (besonders wenn ich mit zusätzlichen Quellen experimentieren möchte), ist ein Verzeichnis zu erstellen /etc/apt/sources.availableund Einträge für Distributionen hinzuzufügen. Ich kann dann einfach eine Teilmenge aktivieren, indem ich Symlinks erstelle, /etc/apt/sources.list.dund deaktivieren, indem ich diese Symlinks entferne.

Mit leerer Quellenliste könnten Sie apt-get update- das sollte Ihre löschen /var/lib/apt/lists. Verknüpfen Sie dann die entsprechenden Quellen wieder mit /etc/apt/sources.list.d, tun Sie dies jedoch nichtupdate erst, wenn Sie beabsichtigen, sie tatsächlich zu verwenden.

Toby Speight
quelle