Standards/NU Service

aus openSUSE, der freien Wissensdatenbank

Inhaltsverzeichnis

Novell Update Dienst (NU)

Einführung

Der Novell Update (NU) Dienst ist Teil des Zenworks Linux Management (ZLM) Client-Server-Protokolls. ZLM nutzt den Begrif 'Dienst/Service' um dem Client Funktionen anzubieten.
Einer dieser Dienste ist der Zugriff auf Paketdepots, die in der ZLM-Sprache 'Kataloge/Catalogs' genannt werden.
Basierend auf den vom Client bereitgestellten Informationen (standardmäßig das installierte Linux-Betriebssystem, aber der Client könnte noch zusätzliche Dienste anfordern/abboniert haben) antwortet der Server mit einer XML-enkodierten Index-Datei.
Diese Index-Datei listet Unterdepots vom Ryp RPM-MD auf.

Wenn Sie die URL des Dienstes haben, können Sie die Index-Datei finden, indem Sie der URL /repo/repoindex.xml anhängen

Beispiel

Wenn die URL https://nu.novell.com/ ist, dann ist die URL der Index-Datei https://nu.novell.com/repo/repoindex.xml

Das Format ist XML:

<?xml version="1.0" encoding="UTF-8"?>
<repoindex>
  <repo name="SLES10-SP2-Online" 
        alias="SLES10-SP2-Online" 
        description="SLES10-SP2-Online for sles-10-i586" 
        distro_target="sles-10-i586" path="$RCE/SLES10-SP2-Online/sles-10-i586" 
        priority="0" 
        pub="0" />
  <repo name="SLE10-SP2-Debuginfo-Updates" 
        alias="SLE10-SP2-Debuginfo-Updates" 
        description="SLE10-SP2-Debuginfo-Updates for sles-10-i586" 
        distro_target="sles-10-i586"
        path="$RCE/SLE10-SP2-Debuginfo-Updates/sles-10-i586" 
        priority="0" 
        pub="0" />
  <repo name="SLES10-SP2-Updates" 
        alias="SLES10-SP2-Updates" 
        description="SLES10-SP2-Updates for sles-10-i586" 
        distro_target="sles-10-i586" 
        path="$RCE/SLES10-SP2-Updates/sles-10-i586" 
        priority="0" 
        pub="0" />
</repoindex>

Jedes <repo>-Element definiert einen Katalog.

  • name -- der anzuzeigende Name
  • alias -- interner Name
  • description-- eine Beschreibung des Inhalts dieses Katalogs
  • distro_target -- gibt an, dass dieser Katalog für ein System gültig (mit ihm kompatibel) ist, das dass gleiche Betriebssystemziel hat. Kataloge, deren distro_target nicht zum Betriebssystem passt werden nicht genutzt und verworfen. Sie müssen auf dem System nicht erscheinen.
  • path -- relativer Pfad zum Katalog (unter /repo/) Bspw. path="$RCE/SLES10-SP2-Updates/sles-10-i586" ergibt als vollen Pfad https://nu.novell.com/repo/$RCE/SLES10-SP2-Updates/sles-10-i586
  • priority -- Die Priorität dieses Katalogs
  • pub -- ungenutzt

Authentifizierung und Autorisierung

Zum Abrufen der repoindex.xml-Datei braucht es Anmeldeinformationen. Der Server wird die repoindex.xml-Datei auf basis der Anmeldedaten erstellen.

Zu deviceid/secret: Ein NU-Dienst benötigt diese Dateien und nutzt den Inhalt als Benutzername/Passwort, um sich beim NU-Dienst (zum Abholen der repoindex.xml-Datei) und den Katalogen (zum Abholen der RPM-MD-Dateien) anzumelden. Dies muss im NU-Dienst implementiert sein. Für repoindex.xml müssen diese Anmeldedaten bei der ersten Anfrage mitgesendet werden. Wenn sie nicht übergeben werden erhalten Sie eine leere Liste zurück.

Anderes

Zwischen dem Auffrischen können dem Server neue Kataloge hinzugefügt oder vorhandene entfernt werden. Neue Kataloge erscheinen möglicherweise, alte werden automatisch verworfen. Dies hängt von der Server-Konfiguration für die übergebenen Anmeldedaten ab.

Kataloge können von der Client-Seite aus nicht gelöscht werden, der Cient kann nur komplette Dienste entfernen. Da der Dienst dem ZLM-Server (resp. NCC) gehört, wird er bei der nächsten Auffrischung dem Client den gleichen Satz von Katalogen ausgeben.

Ein NU-Dienst enthält Kataloge, kann aber keine anderen Dienste enthalten. (Keine rekursiven Quellen).