Ich weiß nicht, ob es einen besseren Weg gibt (wahrscheinlich gibt es einen), aber je nach dem von Ihnen benötigten Maßstab können Sie die Suchfunktion von aptitude für einen Teil der Maschine verwenden. Hier können Sie nach Paketen suchen, die einem Muster entsprechen. Also, aptitude search '~i'
gibt Ihnen alle installierten Pakete
Wir müssen jedoch noch einen Schritt weiter gehen. Der Paketmanager möchte wissen, welche Pakete direkt von Ihnen angefordert wurden und welche gerade aufgrund anderer Pakete eingezogen wurden. Ohne diese Informationen können hässliche Dinge passieren. Wir können dieses Suchmuster also erweitern, um Pakete auszuwählen, die nicht automatisch installiert werden:aptitude search '!~M ~i'
Die Suchfunktion wird im Referenzhandbuch von Aptitude ausführlich beschrieben .
Jetzt haben Sie Ihre Liste der zu installierenden Pakete. Sie können die Ausgabe nach Bedarf formatieren, indem Sie das Flag -F an diesen Befehl übergeben, z. B. -F '% p', um eine Liste mit nur Paketnamen zu erhalten.
Zum Beispiel könnten Sie diese auf laufen Maschine 1 :
aptitude -F "%c %p" --disable-columns search '!~M ~i' | awk -F " " '{ print "apt-get -y install " $2 }' > aptshell.sh
Kopieren Sie dann die neu erstellte aptshell.sh
Datei auf Computer 2 und verwenden Sie diesen Befehl auf Computer 2 , um sie dort auszuführen:
sudo sh aptshell.sh
Wiederholen Sie dann den Vorgang mit der Originalmaschine 2 als neuer Maschine 1 und der Originalmaschine 1 als neuer Maschine 2 . Jetzt hat jede Maschine alle Pakete, die früher nur auf der anderen waren.