
Ich habe einen Rechner, der nicht in Gebrauch ist, und möchte darauf eine Neuinstallation von Linux durchführen. Möglicherweise befinden sich auf dem Rechner wichtige Dateien.
Wie listen Sie alle vom Benutzer erstellten Dateien nach einer Neuinstallation auf?
Ich dachte daran, einfach alle Dateien zu finden /
und dann eine for-Schleife zum Durchlaufen zu verwenden, gefolgt von rpm -q --whatprovides
einer Liste aller Dateien, die ein Benutzer erstellt hat (also die nicht im Manifest eines RPM aufgeführt sind). Ich denke, das würde funktionieren ... Aber es könnte extrem langsam sein und mehr als 8 Stunden dauern. Ich muss es versuchen.
Ich habe RPM aufgelistet, aber ich denke, das gilt auch für alle Linux-Distributionen … Aber ich brauche kurzfristig zuerst eine RPM-Lösung.
Antwort1
rpm -qla
listet schnell alle Dateien auf, die von RPMs stammen. Sie können beide Listen sortieren und mit vergleichen comm
. Was ist jedoch mit Konfigurationsdateien von RPMs, die vom Benutzer bearbeitet wurden, z. B. /etc/exports
. Sie können verwenden, rpm -qVa
um zu überprüfen, ob sich installierte Dateien geändert haben, aber es ignoriert Dateien, die sich ändern sollen, z. B. . Es ist normalerweise eine gute Idee , für alle Fälle /etc/shadow
eine Kopie des gesamten aufzubewahren . Sie müssen sich immer noch um bestimmte Pakete kümmern, z. B. MySQL und Dateien in .../etc
/var
Antwort2
Zwei Möglichkeiten, je nachdem, was Sie benötigen:
Sie können diecZeit(Änderungszeit) von Dateien mit dem
find
Befehl, um die zuletzt geänderten Dateien und daraus die entsprechenden Pakete zu finden. Dadurch können Dateien gefunden werden, die nicht Teil von Paketen sind, z. B. wenn Sie Dateien unter finden/var
.Sie können verwenden,
rpm -qai
um die Installationsdaten aller Pakete abzurufen und einen Bericht über die zuletzt installierten Pakete zu erhalten. Aus dieser Liste können Sie mithilfe vonrpm -ql
die Dateien auflisten, die für jedes Paket installiert wurden.Zum Beispiel,CentOS: Die installierten RPMs nach Installations-/Aktualisierungsdatum auflisten?weist darauf hin, dass die
--last
Option die Liste nachrpm -qa
Datum sortiert und Sie die Liste nur filtern müssen, um die Pakete entsprechend dem Zeitpunkt der Erstinstallation einzuschränken.