• Willkommen im Linux Club - dem deutschsprachigen Supportforum für GNU/Linux. Registriere dich kostenlos, um alle Inhalte zu sehen und Fragen zu stellen.

[Misson impossible]Systemarchitekturumstellung mittels APT

TomcatMJ

Guru
Tachchen!
Ich hab zur Abwechslung auch mal wieder eine Frage(was ja doch relativ selten ist*G*)...
Gibt es eigentlich eine funktionierende Möglichkeit mittels APT von der i686er auf die x86_64er Systemarchitektur umzustellen?
Mein System ist ein gewachsenes SuSE-Linux...von 4.2 bis 9.2 Pro immer normal upgedated mit diversen Versionsübergehungen, aber dann hatte ich von der 9.2 Pro auf die 9.3 mittels der c't DVD upgedated,einige Zeit später auch mal wieder ein neues Board mit neuem Proz(Athlon 64 Venice statt dem vorherigen Athlon XP 2000+) gekauft und nach einmaligen Start des Reparatursystems (die initrd passte eben leider doch nicht so ganz,der Rest lief soweit nach dem Umbau*G*) dann ganz normal weitergemacht wie vorher,aber halt mit 32 Bit Suse 9.3 was per APT entsprechend auf den passenden Softwarestand gebracht wurde.
Nun ist natürlich die Frage für mich ob ich da nun nachträglich wieder per Update diesmal die Softwaresystemarchitekttur ändern kann und dabei eben auch die alten Einstellungen der diversen Server auf dem Rechner hier damit übernehmen kann oder ob ich doch allen ernstes dazu die Kiste hier erst komplett sichern muss wegen der gesamten Daten und alles von 0 an neu machen muss(wäre ärgerlich bei 160 GB reinen Daten*G*...die 20 GB pure Systemsoft sind da weniger relevant da man die ja sonst neu aufspielen kann auch wenn das viel Zeit fressen würde...)....
Hat jemand so etwas schon ausprobiert und Erfolg gehabt von euch?

*mal auf positive Rückmeldung mit Kurzanleitung hoff*

Bis denne,
Tom
 

oc2pus

Ultimate Guru
prinzipiell das sollte möglich sein ;)

Bei RPM basierten Systemen wird ein Paket durch ein anderes ersetzt. In deinem Fall ein 32bit durch ein 64bit Paket. Die Konfigurationen bleiben erhalten bzw werden als *.rpmsave oder *.rpmnew erzeugt. Ein Abgleich dieser Dateien müsste sehr schnell durchführbar sein, da du auf einer SuSE Version bleibst und die Konfigs sich wahrscheinlich nicht unterscheiden.

Da es aber oft einen Mix gibt aus 32/64bit Software könnte das ein oder andere Paket Probleme bereiten. Das würde ich dann nach erfolgter Umstellung wieder neu installieren.

Mit einem vorhandenen Backup, besser ein Image (schau dir mal mkcdrec an, das erstellt bootbare CD/DVD Images von deinem System), denke ich du kannst es wagen.

1.) umstellen der sources.list auf das 64bit Repository
2.) apt update
3.) apt dist-upgrade
und dann weiter wie in dem Update Thread 9.1 auf 9.2 verfahren.
siehe hier:
http://www.linux-club.de/viewtopic.php?t=13107
http://www.linux-club.de/viewtopic.php?t=23601

wenn du es wagst, wäre ich an deinem Erfahrungsbericht interessiert ;)
 
OP
TomcatMJ

TomcatMJ

Guru
Hm,apt-get dist-upgrade schlägt hier schonmal fehl wegen Konflikt mit der glibc-32Bit die die c't Edition wohl draufgepackt hatte...ich probiers mal mit händigem austragen aus der rpm Database...(hab mir übrigens zum sichern kurz mal eine 200 GB SATA2-Platte von einem Bekannten ausgeliehen,160 GB auf DVD-Images war mir dann doch etwas arg heftig mit der Sicherungszeit und dem Rohlingsverbrauch, dd lässt grüßen...mkcdrec war mir übrigens schon länger bekannt *G*)...weitere Berichte zum Upgradevorhaben werden auf alle Fälle noch folgen...

