32 to 64 bit Migration
Jump to navigation
Jump to search
Achtung, tricky! Nur für erfahrene Benutzer!
Voraussetzungen
- Grundverständnis von apt und dpkg
- Fähigkeit, Partitionen wegzusichern und geg.falls auch wieder (z.B. per Live-CD) herzustellen
- 64b live/rescue CD (muss auch unter 64b System erstellt werden)
- Wegsichern der /, /usr, /var... u. weiterer relevanter Partitionen (idealerweise auf eine 2. HDD gleicher Partitionierung)
Achtung, multiar(s)ch funktioniert nicht, folgende Tutorials enden in Chaos und Verwüstung:
- http://www.ewan.cc/?q=node/90 (don't !)
- http://blog.zugschlus.de/archives/972-How-to-amd64-an-i386-Debian-installation-with-multiarch.html (don't !)
Zeitaufwand
Wenn noch nie gemacht, geschätzt 1-2 Tage (incl. Restoredauer bei Fehlversuchen)
Vorgehen
- Als erstes einen 64bit Kernel installieren und rebooten!
- Den alten Kernel mindestens so lange behalten, bis das neue System erfolgreich gebootet hat
- Wenn erfolgreich, ist das ein guter Moment, das bestehende System zu sichern
Das weitere Vorgehen richtet sich nach der Anleitung unter https://wiki.debian.org/Migrate32To64Bit. Hierzu ein paar Anmerkungen:
- Achtung Debian-CD im rescue mode: Das System will eine /-partition. Hier nicht die aktuelle verwenden (da diese ja gemountet werden soll -> mount-inception!), sondern z.B. die vorher weggesicherte /-Partition auf der 2. HDD
- Das Verwenden der live-CD selbst als /-Umgebung ist schlecht, weil hier das cpio Command fehlt.
- Diesen Teil evtl. ausdrucken oder abschreiben, da während reboot mit live-CD nicht verfügbar
# mkdir /main # mount /dev/sda2 /main
(oder wo sich auch immer die /-Partition befindet)
# ls /main (# mount /dev/sda5 /main/var
(falls nicht eh alles unter / gemountet ist))
# cd /main/chroot64 # cpio -pVdu /main < /main/root/bins.txt
Außerdem müssen Symlinks in lib64 (passend zum Minisystem) von Hand hergestellt werden, z.B.:
# cd /main/lib64 # ln -s /lib/86_64-linux-gnu/ld-2.13.so ld-linux-x86-64.so.2
(muss man von Hand tippen; den Pfad gibt's nicht auf dem Livesystem)
# cd # umount /main/var # umount /main # reboot
Nach dem "apt-get install -f" in der Anleitung noch ausführen:
# apt-get update # apt-get dist-upgrade
- Folgender Fehler
dpkg: error processing /var/cache/apt/archives/linux-libc-dev_3.2.65-1+deb7u2_amd64.deb (--unpack): trying to overwrite shared '/usr/include/sound/sb16_csp.h', which is different from other instances of package linux-libc-dev:amd64 dpkg-deb: error: subprocess paste was killed by signal (Broken pipe)
- Am Ende noch ein
# update-grub
ausführen