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

[HOWTO] Upgrade einer SuSE Version 9.0 auf 9.1 mit apt

Status
Für weitere Antworten geschlossen.

oc2pus

Ultimate Guru
Diese Anleitung beschreibt das Upgrade einer SuSE 9.0 auf eine SuSE 9.1 mit apt.

###########################################################
VORBEMERKUNG:
###########################################################
Diese Anleitung ist nach bestem Wissen und Gewissen erstellt worden -
bei mir hat es funktioniert.
Ich empfehle zuerst den GESAMTEN Text durchzulesen --BEVOR-- man anfängt ;)

Wenn etwas schief geht, Ruhe bewahren, Fehlermeldung genau lesen und die man-pages lesen. Die Stelle des point-of-no-return ist mit einem Kommentar gekennzeichnet.
Alles was vor dem point-of-no-return passiert, hat NICHTS am System geändert.
Selbst wenn rpm neue Pakete installiert, alle gestarteten Programme sind noch die alte Version. Erst wenn man sie beendet und neustartet, wird die neue Version gestartet. D.h. man sollte sich seinen Lieblingseditor, Dateimanager etc schon mal starten vor dem Upgrade. Dann hat man evtl. mehr Möglichkeiten einzugreifen. Shell-Künstler schliessen natürlich alle Anwendungen und arbeiten in runlevel 3 ;)

Die neuen Pakete werden in ein eigenes Cache-Verzeichnis geschrieben. Damit können die alten RPMs jederzeit wieder aus dem 9.0er Cache mit
rpm -Uhv --force *.rpm
installiert werden. Das gilt natürlich nur für die im Cache vorhandenen Pakete.
Um an die original Pakete der DVD/CD wider dran zu kommen, muß man die DVD/CD mounten und kann dann von dort RPMs installieren. Das ist alles problemlos möglich solange man NICHT bootet im Falle eines Problems. Keep Cool.
Um ein Linux System am laufen zu halten, sollte man die Pakete, welche in der Datei /etc/apt/rpmpriorities stehen irgendwo greifbar haben. Ohne rpm und zugehörige wird es schwierig Pakete zu ersetzen ;)

Analog dieser Anleitung kann auch ein 8.2er auf ein 9.0 oder 9.1 upgegraded werden. Es ist aber etwas mehr Aufwand erforderlich. Die Ursache liegt an der Versionsnummervergabe von SuSE, da hat sich einiges geändert von 8.x auf 9.x und rpm-3.x hat Schwierigkeiten die "neuere" Version zu ermitteln.
Ein upgrade 8.1 straight auf 9.1 war nach dieser Anleitung auch erfolgreich. Aber gerade von 8.1 auf 8.2 gab es erhebliche Umstellungen in der Verzeichnisstruktur und in der Namensgebung von Paketen innerhalb von SuSE. Ein weiterer Grund der es erheblich verkompliziert hat, ist das update der glibc (eine ganz eine wichtige Bibliothek für linux) und es war sehr viel manuelles "Gefrickel" erforderlich. Von einem Upgrade 8.1 auf eine neuere SuSE Version mit apt rate ich Anfängern
prinzipiell ab.

###########################################################
VORRAUSSETZUNGEN:
###########################################################
Wer das upgrade ausprobieren will, sollte mindestens einen Editor in der shell bedienen können, die grundlegenden Befehle wie mkdir, cd, tar, etc kennen UND wissen wie er im schlimmsten Fall mit einer Rescue CD wieder an sein System dran kommt!
Ein Backup sollte auch greifbar sein, man weiß ja nie....
Ein kurzer Blick in die man-pages von apt und apt-get kann auch nicht schaden.

apt speichert seine Downloads normalerweise in einem lokalen Cache (/var/cache/apt).
Dort sollten ca 700-800 MB Platz vorhanden sein, damit die 9.1er Pakete dort Platz haben.
Wenn man dort nicht soviel Platz hat, kann man das Repository von apt auch auf eine andere Partion verschieben, dazu ist eine Anpassung in
/etc/apt/apt.conf.d/apt.conf erforderlich.

###########################################################
Immer noch der Meinung "das will ich auch?" ... dann los.
###########################################################

Schritt 1: in einer Konsole root werden