Bis denne,
Tom
 
OP
TomcatMJ

TomcatMJ

Guru
Hm..naja...irgendwie hat sich da nun nicht wirklich etwas geändert durch das apt-get dist-upgrade...
vorher:
Code:
uname -ospmir
Linux 2.6.11.4-21.7-default i686 athlon i386 GNU/Linux
Danach gab es mit apt-get dist-upgrade nur folgende Änderungen:
Code:
Reading Package Lists...
Building Dependency Tree...
The following packages will be upgraded
  SuSEfirewall2 dvd-slideshow glibc-devel xine-ui
4 upgraded, 0 newly installed, 0 removed and 0 not upgraded.
Need to get 4560kB of archives.
After unpacking 2952kB disk space will be freed.
Do you want to continue? [Y/n] Get:1 http://ftp.gwdg.de SuSE/9.3-x86_64/update SuSEfirewall2 3.3-18.4 [79.8kB]
Get:2 http://ftp.gwdg.de SuSE/9.3-x86_64/update glibc-devel 2.3.4-23.4 [3403kB]
Get:3 http://ftp.gwdg.de SuSE/9.3-x86_64/packman dvd-slideshow 0.7.1-0.pm.1 [69.1kB]
Get:4 http://ftp.gwdg.de SuSE/9.3-x86_64/base xine-ui 1.0-10 [1008kB]
Fetched 4560kB in 55s (82.2kB/s)
Committing changes...
Preparing...                ##################################################
...

Irgendwie wurde da nichts wirklich essentielles ausgetauscht offenbar,denn danach galt immer noch folgendes als Systemrückmeldung:
Code:
uname -ospmir
Linux 2.6.11.4-21.7-default i686 athlon i386 GNU/Linux
Ein Kernelupdate oder Basissystemupdate wurde dabei offensichtlich nicht durchgeführt...scheint mir so als müsse ich entweder warten weil noch relevantes in den x86_64 Repositries für solch ein Upgrade fehlt oder ich muss mir doch Ende des Monats mal die "normale" Updateversion bezahlenderweise zulegen um dann ein wirkliches Update auf 64 Bit Basis durchführen zu können...oder fällt da jemandem zufällig etwas ein was ich wohl übersehen haben könnte?
Meine sources.lst sieht folgendermaßen aus:
Code:
rpm http://ftp.gwdg.de/pub/linux/suse/apt/ SuSE/9.3-x86_64 update
rpm http://ftp.gwdg.de/pub/linux/suse/apt/ SuSE/9.3-x86_64 suse-projects
rpm http://ftp.gwdg.de/pub/linux/suse/apt/ SuSE/9.3-x86_64 security
rpm http://ftp.gwdg.de/pub/linux/suse/apt/ SuSE/9.3-x86_64 rpmkeys
rpm http://ftp.gwdg.de/pub/linux/suse/apt/ SuSE/9.3-x86_64 base
rpm http://ftp.gwdg.de/pub/linux/suse/apt/ SuSE/9.3-x86_64 kde
rpm http://ftp.gwdg.de/pub/linux/suse/apt SuSE/9.3-x86_64 mozilla
rpm http://ftp.gwdg.de/pub/linux/suse/apt SuSE/9.3-x86_64 samba3
rpm http://ftp.gwdg.de/pub/linux/suse/apt SuSE/9.3-x86_64 suser-scorot
rpm http://ftp.gwdg.de/pub/linux/suse/apt SuSE/9.3-x86_64 packman
Dabei hab ich allerdings eher weniger den Eindruck als würde dort was fehlen,oder täuscht mich das etwa?

Bis denne,
Tom
 

pawe

Member
noch ein Weg:

Optional: binde die c´t-DVD als Repository in apt ein (natürlich das Verzeichnis x86_64) (kleine Anleitung) In deiner sources.list diese Quelle aufnehmen

