Moin, ich will demnächst einen neuen Computer einrichten. Dabei würde ich gerne die Paketliste einer bestehenden Installation übernehmen (am liebsten mit den jeweiligen Paketquellen).
Geht das irgendwie einfach? Die Paketquellen lassen sich ja leicht kopieren.
Danke im Voraus Martin
Hi Martin,
Moin, ich will demnächst einen neuen Computer einrichten. Dabei würde ich gerne die Paketliste einer bestehenden Installation übernehmen (am liebsten mit den jeweiligen Paketquellen).
Geht das irgendwie einfach? Die Paketquellen lassen sich ja leicht kopieren.
auf der bisherigen Installation:
zypper se -si \ | grep "^i" \ | awk '{ print $3"-"$7 }' \ | sort -f \ | uniq \
/tmp/installed-packages-orig.lst
Und auf der neuen Installation dasselbe:
zypper se -si \ | grep "^i" \ | awk '{ print $3"-"$7 }' \ | sort -f \ | uniq \
/tmp/installed-packages-new.lst
Dann
diff /tmp/installed-packages-new.lst \ /tmp/installed-packages-orig.lst
/tmp/installed-packages-diff.lst
/tmp/installed-packages-diff.lst kontrollieren/bearbeiten.
Mit dem Ergebnis
cat <file> | xargs zypper install
Oder so aehnlich. Letzteren Befehl hab ich nicht getestet, da ist noch Luft fuer Korrekturen :)
Du koenntest allerdings auch gleich die ganze Installation kopieren. So mache ich das immer - Voraussetzung ist ein laufendes NFS auf der alten Maschine.
Also - die neue Kiste per DVD in den Recovery Modus booten - die Platte der neuen Kiste partitionieren und die Filesysteme erzeugen - die neue Filesysteme irgendwohin mounten - eine IP Adresse vergeben und ggf. einen Nameserver in die resolv.conf eintragen - per NFS die Filesysteme der Originalmaschine mounten - Daten kopieren - umount der Filesysteme der Originalmaschine - bind-Mounts von proc, sys, dev, run in das entsprechende Verzeichnis des neuen Root-Filesystems - chroot in das neue root-Filesystem - Anpassen von /etc/sysconfig/networks/if* - Anpassen von /etc/HOSTNAME - Anpassen von /boot/grub2/device.map und /etc/default/grub* - Anpassen von /etc/fstab - grub2-mkconfig >/boot/grub2/grub.cfg - grub2-install <boot-device> - chroot verlassen - umount von proc, sys, dev, run - reboot - sich an der neuen Kiste erfreuen
Danke im Voraus Martin
Ciao. Michael.
Am 17.04.2017 um 20:22 schrieb Martin Schröder:
Moin, ich will demnächst einen neuen Computer einrichten. Dabei würde ich gerne die Paketliste einer bestehenden Installation übernehmen (am liebsten mit den jeweiligen Paketquellen).
Geht das irgendwie einfach? Die Paketquellen lassen sich ja leicht kopieren.
Meine Antwort, etwas spät. Die Frage ist, was brauchst du wirklich von der "alten" Installation? Meine Empfehlung. Installiere neu und verwende das alte "home" entweder komplett, home muss man nicht formatieren, sofern man eine getrennte Partition dafür hat oder übertrage Stück für Stück das was du benötigst aus dem "alten" Homeverzeichnis in das neue. Letzteres ziehe ich vor, weil recht schnell sichtbar wird was fehlt und was unwichtig wurde. Für die Repo-Liste gibt es zwar einen zypper Befehl, ich mache jedoch einfach einen Screenshoot der Repos, und hole mir bei Bedarf das Fehlende neu mit Yast.
Gruß Peter