Schauen Sie sich diese Dateien an,
- '
/var/log/installer/initial-status.gz
' - Ihre primäre Installation
- Dieses Dateidatum wäre Ihr Installationsdatum (glaube ich)
- '
/var/log/dpkg.log
' update timeline (das ist was du willst)
- '
/var/log/apt/term.log
' - Dinge apt
auf Ihrem System aktualisiert
- '
/var/cache/apt/archives/'
enthält die deb
zur Installation heruntergeladenen Pakete
Update: Verwenden Sie die folgenden zwei Schritte, um eine genaue Liste der Neuinstallationen zu erhalten:
- ausführen:
grep -w install /var/log/dpkg.log > full-list.log
- Schauen Sie sich die Zeilen hinter dem
/var/log/installer/initial-status.gz
Zeitstempel an
Da Sie mit diesen Paketen eine saubere Installation auf einem anderen System erhalten möchten, können Sie sogar die 'deb'-Dateien aus dem' cache / apt / archives'-Pfad in den Pfad der neuen Installation kopieren und sie auf einmal installieren (ohne sie herunterzuladen) die schon wieder).
Nur zum Grinsen habe ich einen Einzeiler (hier der Übersichtlichkeit halber geteilt) zusammengestellt, der die manuell installierten Pakete ermittelt , ausgenommen die ursprünglich installierten und alle automatisch installierten Pakete:
Dies funktioniert sowohl in
bash
als auch inzsh
.quelle
libtiff
,libxcb
etc , die ich selbst nicht installiert. Diese Antwort lautet : superuser.com/a/105000/24349. Hierfür wird nach Installationszeit sortiert und alles vor der Systeminstallation entfernt. Großartige (ab) Verwendung der Muschel!Basierend auf den obigen Informationen habe ich ein kurzes Python-Skript geschrieben, um Pakete aufzulisten, die manuell installiert wurden. Siehe diesen Link .
Fühlen Sie sich frei, es zu benutzen, obwohl ich keine Verantwortung dafür übernehme. Feedback und Vorschläge sind jedoch immer willkommen.
quelle
Überprüfen Sie meine Antwort hier auf eine weitere Frage: Wie kann ich die Liste aller auf mein Debian - System installierten Pakete angezeigt werden ? . Einige der anderen Antworten auf die Frage enthalten auch nette Vorschläge zum Abrufen einer solchen Liste.
Diese Frage sollte als Duplikat markiert werden, da die vorherige Frage auch diese Frage abdeckt. Es kann jedoch nützlich sein, diese Frage für sich allein zu haben, damit sie leichter gefunden werden kann.
quelle
Angenommen, Sie haben eine konsistente Vorgeschichte und verwenden Eignung:
history | grep -e "^..... aptitude install"
liste nur die pakete auf, die du mit aptitude install installiert hast ... duh
quelle
Dies ist ein Hack-Job, aber es funktioniert völlig.
Rufen Sie zunächst http://releases.ubuntu.com/maverick/ (oder die von Ihnen verwendete Ubuntu-Version) auf und suchen Sie nach
*.manifest file
der Version, die der von Ihnen verwendeten Ubuntu-Version zugeordnet ist.Führen Sie dann das folgende Skript aus (Ersetzen
<manifest file>
, spitze Klammern und alle mit dem Pfad zu der heruntergeladenen Datei. Sie können immer> output
an das Ende anhängen , um einen Speicherauszug zu erstellen.quelle
Danke Geekosaurier, netter Code. Ich habe es benutzt, aber es hat eine Weile gedauert, bis ich herausgefunden habe, wie es funktioniert. So habe ich es in Ubuntu 11.10 gemacht - es funktioniert im Bash-Terminal:
Fügen Sie dann einen Tabulator hinzu
\t
- undinstall
in jeder Zeile:Dann auf der neuen Maschine:
Und um die Pakete zu installieren:
quelle
Eine andere Möglichkeit, dies zu tun, besteht darin, anhand Ihrer "Tasks" zu ermitteln, welche Basispakete entsprechend Ihren anfänglichen Anforderungen installiert werden müssen.
Zumindest hättest du das
server
. Sie können sich jedoch für mehr entscheiden. Für jede der von Ihnen installierten Aufgaben können Sie eine Liste der installierten Pakete erhalten. Der folgende Befehl führt alles in einer Zeile (der Übersichtlichkeit halber aufgeschlüsselt) für diejenigen aus, die ich in meiner Installation ausgewählt habe:Ein generischer Ansatz für das oben Genannte wäre:
Verwenden Sie nun
apt-cache depends --installed -i --recurse <packagename> | grep -v "^ "
, um eine Liste der Abhängigkeiten abzurufen, die von allen in der Task definierten Paketen verwendet werden. Dies kann wie folgt in einer Zeile erfolgenIm Folgenden werden alle Pakete aufgelistet, die auf Ihrem System installiert sind (ohne Abhängigkeiten).
Verwenden Sie nun den
comm
Befehl, um nur diejenigen zu finden, die sich in der zweiten Liste befinden (dh ignorieren Sie diejenigen, die sich in beiden Dateien und nur in der ersten Datei befinden).quelle