Schritt 2: aktuelle apt-Konfiguration sichern
cd /etc
tar cvf myApt-conf-9.0.tar apt/*
gzip myApt-conf-9.0.tar

Schritt 3: ein temporäres Verzeichnis anlegen um diverse Informationen zu sammeln
cd /root
mkdir update
cd update

Schritt 4: aktuelle Paketliste sichern
rpm -qa | sort > myAktRPMs-9.0

Schritt 5: aktuelles apt.log sichern und neues leeres logfile erstellen
mv /var/log/apt.log apt-9.0.log
touch /var/log/apt.log

Schritt 6: Die Dateien /etc/apt/sources.list und /etc/apt/security.list anpassen auf die 9.1er Repositories
VORSICHT: es gibt einige Repositories nicht mehr in 9.1 bzw es gibt andere das kann durch einen Besuch der ftp site http://ftp.gwdg.de/pub/linux/suse/apt/ geprüft werden.
Beispiel für die Änderung:
rpm http://ftp.gwdg.de/pub/linux/suse/apt/ SuSE/9.0-i386 base ==>
rpm http://ftp.gwdg.de/pub/linux/suse/apt/ SuSE/9.1-i386 base

Schritt 7: In der Datei /etc/apt/apt.conf.d/apt.conf die Option Hold für den Kernel deaktivieren
Hold { "k_deflt"; }; ändern zu // Hold { "k_deflt"; };
oder falls man unter 9.0 schon einen 2.6er kernel hatte
Hold { "kernel-default"; }; ändern zu // Hold { "kernel-default"; };

Schritt 8: In der Datei /etc/apt/preferences folgende Änderungen durchführen:
Alle eventuell vorhandenen Einträge aus der /etc/apt/preferences entfernen. Falls diese Datei nicht existiert, lege sie an. Und diesen Eintrag einfügen:
Package: *
Pin: release v=9.1
Pin-Priority: 1001
Damit zwingen wir apt bei gleicher Versionsnummer von 9.1er Paketen diese zu verwenden.
Manchmal haben die 9.1er Pakete auch kleinere Versionsnummern als die 9.0er, diese würden dann nicht "upgegraded". Dieser kleine Trick erledigt das dann ;)

Schritt 9: Damit die Pakete für den upgrade auf 9.1 nicht im alten Cache-Verzeichnis für Version 9.0 landen, ist folgende Änderung in der /etc/apt/apt.conf.d/apt.conf in der Sektion Dir "/" { } erforderlich:
Code:
// Directory layout
Dir "/"
{
  // Location of the state dir
  State "local/state/apt/"
  {
    lists "lists-9.1/";
    xstatus "xstatus";
    userstatus "status.user";
    status "/local/status";
 };

 // Location of the cache dir
 Cache "local/cache/apt/" {
    archives "archives-9.1/";
    srcpkgcache "srcpkgcache-9.1.bin";
    pkgcache "pkgcache-9.1.bin";
 };
...
};

Schritt 10: Anlegen der neuen Cache Verzeichnisse in /local. Wer es woanders haben möchte muss sich die Befehle entsprechend anpassen ;)
Der Platzbedarf war bei meinem System ca 800MB.
mkdir -p /local/state/apt/lists-9.1/partial
mkdir -p /local/cache/apt/archives-9.1/partial
touch /local/state/apt/lists-9.1/lock
touch /local/cache/apt/archives-9.1/lock

Damit ist die Konfiguration für apt abgeschlossen.

Schritt 11: die apt-Repositories füllen und updaten für 9.1

sollten jetzt Fehlermeldungen bezüglich der Konfigurationsdateien kommen, zurück zum Anfang und nochmal sogfältig die Anpassungen vergleichen. Ohne korrekte Konfiguration wird man scheitern!

Schritt 12: Jetzt lassen wir apt den Upgrade berechnen.
Durch den tee Befehl werden die Bilschirmausgaben zusätzlich in die Datei upgrade.txt geschrieben. Das erleichert uns die Arbeit etwas, da die Ausgabe von dist-upgrade sehr lang sein kann und man ggfl nicht so weit zurückscrollen kann in der Konsole.
apt-get -s dist-upgrade | tee upgrade.txt

die Datei upgrade.txt sollte dann so aussehen
Lese Paketlisten...
Erzeuge Abhängigkeitsbaum...
Die folgenden Pakete werden upgegradet werden:
3ddiag CheckHardware DirectFB MPlayer OpenOffice_org OpenOffice_org-de SDL
SDL_image SDL_image-devel SDLmm SDLmm-devel a2ps aaa_base aaa_skel aalib
aalib-devel acl acroread alsa alsa-devel alsa-tools apache apt apt-libs
apt-server arts arts-devel ash at atk attr audiofile autoconf automake
<snip ...>
yast2-xml yp-tools ypbind zip ziptool zisofs-tools zlib zlib-devel zsh
Die folgenden Pakete werden ERSETZT:
XFree86 (by xorg-x11) XFree86-Xvnc (by xorg-x11-Xvnc) XFree86-devel (by
xorg-x11-devel) XFree86-driver-options (by xorg-x11-driver-options)
XFree86-fonts-100dpi (by xorg-x11-fonts-100dpi) XFree86-fonts-75dpi (by
xorg-x11-fonts-75dpi) XFree86-fonts-scalable (by xorg-x11-fonts-scalable)
XFree86-libs (by xorg-x11-libs) XFree86-man (by xorg-x11-man)
bonobo-activation (by libbonobo) kdenetwork3-devel (by kdepim3-devel) kmag
(by kdeaccessibility3) libgcc (by libgcc-mainline) lvm (by lvm2) mesaglut
(by freeglut) mesaglut-devel (by freeglut-devel) ps (by procps) saxident
(by sax2-ident) saxtools (by sax2-tools) unrar (by rar) w32codec (by
w32codec-all) xpmroot (by fvwm2)
Die folgenden Pakete werden ENTFERNT:
ImageMagick kdebindings3-mozilla libsmbclient3 pixieplus
Die folgenden NEUEN Pakete werden installiert werden:
db41 desktop-data-SuSE device-mapper eazy evms freeglut freeglut-devel
kdeaccessibility3 kdepim3-devel libgcc-mainline libidn libidn-devel
libselinux lvm2 openmotif-libs openslp perl-Config-Crontab perl-Digest-SHA1
pkgconfig popt-devel procps rar sax2-ident sax2-tools submount udev
w32codec-all wvstreams xorg-x11 xorg-x11-Xvnc xorg-x11-devel
xorg-x11-driver-options xorg-x11-fonts-100dpi xorg-x11-fonts-75dpi
xorg-x11-fonts-scalable xorg-x11-libs xorg-x11-man yast2-perl-bindings
Die folgenden Pakete sind zurückgehalten worden
autofs gpg kdebase3 kdebase3-devel ldapcpplib libsmbclient openldap2-client
postfix samba-client
Die folgenden Pakete werden DOWNGRADED:
XFree86-Mesa-devel a52dec divx4linux hotplug kbear kdeadmin3 kdirstat
libieee1284 libtheora libusb lua tmake xorg-x11-Mesa xorg-x11-server
xorg-x11-server-glx
<snip der INST und CONF Ausgabe>

Schritt 13: Jetzt müssen wir ein shell-Script erstellen. Mit diesem Script wird der
download und das eigentliche update dann durchgeführt.

myUpgrade erstellen mit folgendem Inhalt
#!/bin/bash
apt --test install \
<alle pakete aus "Die folgenden Pakete werden upgegradet werden">
<alle pakete aus "Die folgenden NEUEN Pakete werden installiert werden:">
<alle pakete aus "Die folgenden Pakete werden DOWNGRADED:">
<alle pakete aus "Die folgenden Pakete sind zurückgehalten worden">
hier einfügen.
Diese Informationen können aus der Datei upgrade.txt einfach hierher kopiert werden. Ein weiterer Grund für den tee-Befehl ;)

Schritt 14: Am Ende wird diese Liste noch um die folgenden Einträge erweitert:
mingetty pwdutils module-init-tools kernel-default

Schritt 15: Alle Pakete aus der Sektion "werden Ersetzt" fügen wir in myUpgrade ein mit einem angehängten "-": XFree86- XFree86-Xvnc- ... Das bedeutet schlicht und einfach, diese Pakete werden vor dem eigentlichen upgrade deinstalliert.
Die folgenden Pakete werden ERSETZT:
XFree86 (by xorg-x11) XFree86-Xvnc (by xorg-x11-Xvnc) XFree86-devel (by xorg-x11-devel) XFree86-driver-options (by xorg-x11-driver-options)
XFree86-fonts-100dpi (by xorg-x11-fonts-100dpi) XFree86-fonts-75dpi (by xorg-x11-fonts-75dpi) XFree86-fonts-scalable (by xorg-x11-fonts-scalable)
XFree86-libs (by xorg-x11-libs) XFree86-man (by xorg-x11-man) bonobo-activation (by libbonobo) kdenetwork3-devel (by kdepim3-devel) libsmbclient3 (by
libsmbclient) lvm (by lvm2) mesaglut (by freeglut) mesaglut-devel (by freeglut-devel) ps (by procps) saxident (by sax2-ident) saxtools (by sax2-tools)
shadow (by pwdutils) unrar (by rar) w32codec (by w32codec-all) xpmroot (by fvwm2)

Um Konfig-Dateien einfach vergleichen zu können wird das Programm kompare gebraucht.
Deshalb überprüfen wir die Paketliste, ob das Paket kdesdk3 enthalten ist, wenn nicht einfach am Ende hinzufügen.

WICHTIG: Wenn man aus der Datei upgrade.txt die Zeilen hierher kopiert, muss an jedes Zeilenende ein " \" (ohne die Gänsefüsschen) geschrieben werden. Das sollte dann so aussehen:
apt --test install \
3ddiag CheckHardware DirectFB MPlayer OpenOffice_org OpenOffice_org-de SDL \
SDL_image SDL_image-devel SDLmm SDLmm-devel a2ps aaa_base aaa_skel aalib \
aalib-devel acl acroread alsa alsa-devel alsa-tools apache apt apt-libs \
....

Schritt 16: script speichern und ausführbar machen
chmod +x myUpgrade

Schritt 17: script aufrufen

Wenn hier Fehlermeldungen auftauchen, muss man evtl. ein Paket welches die Abhängigkeiten stört manuell löschen
rpm -e --nodeps <blödes-paket>
und ./myUpgrade nochmal aufrufen. Das passiert selten, aber manchmal gibt es merkwürdige nichtauflösbare zirkuläre Abhängigkeiten. Meist liegt es an der rpm-Datei, der Paketersteller hat einen Fehler gemacht.
Diesen Vorgang wiederholen wir solange bis myUpgrade fehlerfrei durchläuft!

Wer viele manuelle Änderungen an rpm vorbei an seinem System durchgeführt hat und evtl eigene Pakete mit fehlerhaften Abhängigkeiten eingespielt hat, sollte einfach seine eigenen Pakete löschen und später neu installieren.
In extremen Fällen wo ein Paket ABC unbedingt eine Bibliothek libXXX.so.4 haben will und ein anderes Paket XYZ die gleiche Bibliothek libXXX.so.5 haben will, können wir mit einem fake-Eintrag in der Konfiguration beiden Paketen die korrekte Version der Bibliothek vorgaukeln.
Beispiel für einen fake-Eintrag in der /etc/apt/apt.conf.d/apt.conf
Code:
RPM {
      ...
      Fake-Provides { 
           "rpmlib(PartialHardlinkSets) 4.0.4-1";  
           "libjasper 1.701"; 
	};
      ...
};
Mit diesen Einträgen lügen wir dem System vor, das das Paket libjasper in
der Version 1.701 und das Programm rpmlib(PartialHardlinkSets) in der Version 4.0.4-1 installiert ist. Computer sind doof ;)
Diese "fakes" sind aber eher die Ausnahme. Ein weiterer Grund für viele Fehler in der Ausgabe ist die sources.list. Wenn dort Repositories auskommentiert wurden, kann apt bestimmte Pakete nicht "sehen". Dann
aktiviert man einfach das Repository in der sources.list und ruft apt-get update auf.
Anschliessend nochmals myUpgrade. Auch der umgekehrte Fall kann eintreten, dann muss man ein Repository deaktivieren. Auch hier gilt für das upgrade der SuSE-Version "weniger ist mehr", also nicht alle experimentellen Repositories in der sources.list
aufnehmen. Diese kann man ja nach dem Upgrade auf 9.1 wieder aktivieren. Das klingt jetzt alles schlimmer als es in Wirklichkeit ist. In meinen vielen apt upgrades kam ich im Mittel mit zwei bis drei Aufrufen von myUpgrade aus.

Schritt 18: Wenn das Script myUpgrade fehlerfrei durchgelaufen ist, haben wir das schlimmste überstanden.
TIP: wenn man alle OpenOffice* Pakete erst mal weglässt (ca 70MB), geht das update schneller. Dazu entfernt man in der Datei myUpgrade einfach alle OpenOffice Einträge.
Das funktioniert, da OpenOffice keine Abhängigkeiten enthält. Die Pakete können dann später mit apt-get install OpenOffice ... nachinstalliert werden.
Die Ausgabe zeigt dann die Größe des downloads an und sollte am Ende so aussehen
....
527 upgraded, 39 newly installed, 15 downgegradet, 24 ersetzt, 3 entfernt und 1 nicht upgegradet.
Muss 141MB/688MB an Archiven holen.
Nach dem Auspacken werden 80,8MB zusätzlicher Plattenplatz benutzt werden.
Wollen Sie fortsetzen? [J/n]
diese Frage mit J beantworten, damit wird der download angestossen und diese Pakete werden geholt ....
Anmerkung: 141MB/688MB wird bei mir angezeigt, da ich schon ein 9.1 System habe und deshalb viele Pakete schon in meinem Cache stehen. Bei euch würde dort sicher 0MB/688MB stehen ;)

Jetzt kann man sich eine kleine Erfrischung holen und sich mit etwas anderem beschäftigen.

Schritt 19: Wenn der download fertig ist, das script myUpgrade editieren und die Option
--test durch die Option --force-rpm ersetzen.
apt --test install \ ==> apt --force-rpm install \
Script speichern.

###################################################################################
Hier ist auch der point-of-no-return erreicht, wenn rpm anfängt Pakete zu ersetzen, darf der Rechner nicht abgeschaltet werden oder das Upgrade unterbrochen werden!!!
Das führt zu schlimmen Inkonsistenzen. Es ist dann noch nicht alles verloren, man kann mit apt ja alles wieder richten... Aber es wird schwierig.
Ich habe euch gewarnt....
###################################################################################

Schritt 20: das script nochmal aufrufen
jetzt wirds ernst .... die Pakete werden installiert.....

Mutige wenden sich jetzt wiederum einer anderen Tätigkeit zu, weniger mutige lesen einfach mit, was da so passiert und starren gebannt auf die "#########"-Zeilen.
evtl auftretende (Fehler-)Meldungen kann man sicherheitshalber mal notieren.
Noch clevere beginnen jetzt schon damit die Konfigurationsdatein in einer zweiten Konsole anzupassen (rpm sagt uns ja immer so nett file xxx saved as xxx.rpmsave oder file yyy created as yyy.rpmnew).

Schritt 21: Wenn alle Pakete installiert sind, erstellen wir eine neue Liste der aktuell
installierten Pakete mit
rpm -qa | sort > myAktRPMs-9.1

Schritt 22: Diese beiden Listen vergleichen wir dann mit
kompare myAktRPMs-9.0 myAktRPMs-9.1
wer noch kein kompare auf seinem System hat, sollte jetzt das Paket kdesdk3 nachinstalliern, oder mit einem anderen Abgleichstool die Dateien vergleichen.
Interessant sind alle Zeilen wo die Versionsnummern 9.0 und 9.1 gleich geblieben sind.
Um zu überprüfen ob diese Pakete wirklich überschrieben worden sind, kann man in dem logfile /var/log/apt.log nachschauen.
Falls das aus irgendwelchen Gründen nicht passiert sein sollte, entfernen wir die 9.0er Pakete mit dem Befehl
rpm -e --nodeps <paket1> <paket2>
und erzwingen die Installation der 9.1er Pakete mit dem Befehl
apt-get -f install

Schritt 23: jetzt SuSEconfig aufrufen, damit alles seine Ordnung hat ;)

Schritt 24: Durch das update werden einige Konfigurationsdatein anzupassen sein. Welche das sind zeigt uns die Ausgabe des Befehls rcrpmconfigcheck.
Beipiel für so eine Ausgabe:
rcrpmconfigcheck
Searching for unresolved configuration files done
Please check the following files (see /var/adm/rpmconfigcheck):
/etc/X11/qtrc.rpmnew
/usr/lib/sasl2/smtpd.conf.rpmnew

Schritt 25: jetzt kommt der etwas unangenehme Teil.. ALLE angezeigten Konfigdateien müssen überprüft werden.
Einen schnellen Vergleich kann man mit dem folgenden Befehl erreichen
sdiff -s <config> <config>.rpmnew
Wenn dieser Befehl keine Ausgabe zeigt, sind die Dateien gleich und wir können die Datei <config>.rpmnew einfach löschen.
Falls die Dateien Unterschiede enthalten, können sie einfach mit dem Befehl
kompare <config> <config>.rpmnew
abgeglichen werden. Das Tool kompare ist übrigens in dem Paket kdesdk3 enthalten.
Solltet ihr dieses Paket noch nicht installiert haben, spätestens jetzt sollte man dies tun: apt-get install kdesdk3

###########################################################
NACHARBEITEN
###########################################################
Schritt 26: Wenn alle Konfigurationsdateien abgeglichen wurden ist das upgrade auf 9.1 beendet ;)
Die alten Cache-Verzeichnisse von 9.0 (normalerweise in /var/cache/apt und /var/state/apt) könnten jetzt gelöscht werden.

Schritt 27: Wer seinen Kernel von 2.4 auf 2.6 upgedatet hat MUSS jetzt die modules.conf nach modprobe.conf konvertieren! Das Tool generate-modprobe.conf erledigt das. Die modprobe.conf ist ggfl. anzupassen.
Siehe auch Thomas Hertweck Kernel-Howto (http://www.thomashertweck.de/kernel26.html) und SuSE Support-Datenbank: Migration von SUSE LINUX 9.0 auf Kernel Version 2.6 (http://portal.suse.com/sdb/de/2004/02/migrating_to_26.html)

Schritt 28: Da wir einen neuen Kernel installiert haben ist jetzt ein reboot fällig.
Die armen nvidia Besitzer müssen jetzt noch ihren nVidia Treiber anpassen ;)

Schritt 29: Alle selbst kompilierten Pakete sollte man dann mit den neuen Versionen von 9.1 neu compilieren und installieren. Jetzt zeigt sich, wie gut die eigene Buchhaltung über selbstinstallierte Pakete war....
Fein raus ist, wer seine Eigenkompilate mit checkinstall installiert hat. Der kann nämlich seine Pakete ordentlich deinstallieren und neu installieren ;)
Ich persönlich erstelle meine eigenen Pakete mit der Release-Nummer 0.oc2pus.0, dann finde ich die sehr einfach wieder und SuSE verwendet keine Release-Nummer 0. Damit werden meine Pakete durch Original SuSE-Pakete ersetzt wenn es sie endlich gibt.
Beispiel
meine Version libdar-2.1.3-0.oc2pus.1.i586.rpm
SuSE Version libdar-2.1.3-23.i586.rpm
und rpm erkennt 0.oc2pus.1 ist jünger als 23

###########################################################
Bekannte Fehlertypen und die Lösung
###########################################################
file /usr/share/man/man1/extract_a52.1.gz from install of a52dec-0.7.4-3.pm.0 conflicts with file from package a52dec-0.7.4-3.pm.0
beide Versionen haben die gleiche Versionnummer. Also entfernen wir dieses Paket einfach mal. Durch das Script myUpgrade wird es ja wieder eingefügt.
==> rpm -e --nodeps a52dec

freeglut-devel: Obsoletes: mesaglut-devel
Im Script myUpgrade einfügen mesglut-devel-, damit wird es während der Installation gelöscht.

kdelibs3: Hängt ab von: libaspell.so.15
aspell in myUpgrade einfügen

kdepim3: Hängt ab von: libbluetooth.so.1
Hängt ab von: libpisock.so.8
bluez-libs pilot-link in myUpgrade hinzufügen

at: PreDepends: /usr/sbin/useradd
PreDepends: /usr/sbin/groupadd
pwdutils in myUpgrade hinzufügen (neues Paket in 9.1)

pilot-link: Hängt ab von: perl-PDA-Pilot aber es wird nicht installiert werden
perl-PDA-Pilot in myUpgrade hinzufügen


###########################################################
LINKS und weitere Infos
###########################################################
http://linux01.gwdg.de/apt4rpm/upgrade-81to82.html
http://www.geocities.com/tanjakostic/linux/upgrade-82to90.html
http://laiskiainen.org/apt/tricks/


###########################################################
noch eine Bitte an alle, welche diese Anleitung ausprobieren:
###########################################################
FEEDBACK/KRITIK IST AUSDRÜCKLICH ERWÜNSCHT

nur so kann diese Anleitung vervollständigt/verbessert werden!
 
OP
oc2pus

oc2pus

Ultimate Guru
Anregungen, Fehlerkorrekturen, Verständnisfragen, etc bitte in diesem Thread posten:

[FRAGEN ZU] Upgrade einer SuSE Version 9.0 auf 9.1 mit apt
http://www.linux-club.de/viewtopic.php?t=24102
 
Status
Für weitere Antworten geschlossen.
Oben