Dependencies?

05/12/2011 - 17:17 von Dieter Britz | Report spam
Ich fragte mal in einem Forum über Open Suse wegen 12.1, und jemand schrieb,
dass ich es "einfach" ins repository schreiben kann, um von 11.4 auf 12.1
zu gehen - aber dass das Probleme mit dependencies geben könnte. Was sind
das, dependencies?
Dieter Britz (dieterhansbritz<at>gmail.com)
 

Lesen sie die antworten

#1 Olaf Meltzer
05/12/2011 - 17:15 | Warnen spam
* Dieter Britz schrieb:

Ich fragte mal in einem Forum über Open Suse wegen 12.1, und jemand
schrieb, dass ich es "einfach" ins repository schreiben kann, um von
11.4 auf 12.1 zu gehen - aber dass das Probleme mit dependencies
geben könnte. Was sind das, dependencies?



Dependecies leitet sich ab von dependent = abhàngig.

Wenn ein Paket A noch die Pakete B und C erfordert, sind B und C
Dependencies von A. Das korrekte Funktionieren von A hàngt von der
Installation der Pakete B und C ab. Solche Abhàngigkeiten
berücksichtigt ein Paketmanager wie Yast automatisch und fordert ggf.
die in der Auswahl zur Installation noch fehlenden Pakete selbstàndig
an.

Solche Paket-Abhàngigkeiten bleiben nicht zwingend bei einem
Distributions-Upgrade bestehen, und es können auch neue dazukommen.
Deshalb kann es Konflikte provozieren, wenn Du versuchst von 11.4 auf
12.1 nur dadurch zu gelangen, daß Du in Deiner Repo-Liste einfach die
11.4 in den Pfaden durch 12.1 ersetzt und dann forderst, nun alles,
was in neuerer Form angeboten wird, zu ersetzen. Das klappt
weitgehend, aber (1) gibt es nicht immer alle Repos schon für die
neuere Distribution, und (2) unterscheidet sich der benötigte Pfad zum
neuen Repo nicht unbedingt nur durch die geànderte Nummer.

Wenn Du auf die beschriebene Weise upgradest, kann Yast auch nicht
100%ig sicher alle Konfigurations-Dateien in der benötigten Form
selbst anlegen. Bei einigen ist er aber sehr sicher: Das sind
Konfigurations-Dateien, die Du bisher nicht selbst geàndert hattest.
Die werden einfach durch neue, passende ersetzt.

Einige Konfigurationen hast Du aber bestimmt selbst eingerichtet bzw.
geàndert. Wenn Yast so etwas findet, sich aber trotz Deiner Änderung
ziemlich sicher ist, daß er Deine Änderung in die neue Form der
Konfigurations-Datei einbauen kann, macht er das, behàlt aber zur
Sicherheit die alte Datei als *.rpmold.

Andererseits kann es auch vorkommen, daß Yast zwar erkennt, daß Du an
der ursprünglichen Konfiguration "herumgepfuscht" hast, Deine
Änderungen aber vorsichtshalber nicht selbst einpflegen mag. Dann
behàlt er Deine Datei, legt aber eine *.rpmnew dazu, die u.U. zwar
funktionieren würde, aber Deine speziellen Wünsche noch nicht
berücksichtigt.

FAZIT: Nach so einem Upgrade befinden sich bestimmt einige *.rpmnew
und *rpmold in Deinem System. Deine Aufgabe ist es dann, falls etwas
mit der neuen Distribution nicht sofort in der Weise funktioniert, wie
Du es erwartest, nach diesen Dateien zu suchen und Deine Anpassungen
von Hand zu übertragen.

Das hört sich schlimmer an, als es ist.

Allerdings bin ich etwas anders vorgegangen und habe das Upgrade via
Netinstaller durchgezogen. Dabei habe ich im geeigneten Moment sofort
die neuen Repos eingetragen und aktiviert. Soweit sie damals
tatsàchlich schon existierten, wurden sie auch sofort in die
Installation einbezogen.

Gruß -- Olaf Meltzer

openSUSE 12.1 (i586) mit Kernel 3.1.0-1.2-desktop
KDE: 4.7.2 (4.7.2) "release 5"

Ähnliche fragen