32bit zu 64bit: Unterschied zwischen den Versionen
Zur Navigation springen
Zur Suche springen
Keine Bearbeitungszusammenfassung |
(Änderung 370 von Suelmann (Diskussion) rückgängig gemacht.) Markierung: Rückgängigmachung |
||
(6 dazwischenliegende Versionen desselben Benutzers werden nicht angezeigt) | |||
Zeile 3: | Zeile 3: | ||
== Versuch 2 == | == Versuch 2 == | ||
rpm überprüft inzwischen, ob die Architektur des Pakets passt. | |||
Die Architektur ist überprüfbar mit | |||
<pre><nowiki> | <pre><nowiki> | ||
Zeile 10: | Zeile 10: | ||
</nowiki></pre> | </nowiki></pre> | ||
rpm überreden, dass wir 64bit sind: | |||
<pre><nowiki> | <pre><nowiki> | ||
Zeile 17: | Zeile 18: | ||
64bit-Kernel installieren: | |||
<pre><nowiki> | <pre><nowiki> | ||
rpm -ivh http://ftp.halifax.rwth-aachen.de/fedora/linux/updates/23/x86_64/k/kernel-4.2.6-300.fc23.x86_64.rpm http://ftp.halifax.rwth-aachen.de/fedora/linux/updates/23/x86_64/k/kernel-core-4.2.6-300.fc23.x86_64.rpm http://ftp.halifax.rwth-aachen.de/fedora/linux/updates/23/x86_64/k/kernel-modules-4.2.6-300.fc23.x86_64.rpm | rpm -ivh http://ftp.halifax.rwth-aachen.de/fedora/linux/updates/23/x86_64/k/kernel-4.2.6-300.fc23.x86_64.rpm http://ftp.halifax.rwth-aachen.de/fedora/linux/updates/23/x86_64/k/kernel-core-4.2.6-300.fc23.x86_64.rpm http://ftp.halifax.rwth-aachen.de/fedora/linux/updates/23/x86_64/k/kernel-modules-4.2.6-300.fc23.x86_64.rpm | ||
</nowiki></pre> | |||
Wichtige Pakete manuell updaten, besonders bei rpm und dnf aufpasssen | |||
<pre><nowiki> | |||
dnf -b Paket | |||
rpm -e Paket.i686 | |||
</nowiki></pre> | |||
Nach dem Update von rpm, RPMDB rebuilden: | |||
<pre><nowiki> | |||
rm -rf /var/lib/rpm/__db.00* | |||
rpmdb --rebuilddb | |||
</nowiki></pre> | |||
Übrige Pakete updaten: | |||
<pre><nowiki> | |||
rpm -qa --qf="%{name} %{arch}\n" |grep x86_64|cut -d" " -f1 >/tmp/x86_64 | |||
rpm -qa --qf="%{name} %{arch}\n" |grep i686|cut -d" " -f1 >/tmp/i686 | |||
for i in `cat /tmp/i686`; do if ! egrep "^$i\$" /tmp/x86_64 >/dev/null; then echo $i; if ! dnf -y -b install $i; then echo "Löschen und noch mal? "; read Y </dev/tty; if [ "$Y" = y ]; then rpm -e --nodeps $i; dnf -y -b install $i; fi; fi; fi; done | |||
</nowiki></pre> | |||
Alte i686-Pakete entfernen: | |||
<pre><nowiki> | |||
rpm -qa --qf="%{name} %{arch}\n" |grep x86_64|cut -d" " -f1 >/tmp/x86_64 | |||
rpm -qa --qf="%{name} %{arch}\n" |grep i686|cut -d" " -f1 >/tmp/i686 | |||
for i in `cat /tmp/i686`; do if egrep "^$i\$" /tmp/x86_64 >/dev/null; then echo $i; rpm -e $i.i686; fi; done | |||
</nowiki></pre> | </nowiki></pre> | ||
Zeile 65: | Zeile 100: | ||
---- | ---- | ||
[[KategorieWissen]] | [[KategorieWissen]] | ||
Aktuelle Version vom 20. Dezember 2021, 13:52 Uhr
Cross-Upgrade von Fedora 22 32bit zu 64bit
Versuch 2
rpm überprüft inzwischen, ob die Architektur des Pakets passt. Die Architektur ist überprüfbar mit
rpm --eval '%{_arch}'
rpm überreden, dass wir 64bit sind:
echo x86_64-redhat-linux > /etc/rpm/platform
64bit-Kernel installieren:
rpm -ivh http://ftp.halifax.rwth-aachen.de/fedora/linux/updates/23/x86_64/k/kernel-4.2.6-300.fc23.x86_64.rpm http://ftp.halifax.rwth-aachen.de/fedora/linux/updates/23/x86_64/k/kernel-core-4.2.6-300.fc23.x86_64.rpm http://ftp.halifax.rwth-aachen.de/fedora/linux/updates/23/x86_64/k/kernel-modules-4.2.6-300.fc23.x86_64.rpm
Wichtige Pakete manuell updaten, besonders bei rpm und dnf aufpasssen
dnf -b Paket rpm -e Paket.i686
Nach dem Update von rpm, RPMDB rebuilden:
rm -rf /var/lib/rpm/__db.00* rpmdb --rebuilddb
Übrige Pakete updaten:
rpm -qa --qf="%{name} %{arch}\n" |grep x86_64|cut -d" " -f1 >/tmp/x86_64 rpm -qa --qf="%{name} %{arch}\n" |grep i686|cut -d" " -f1 >/tmp/i686 for i in `cat /tmp/i686`; do if ! egrep "^$i\$" /tmp/x86_64 >/dev/null; then echo $i; if ! dnf -y -b install $i; then echo "Löschen und noch mal? "; read Y </dev/tty; if [ "$Y" = y ]; then rpm -e --nodeps $i; dnf -y -b install $i; fi; fi; fi; done
Alte i686-Pakete entfernen:
rpm -qa --qf="%{name} %{arch}\n" |grep x86_64|cut -d" " -f1 >/tmp/x86_64 rpm -qa --qf="%{name} %{arch}\n" |grep i686|cut -d" " -f1 >/tmp/i686 for i in `cat /tmp/i686`; do if egrep "^$i\$" /tmp/x86_64 >/dev/null; then echo $i; rpm -e $i.i686; fi; done
Versuch 1
- 64bit-Kernel installieren:
rpm -ihv http://ftp.halifax.rwth-aachen.de/fedora/linux/updates/22/x86_64/k/kernel-4.0.6-300.fc22.x86_64.rpm http://ftp.halifax.rwth-aachen.de/fedora/linux/updates/22/x86_64/k/kernel-core-4.0.6-300.fc22.x86_64.rpm http://ftp.halifax.rwth-aachen.de/fedora/linux/updates/22/x86_64/k/kernel-modules-4.0.6-300.fc22.x86_64.rpm
- Reboot mit x86_64-Kernel
- Nach dem Reboot ist für dnf $basearch=x86_64
- Für rpm ist aber noch die Architektur i386, überprüfbar mit
rpm --eval '%{_arch}'
- Hiermit überschreiben:
echo x86_64-redhat-linux > /etc/rpm/platform
- Pakete updaten / austauschen:
rpm -Uvh http://mirror2.hs-esslingen.de/fedora/linux/updates/22/x86_64/p/python-librepo-1.7.16-1.fc22.x86_64.rpm http://mirror2.hs-esslingen.de/fedora/linux/updates/22/x86_64/l/librepo-1.7.16-1.fc22.x86_64.rpm http://mirror2.hs-esslingen.de/fedora/linux/releases/22/Everything/x86_64/os/Packages/g/gpgme-1.4.3-5.fc22.x86_64.rpm http://mirror2.hs-esslingen.de/fedora/linux/releases/22/Everything/x86_64/os/Packages/l/libassuan-2.2.0-1.fc22.x86_64.rpm rpm -Uvh http://mirror2.hs-esslingen.de/fedora/linux/releases/22/Everything/x86_64/os/Packages/p/python-libcomps-0.1.6-14.fc22.x86_64.rpm http://mirror2.hs-esslingen.de/fedora/linux/releases/22/Everything/x86_64/os/Packages/l/libcomps-0.1.6-14.fc22.x86_64.rpm rpm -Uvh http://mirror2.hs-esslingen.de/fedora/linux/releases/22/Everything/x86_64/os/Packages/p/pyliblzma-0.5.3-13.fc22.x86_64.rpm rpm -Uvh http://mirror2.hs-esslingen.de/fedora/linux/updates/22/x86_64/r/rpm-python-4.12.0.1-11.fc22.x86_64.rpm rpm -Uvh http://mirror2.hs-esslingen.de/fedora/linux/updates/22/x86_64/p/python-hawkey-0.5.7-1.fc22.x86_64.rpm http://mirror2.hs-esslingen.de/fedora/linux/updates/22/x86_64/h/hawkey-0.5.7-1.fc22.x86_64.rpm http://mirror2.hs-esslingen.de/fedora/linux/releases/22/Everything/x86_64/os/Packages/l/libsolv-0.6.10-1.fc22.x86_64.rpm dnf update pkgs_devel="$(rpm -qa --queryformat '%{name}\n' | sed -n '/devel/p')"