kernel kopieren

Warum Debian und/oder eine seiner Spielarten? Was muss ich vorher wissen? Wo geht es nach der Installation weiter?
Antworten
Benutzeravatar
Huck Fin
Beiträge: 1210
Registriert: 10.03.2008 17:10:30

kernel kopieren

Beitrag von Huck Fin » 24.03.2010 21:37:17

Hi, ich hab nen alten Lenny PC mit Isdn-Fritz Card.
Jetzt wollte ich nen neuen PC installieren auch mit FritzCard.
Da es so mühselig war mit dem Kernel compilieren etc und ich garnimmer weis
wie das ging, wollt ich mal fragen:
Kann ich den Kernel einfach rüber kopieren vom alten PC auf den Neuen ?
Was ist mit der initrd.img ?
Muss ich die auch kopieren ?
Muss ich sonst noch was beachten ?

Benutzeravatar
Blackbox
Beiträge: 4289
Registriert: 17.09.2008 17:01:20
Lizenz eigener Beiträge: GNU Free Documentation License

Re: kernel kopieren

Beitrag von Blackbox » 25.03.2010 07:02:06

Du könntest mit Hilfe von Debiandd ein komplettes Image deines Systems und dieses Image dann auf deinem neuen Rechner kopieren.
Eigenbau PC: Debian Sid - Kernel: 6.5.13 - Xfce 4.18 mit sway
Desktop PC: Dell Inspiron 530 - Debian Sid - Kernel: 6.5.13 - Xfce 4.18 mit sway
Notebook: TUXEDO BU1406 - Debian Sid - Kernel: 6.5.13 - Xfce 4.18 mit sway
Alles Minimalinstallationen und ohne sudo/PA/PW.
Rootserver: Rocky Linux 9.3 - Kernel: 5.14

Freie Software unterstützen, Grundrechte stärken!

debianoli
Beiträge: 4174
Registriert: 07.11.2007 13:58:49
Lizenz eigener Beiträge: MIT Lizenz

Re: kernel kopieren

Beitrag von debianoli » 25.03.2010 10:09:37

Huck Fin hat geschrieben:Was ist mit der initrd.img ?
Muss ich die auch kopieren ?
Muss ich sonst noch was beachten ?
Das geht ganz gut. Entweder du machst die schone empfohlene Methode per dd. Dabei sollte allerdings die Festplatte im neuen Rechner genauso groß wie die in deinem alten rechner sein, da du sonst Platz verschenkst (wenn größter) bzw. es nicht geht (wenn kleiner).

Viel besser und eleganter finde ich aber den Einsatz von tar, also einer Kopei des alten Systems, dass du dann in einer Partition auf dem neuen PC entpackst (per Live-CD). Das musst du dann noch auf die neue Hardware einrichten, also /etc/fstab anpassen, grub richtig hinbiegen (per chtoot-Umgebung) etc.

Wenn dich diese Methode interessiert, dann teil mir das mit. Ich schreibe dir dann die genauen Einzelschritte auf.
------------
Dieses verdammte Linux holt mir nicht mal ein Bier aus dem Kühlschrank!

Benutzeravatar
Huck Fin
Beiträge: 1210
Registriert: 10.03.2008 17:10:30

Re: kernel kopieren

Beitrag von Huck Fin » 25.03.2010 10:32:42

