Debian / Ubuntu ist es möglich, / var / lib / apt / lists und / var / apt / cache nach dem Löschen neu zu initialisieren?

9

Ist es möglich, die Funktionalität von / var / lib / apt / lists und / var / apt / cache wiederherzustellen, nachdem sie gelöscht oder in einigen Schritten minimiert wurden?

Ich versuche, eine Ubuntu-VM auf die kleinste Größe zu verkleinern, und habe beschlossen, / var / lib / apt / lists und / var / cache / apt zu löschen, um sie wiederherzustellen, wenn das System aktualisiert werden muss. Ich habe / var / cache / apt ohne größere Nebenwirkungen ausgeführt, indem ich einfach einige Verzeichnisse neu erstellt habe, um es wieder zu aktivieren. Die Liste / var / lib / apt / ist die, bei der ich mir nicht sicher bin. Ist es möglich, es zu löschen und seine Funktionalität wiederherzustellen, indem Sie wie / var / cache / apt neu erstellen?

Zerstört dies das Wissen, das apt und dpkg über die Systemkonfiguration haben, oder wird das an anderer Stelle gespeichert?

vfclists
quelle

Antworten:

16

Ja, Sie können sie löschen!

Lassen Sie uns eine VM klonen und sehen, was passiert! :) :)

$ rm -r /var/cache/apt /var/lib/apt/lists
$ apt-get update #takes a while re-fetching everything
$ apt-get install <some-random-package>

Verzeichnisse werden aus dem apt-get updateVorgang neu erstellt und alles ist in Ordnung. Ich könnte die *.gpgDateien in Ruhe lassen, wenn Sie sich paranoid fühlen, aber ansonsten können diese Dateien alle verschwinden.

In der Vergangenheit hatte ich Probleme, bei denen ich manuell arbeiten musste mkdir /var/cache/apt/archives, aber das scheint kein Problem mehr zu sein.

Jeff Ferland
quelle
2
Um den Cache zu löschen, müssen Sie nicht die Verzeichnisse löschen, sondern nur die Dateien: rm -r / var / cache / apt / * / var / lib / apt / lists / *
alfredocambera
1
Warum befinden sich die "Listen" nicht in / var / cache, wenn es sich wirklich um einen Cache handelt? Ich würde nur ungern etwas löschen, das nicht eindeutig ein Cache ist.
Johan Boulé
4

Unter Ubuntu 10.04 LTS werden die Verzeichnisse nicht neu erstellt. Sie müssen also darauf achten, diese nicht zu löschen. Mit dem folgenden Befehl können Sie nur die Dateien löschen.

sudo find /var/cache/apt/ -type f -exec rm -v {} \;
sudo find /var/lib/apt/lists -type f -exec rm -v {} \;

Um den Cache neu zu erstellen, verwenden Sie

sudo apt-get update

Eine bessere Antwort ist wahrscheinlich Debian / Ubuntu - Wie kann man die / var / cache / apt-Struktur nach dem Löschen wiederherstellen?

Maddin
quelle
Oder Sie können einfach nach vorne gerichtete Schrägstriche hinzufügen ... "rm -r / var / cache / apt / *"
RichieHH