APT mit der option reinstall verwenden. Dann installiert apt die Packete neu
???und dann falls nötig ein distupgrade??? Aber da musst du den Guru fragen :wink:

P.S. Ich würde die c´t DVD als Quelle nehmen und nicht die Repositorys. Die c´t DVD hat nämlich einige Pakete in einer anderen Version. Mit apt list-extras kannst du die Pakete finden, die es auf den Repositorys nicht hat. Nicht dass es nachher irgendwelche Probleme gibt.
 
OP
TomcatMJ

TomcatMJ

Guru
Hi!
Also ich habs exzessive probiert sowohl mit apt als auch mit normalem Update von der DDV aus und siehe da:
So geht es einfach nicht.
Warum?
Weil man nirgendwo den --ignorearch Parameter fürrpm übergeben kann und dieser auch beim Update von der Updatefunktion der Installationsroutine auf der DVD nicht genutzt wird. Sobald auf der Rootpartition bereits ein Linux drauf ist, weigert sich die Installationsroutine leider auch dort ein Crossupdate auf die x86_64 Architektur aszuführen. Der einzige Weg der funktioniert hat war /home, /root, /etc, /usr/local und ein paar eiegne Sachen in /opt zu sichern und die Partition leerzuräumen und dann eine Neuinstallation zu machen. Danach konnten die vorherigen Einstellungen und Daten (bis auf paar Architekturspezifische Dinge wie die Modulabhängigkeiten in /etc/modules.conf und ähnliches) weitgehenst einfach übernommen werden. Apt weigerte sich halt leider auf eine vorhandene i686er Architektur x86_64 RPMs drüberzubügeln und Yast bot einem nur an die vorhandene Installation mit den normalen 32 Bit Paketen drüberzubügeln aber kein Update auf die x86_64er Architektur...von daher kann ich abschließend nur sagen daß die Versuche es trotzdem irgendwie drüberzubügeln für Crossupdates leider offensichtlich Zeitverschwendung waren...(oder ich hab die Stelle einfach übersehen wo ich in irgendeiner .conf Datei dem Apt hätte mitteilen können, daß es die vorhandene Architektur getrost ignorieren kann)......
Soviel dann zur Systemumstellung mit normalen Update-/Upgrademethoden...ich hab dann halt einfach oben beschriebenen Weg zur Neuinstallation durchgeführt und nun läuft hier endlich ein 64Bit Betriebssystem auf einem 64Bit Prozessor und bremst nichts mehr aus*G*

Bis denne,
Tom
 

oc2pus

Ultimate Guru
ok, eine Idee hätte ich noch gehabt:
In der /etc/apt/preferences kann man die "Architecture" pinnen, aber es hat noch niemand ausprobiert und dieses Flag ist auch schlecht dokumentiert.

Und dieses Flag hättest du pro Paket angeben müssen, also eher eine Sysiphus-Arbeit, in der gleichen Zeit ist das update von scratch wohl schon durchgeführt.

Das wäre aber ein interesantes Problem für die apt4rpm mailinglis ;)
Wenn du Lust hast, kannst du es ja dort mal posten.
 
OP
TomcatMJ

TomcatMJ

Guru
Wenn ich nun noch einen weiteren 64-Bit Rechner hier hätte würd ichs vermutlich rein aus Neugier mal ausprobieren, aber da ich die geliehene Platte die ich fürs Backup hier hatte nicht mehr hier hab werd ichs nun wohl so fix nicht nochmal austesten da es doch eine gehörige Menge Zeit frisst sonst...
Für die Sisyphos-Arbeit kann man ja sonst Shellscripte basteln mit Hilfe von rpm -qa, grep und sed sollte sich eigentlich etwas machen lassen denk ich...vielleicht hätte ich mir doch etwas mehr als die man-Pages und --help Ausgaben von apt und apt-get durchlesen sollen dafür*G*, denn diese Option für die Preferences-Datei hab ich da schlichtweg nicht gesehen (und das wo ich zwar Corey Heart gut finde aber meine sunglases doch nicht at night weare 8) )...

Bis denne,
Tom
 
Oben