[quote="debianoli
Das geht ganz gut. Entweder du machst die schone empfohlene Methode per dd. Dabei sollte allerdings die Festplatte im neuen Rechner genauso groß wie die in deinem alten rechner sein, da du sonst Platz verschenkst (wenn größter) bzw. es nicht geht (wenn kleiner).

Viel besser und eleganter finde ich aber den Einsatz von tar, also einer Kopei des alten Systems, dass du dann in einer Partition auf dem neuen PC entpackst (per Live-CD). Das musst du dann noch auf die neue Hardware einrichten, also /etc/fstab anpassen, grub richtig hinbiegen (per chtoot-Umgebung) etc.

Wenn dich diese Methode interessiert, dann teil mir das mit. Ich schreibe dir dann die genauen Einzelschritte auf.[/quote]

Hi, das würde mich interessieren...
Wie geht das ?

debianoli
Beiträge: 4174
Registriert: 07.11.2007 13:58:49
Lizenz eigener Beiträge: MIT Lizenz

Re: kernel kopieren

Beitrag von debianoli » 25.03.2010 11:22:02

Zum kopieren per tar fährst du den alten Rechner hoch und

1. logst dich als Root ein.

2. Dann erstellst du eine Datei EXCLU in /home, die folgenden Inhalt hat:

Code: Alles auswählen

/dev/*
/sys/*
/proc/*
/media/*
/mnt/*
/home/*
/tmp/*
3. Nun erstellst du ein tar-File deines alten Systems. Dazu sollten mindestens 2 bis 4 GB freier Speicher auf der Platte sein, je nachdem, wie groß dein System ist.

Code: Alles auswählen

tar -cvzp --exclude-from=EXCLU -f sicherung.tar.gz /*
tar erstellt jetzt eine Kopie deines System, lässt dabei aber den Inhalt von Verzeichnissen/Dateien aus, die in der Datei EXCLU stehen. Deshalb der *, so werden zwar die Verzeichnisse /home /proc /sys etc. mit ins tar genommen, aber der Inhalt bleibt draußen. Und natürlich muss man das tar auch in einem Verzeichnis erstellen, das nicht mit gesichert wird. Sonst schreibt sich tar ja immer wieder in sich selbst...

Deine Nutzerdaten, also den Inhalt von Home kopierst du am besten separat.

4. Jetzt fährst du den neuen Rechner mit einer Live-CD, legst Partitonen an und logst dich als Root ein. Dann mountest du deine geplante Root-Partition, z.B. nach /mnt

5. Nun kopierst du das tar in dein neues Root-Verzeichnis und entpackst es da:

Code: Alles auswählen

tar -xzvf sicherung.tar.gz
6. Jetzt kommt chroot. Dazu musst du noch wichtige System-Dateien umbiegen auf die entsprechenden, damit es mit grub klappt. Ich nehme dazu an, dass du die neue Root-Partition nach /mnt gemoutet hast:

Code: Alles auswählen

mount --bind /dev /mnt/dev
mount --bind /proc /mnt/proc
mount --bind /sys /mnt/sys
7. Nun wirst du zu Root auf deinem neuen System:

Code: Alles auswählen

chroot /mnt
8. Jetzt biegst du Grub um:

Code: Alles auswählen

grub
root (hdx,x)
setup (hdx)
quit
hdx,x steht für deine Platte, da trägst du die Partitons-Nummer minus 1 deines Systems mit /boot ein. Also bei Partiton 1 auf Festplatte 1 wird das zu hd0,0
Beim grub-befehl setup ist das das gleiche: Du willst den MBR von Platte 1 neu mit Grub beschreiben, also setup (hd0)

9. Jetzt änderst du noch die /etc/fstab auf die neuen Partitionen um und passt die menu.list an die richtigen Partition an. Ein Beispiel der /boot/grub/menu.list:

Code: Alles auswählen

title           Debian GNU/Linux, kernel 2.6.32-2-686
root            (hd0,0)
kernel          /boot/vmlinuz-2.6.32-2-686 root=/dev/hda1 ro quiet
initrd          /boot/initrd.img-2.6.32-2-686


Wie gehabt: der Eintrag root (hd0,0) entspricht der Grub-Notation, root=/dev/hda1 der klassischen Linux-Partitionseinteilung. Wenn du uuid-Einträge hast, dann findest du sie per blkid etc.

10. Jetzt kannst du den neuen Rechner mal ohne Live-CD hochfahren. Es müsst dein KDE/gnome etc Anmelde-Schirm erscheinen. Da würde ich mich als Root auf der Konsole einloggen, das User-Verzeichnis anlegen und deine Nutzer-Daten nach Home-Kopieren (kannst du natürlich auch schon früher machen).

11. Nun schmeist du noch den udev-Eintrag für die Netzwerk-Karten raus, da sich da sonst eth3 etc. eintragen

Code: Alles auswählen

mv /etc/udev/rules.d/70-persistent-net.rules /root
12. Falls du suspend2disk nutzt, kommt jetzt noch die Datei /etc/initramfs-tools/conf.d/resume dran. In der muss der Eintrag für deine Swap-partition stimmen, also bei zB swap = /dev/hda3

Code: Alles auswählen

RESUME=/dev/hda3
13. Nun noch ein beherztes

Code: Alles auswählen

    update-initramfs -u
und beim nächsten Hochfahren ist alles in Butter.

grüße
------------
Dieses verdammte Linux holt mir nicht mal ein Bier aus dem Kühlschrank!

Benutzeravatar
Huck Fin
Beiträge: 1210
Registriert: 10.03.2008 17:10:30

Re: kernel kopieren

Beitrag von Huck Fin » 25.03.2010 19:26:04

Cool,
1000 Dank für die Mühe, die du dir gemacht hast.
Werd ich so mal versuchen.

Antworten