Univention Bugzilla – Bug 21933
apt/mirror.list unvollständig wenn eine Komponente auf dem mirror server nicht vorhanden ist
Last modified: 2011-04-04 15:47:03 CEST
2.4-2 -> ucr set repository/online/component/ucd=enable -> more /etc/apt/mirror.list| grep ucd deb http://apt.univention.de/2.4/maintained/component/ ucd/all/ deb http://apt.univention.de/2.4/maintained/component/ ucd/i386/ deb http://apt.univention.de/2.3/maintained/component/ ucd/all/ deb http://apt.univention.de/2.3/maintained/component/ ucd/extern/ deb http://apt.univention.de/2.3/maintained/component/ ucd/i386/ # diese Komponente gibt es nicht -> ucr set repository/online/component/abc=enable In mirror.list sind nun zwar die Release und Security Updates, aber alle Komponenten fehlen, auch die, die es eigentlich gibt. -> more /etc/apt/mirror.list ... deb http://apt.univention.de/2.4/maintained/ sec2/i386/ # An error occurred during the repository check. The error message: # univention.updater.errors.ConfigurationError: Configuration error: # component not found # After fixing this issue, you should rewrite this file with the # following command: # univention-config-registry commit /etc/apt/mirror.list #
Das Problem an dieser Stelle ist, daß die Updater-Implementierung eine Fehlkonfiguration meldet: Eine aktivierte Komponente wurde nicht gefunden. Dies wird per Ausnahme gemeldet, damit z.B. bei direkten Aufruf von u-updater dem Benutzer diese Fehlkonfiguration direkt gemeldet werden kann. Ansonsten können solche Dinge passieren, daß z.B. wegen der Fehlkonfiguration überhaupt keine Updates gefunden werden können und dann behauptet wird, daß keine Updates verfügbar sind und daß das System aktuell sei. Die gleiche Funktion wird aber auch durch das "ucr commit /etc/apt/sources.list.d/20_ucs-online-component.list" bzw. "/etc/apt/mirror.list" aufgerufen, die dann statt der Liste der Repositories besagte Ausnahme liefert. Dort gibt es keine prominentere Möglichkeit, der Benutzer auf eine Fehlkonfiguration aufmerksam zu machen. Dadurch ist es dann schon zu anderen Fehlern gekommen, siehe dazu insbesondere Bug #21583. Ggf. ist folgendes hilfreich: --- univention-updater/modules/univention/updater/tools.py (Revision 23105) +++ univention-updater/modules/univention/updater/tools.py (Arbeitskopie) @@ -1213,7 +1213,12 @@ server = self._get_component_server(component) version = ','.join(map(str, versions)) uri = server.join('%s/component/%s/' % (version, component)) - raise ConfigurationError(uri, 'component not found') + msg = "component '%s' not found" % component + if for_mirror_list: + result.append('# ERROR: %s' % msg) + continue + else: + raise ConfigurationError(uri, 'component not found') result += repos return '\n'.join(result)
(In reply to comment #1) > Die gleiche Funktion wird aber auch durch das "ucr commit > /etc/apt/sources.list.d/20_ucs-online-component.list" bzw. > "/etc/apt/mirror.list" aufgerufen, die dann statt der Liste der Repositories > besagte Ausnahme liefert. Dort gibt es keine prominentere Möglichkeit, der > Benutzer auf eine Fehlkonfiguration aufmerksam zu machen. Dadurch ist es dann > schon zu anderen Fehlern gekommen, siehe dazu insbesondere Bug #21583. Das bedeutet mit 2.4-1 war das Ergebnis in der mirror.list noch anders? Wenn ja, dann sollten wir das zur 2.4-2 noch beheben.
(In reply to comment #2) > (In reply to comment #1) > > Die gleiche Funktion wird aber auch durch das "ucr commit > > /etc/apt/sources.list.d/20_ucs-online-component.list" bzw. > > "/etc/apt/mirror.list" aufgerufen, die dann statt der Liste der Repositories > > besagte Ausnahme liefert. Dort gibt es keine prominentere Möglichkeit, der > > Benutzer auf eine Fehlkonfiguration aufmerksam zu machen. Dadurch ist es dann > > schon zu anderen Fehlern gekommen, siehe dazu insbesondere Bug #21583. > > Das bedeutet mit 2.4-1 war das Ergebnis in der mirror.list noch anders? Wenn > ja, dann sollten wir das zur 2.4-2 noch beheben. Felix, kannst du das nochmal kurz testen?
(In reply to comment #2) > Das bedeutet mit 2.4-1 war das Ergebnis in der mirror.list noch anders? Ja: <= 2.4-1 wurden die funktionierenden Repository-Einträge und die Fehler als Kommentare generiert, mit 2.4-2devel nur noch eine Fehlermeldung für alle Komponenten, das eine kaputt ist. > Wenn ja, dann sollten wir das zur 2.4-2 noch beheben. Das wurde jetzt angepasst: univention.updater.UniventionUpdater().print_component_repositories() gibt jetzt wieder Repositories für alle noch funktionierende Komponenten und einen Kommentar mit einer Fehlermeldung für die fehlerhaft konfigurierten Komponenten aus. Ein direkter Aufruf von u-updater bringt weiterhin das Update ab und weist auf die Fehlkonfiguration hin. svn23140, univention-updater_6.0.80-1.780.201103231656 Kein ChangeLog-Eintrag notwendig, da der Fehler nur in 2.4-2devel auftrat.
repository/online/component/abc: enable repository/online/component/def: true repository/online/component/ucd: enable /etc/apt/mirror.list und /etc/apt/sources.list.d/20_ucs-online-component.list sehen gut aus. Jedoch wird das update selbst nicht abgebrochen. -> ucr set version/patchlevel="0" -> univention-updater net Das ist aber erstmal OK so, da man diese Funktionalität eigentlich mit version=current bekommt. /etc/apt/sources.list.d/20_ucs-online-component.list: ...repository.knut.univention.de/2.4/maintained/component/ ucd/all/ ...repository.knut.univention.de/2.4/maintained/component/ ucd/i386/ ...repository.knut.univention.de/2.3/maintained/component/ ucd/all/ ...repository.knut.univention.de/2.3/maintained/component/ ucd/extern/ ...repository.knut.univention.de/2.3/maintained/component/ ucd/i386/ # Configuration error: component not found: abc # Configuration error: component not found: def /etc/apt/mirror.list: ... deb http://apt.univention.de/2.4/maintained/component/ ucd/all/ deb http://apt.univention.de/2.4/maintained/component/ ucd/i386/ deb http://apt.univention.de/2.3/maintained/component/ ucd/all/ deb http://apt.univention.de/2.3/maintained/component/ ucd/extern/ deb http://apt.univention.de/2.3/maintained/component/ ucd/i386/ # Configuration error: component not found: abc # Configuration error: component not found: def
UCS 2.4-2 wurde veröffentlicht. Sollte der hier beschriebene Bug mit einer neueren Version von UCS erneut auftreten, so sollte der Bug dupliziert werden: "Clone This Bug".