Localboot-Produkte: Automatische Softwareverteilung mit opsi

Als Localboot-Produkte werden alle Produkte bezeichnet, die nach einem lokalen Boot des Rechners über den opsi-client-agent installiert werden. Dies im Gegensatz zu den weiter unten beschriebenen Netboot Produkten Netboot Produkte.

opsi Standardprodukte

Die folgenden Localboot Produkte gehören zur Grundausstattung von opsi.

opsi-client-agent

Der opsi-client-agent ist der Clientagent von opsi und weiter oben ausführlich beschrieben: siehe Kapitel opsi-client-agent.

opsi-script

Das Produkt opsi-script ist ein Spezialfall. Es enthält den aktuellen opsi-script. Dieser muss zur Aktualisierung nicht auf setup gestellt werden. Vielmehr prüft ein Teil des opsi-client-agent bei jedem Start, ob auf dem Server eine andere Version des opsi-script verfügbar ist und holt sich diese im Zweifelsfall.

opsi-configed

opsi Graphical Management Interface als Applikation Für Windows und Linux. Siehe auch Kapitel: opsi-Management GUI: opsi-configed

jedit

Java basierter Editor mit Syntax Highlighting für opsi-script Scripte.

Hard- und Software-Inventarisierung mit hwaudit und swaudit

Die Produkte hwaudit und swaudit dienen der Hard- bzw. Software-Inventarisierung. Bei der Hardware-Inventarisierung werden die Daten über WMI erhoben und über den opsi-Webservice an den Server zurück gemeldet. Bei der Software-Inventarisierung werden die Daten aus der Registry (HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall) erhoben und über den opsi-Webservice an den Server zurück gemeldet.

opsi-template-with-userlogin

Template zur Erstellung eigener opsi-Scripts. Sie können das Template extrahieren mit

opsi-package-manager -x opsi-template-with-userlogin_<version>.opsi

oder auch dabei gleich umbenennen mit

opsi-package-manager -x opsi-template-with-userlogin_<version>.opsi --new-product-id myprod

Siehe auch opsi-script-manual Kapitel:
Installationen im Kontext eines lokalen Benutzers

shutdownwanted

Fährt den Rechner herunter, wenn keine weiteren Aktionen mehr gesetzt sind.

opsi-script-test

Große Sammlung von opsi-script Selbsttests. Diese kann als Beispielsammlung für funktionierende Aufrufe von opsi-script Befehlen verwendet werden.

opsi-wim-capture

Siehe auch Kapitel: opsi WIM Capture

opsi-winpe

Produkt zur einfachen Erzeugung eine opsi-winpe Siehe auch opsi-getting-started Manual, Kapitel 'Erstellen eines PE'.

opsi-uefi-netboot

Siehe auch Kapitel: opsi mit UEFI / GPT

opsi-setup-detector

Siehe auch Kapitel:
opsi-setup-detector

opsi-logviewer

Text viewer mit Filter nach Loglevel und Events.
Für Windows und Linux.

  • Das von uib erstellte Tool opsi-logviewer öffnet jetzt auch Dateien, die u.a. in den Archivformaten zip oder gzip komprimiert wurden. Damit können dann Logdateien, die platzsparend als Archiv zugeschickt werden, direkt betrachtet werden. (Enthält ein Archiv mehrere Dateien, werden die Inhalte aneinandergehängt.)

config-win10

Konfiguriert verschiedene Windows 10 Einstellungen wie z.B. Sperrbildschirm, Hibernationboot, Telemetrie und Update-Verhalten.

In der Version 4.0.7 kamen neue Deaktivierungsmöglichkeiten hinzu.

  • allow_useractivity_publishing Erlaubt es Benutzeraktivitäten an Microsoft zu senden.

  • change_power_plan Energieeinstellungen ändern.

  • config-updates erlaubt es die Quelle der Updates zu ändern. Die Updates werden dann entweder direkt von Microsoft Servern, einem lokalen Peer-To-Peer Netz oder einem Peer-To-Peer Netz aus dem Internet geladen. Die Option 'disable' ist derweil über ein eigenes Property namens 'disable_updates' ermöglicht.

  • defer_upgrade verschiebt Updates und Upgrades. Updates können um vier Wochen und Upgrades um acht Monate verschoben werden. Hierbei ist zu beachten, dass sicherheitsrelevante Updates trotz 'defer' Option installiert werden. Featureupdates hingegen werden nicht installiert.

  • deferfeatureupdatesperiodindays Gibt an wie viele Tage Feature Updates, also Windows System Updates, zurückgehalten werden sollen. Der Maximalwert liegt bei 365 Tagen.

  • deferqualityupdatesperiodindays Gibt an wie viele Tage Quality Updates, also gewöhnliche Windows Updates, zurückgehalten werden sollen. Der Maximalwert liegt bei 29 Tagen.

  • disable_advertising_id deaktiviert die sogenannte Advertising ID. Diese speichert Daten über den Browserverlauf um benutzerspezifische Werbung einzublenden.

  • disable_app_suggestion_in_startmenu deaktiviert vorgeschlagene Apps im Startmenü.

  • disable_automatic_logon_on_reboot: Deaktiviert einen atuomatischen Winlogon bei automatischem Neustart, sofern es 'true' gesetzt ist.

  • disable_cortana deaktiviert den Cortana Sprachassistenten. Dieser sammelt diverse Daten über Eingaben und überträgt diese Daten an Server von Microsoft.

  • disable_customer_experience deaktiviert das Sammeln von Daten im Bezug auf Daten zur Anwendungsverwendung.

  • disable_defender deaktiviert den mit Windows 10 mitgelieferten Antivirenschutz namens 'Defender'.

  • disable_dosvc deaktiviert den Dienst für die Übermittlungsoptimierung von Telemtriedaten.

  • disable_error_report deaktiviert die Übermittlung von Fehlern an Microsoft. Dies betrifft die Fehlerdaten von Drittanbieterapplikationen.

  • disable_fast_boot deaktiviert den Schnellstart und sorgt damit dafür, dass das Standard opsi-event gui_startup sauber funktioniert.

  • disable_font_streaming sorgt dafür, dass nicht auf dem System installierte Fonts über das Internet nachgeladen werden.

  • disable_handwriting_share Eine Besonderheit ist die Verwendung von Windows 10 auf Tablet-PCs. Hierbei werden Daten über Handschriften gesammelt und an einen Microsoft Server gesendet.

  • disable_location_sensors deaktiviert das Sammeln von Daten über die aktuelle Geoposition des Geräts.

  • disable_lock_screen Sperrbildschirm deaktivieren.

  • disable_mrt deaktiviert die Verwendung des 'Malware Removal Tool', kurz MRT. Dieser Dienst scannt in regelmäßigen Abständen vorhandene Dateien auf der Festplatte des Rechners und vergleicht diese mit einer Liste von potentiell gefährlicher Software.

  • disable_news_and_interest deaktiviert die Nachrichten und Interessen Einblendungen in der Taskleiste.

  • disable_onedrive_sync deaktiviert die OneDrive Dateisynchronisation.

  • disable_push_install deaktiviert die Möglichkeit Apps aus dem Microsoft Store auf diesem Gerät per push Installation zu installieren.

  • disable_recent_apps deaktiviert die Anzeige der zuletzt verwendeten Apps im Startmenü.

  • disable_sending_feedback ermöglicht es die Übertragung von Daten an Microsoft bei Fehlverhalten von Anwendungen zu beeinflussen.

  • disable_smbv1 deaktiviere Protokoll smbv1.

  • disable_suggested_silent_app_installion deaktiviert die stille Installation von vorgeschlagenen Apps und Spielen im Hintergrund ohne Benutzerinteraktion.

  • Mit disable_telemetry ist es möglich die Menge der gesammelten Daten zu limitieren. Standardmäßig werden sehr viele Daten übertragen. Wenn das Property auf 'true' gesetzt wird, wird Windows so eingestellt, das nur noch sicherheitsrelevante Daten übertragen werden. Dies ist die niedrigste Stufe. Diese Security Stufe kann nur in der Windows 10 Enterprise und LTSB Version eingestellt werden. In den anderen Versionen von Windows 10 wird die nächst niedrige Stufe angewendet, Basic.

  • disable_update_button kann den Update Knopf in den Updateeinstellungen ausgrauen und somit unbenutzbar machen. Es kann mitunter Stunden dauern bis der Knopf wieder benutzbar wird, falls die Option von true auf false gestellt wird.

  • disable_update_service deaktiviert den Windows Update Dienst und bietet somit eine weitere Möglichkeit Updates zu verhindern.

  • disable_updates kappt bei der Option 'true' die Verbindung zu Update Informationsquellen. Somit werden keine Updates gefunden per Updater. 'false' ermöglicht die Verbindung zu Updatequellen.

  • disable_wifi_sense ermöglich es den 'Wifi Sense' genannten Dienst zu deaktivieren. Dieser Dienst ermöglicht es, gespeicherte WLAN Konfigurationen mit Kontakten zu teilen.

  • flashplayer_autorun Es gibt in Verbindung von Windows 10 mit dem Adobe Flashplayer eine Sicherheitslücke. Es wird empfohlen das Autorun-Feature des Flashplayers zu deaktivieren. Mit 'false' wird der Flashplayer nicht mehr gestartet

  • hide_known_file_extensions deaktiviert die Darstellung von üblichen Dateiendungen, wie .txt.

  • local_wsus_available (Dieses Property greift nur wenn disable_updates auf 'true' gesetzt ist.) Falls 'true' gesetzt, ermöglicht es die Verbindung zu einem localen WSUS Server. Betrifft nur Windows Updates.

  • minimize_recommendations deaktiviert die verwendung von gespeicherten Daten um Vorschläge auf dem Lockscreen einzublenden.

  • no_new_app_install_notification Ermöglicht es, eine Benachrichtigung für neue Apps zu deaktivieren. Zum Deaktivieren der Benachrichtigung muss das Property den Wert 'true' haben.

  • online_search Bei jeder Suche über die integrierte Suchleiste in der Taskleiste werden auch Online-Ergebnisse geliefert. 'true' ermöglich eine solche online Suche, 'false' verweigert diese.

  • oobedisableprivacyexperience Betrifft nur Windows 10 1809 und neuer. Deaktiviert die OOBE DIsablePrivacyExperience, falls 'true' gesetzt.

  • remove_edge_from_desktop entfernt den Desktop Shortcut des alten Edge Browsers.

  • show_all_folder_in_navbar zeigt alle Ordner in der Navigationsleiste des Windows Explorers an.

  • show_drive_letter_first zeigt den Laufwerksbuchstaben als erstes in der Übersicht an.

  • show_this_pc_instead_of_quicklaunch öffnet dieser PC anstatt eines Schnellstart Fensters.

  • sync_settings Wenn man Windows 10 in Kombination mit einem Microsoft Account nutzt, ist es möglich seine Einstellungen mit dem aktuellen Microsoft Konto zu synchronisieren. Setzt man das property 'sync_settings' auf 'false' wird dies deaktiviert.

  • wlid_service steuert das Verhalten des Windows Live ID Dienstes.

[ProductProperty]
type: bool
name: disable_fast_boot
description: Disable Fastboot for proper opsi startup
default: True

[ProductProperty]
type: bool
name: disable_lock_screen
default: True

[ProductProperty]
type: bool
name: disable_telemetry
description: Disable telemetry data transmission
default: True

[ProductProperty]
type: bool
name: disable_cortana
description: Disable Cortana assistant
default: True

[ProductProperty]
type: bool
name: disable_customer_experience
description: Disable customer experience program
default: True

[ProductProperty]
type: bool
name: disable_mrt
description: Disable Malicious Software Removal Tool
default: True

[ProductProperty]
type: unicode
name: config_updates
multivalue: False
editable: False
description: Set Windows-Update behavior
values: ["AllowPeerToPeer", "LocalPeerToPeer", "MicrosoftOnly"]
default: ["MicrosoftOnly"]

[ProductProperty]
type: bool
name: disable_mac
description: Disable Microsoft Account communication
default: False

[ProductProperty]
type: bool
name: disable_advertising_id
description: Disable Microsoft Advertising ID
default: False

[ProductProperty]
type: bool
name: disable_updates
description: Disable Windows Updates
default: False

[ProductProperty]
type: bool
name: disable_defender
description: Disable Microsoft Windows Defender
default: False

[ProductProperty]
type: bool
name: disable_wifi_sense
description: Disable Wi-Fi Sense
default: False

[ProductProperty]
type: bool
name: disable_sending_feedback
description: Disable sending feedback and diagnostics
default: False

[ProductProperty]
type: bool
name: disable_font_streaming
description: Disable font streaming of not installed fonts
default: False

[ProductProperty]
type: bool
name: defer_upgrade
description: Defer Windows 10 Upgrade
default: True

[ProductProperty]
type: bool
name: flashplayer_autorun
description: Adobe Flashplayer: allow autorun?
default: False

[ProductProperty]
type: bool
name: location_sensors
description: Disable location and sensor detection
default: True

[ProductProperty]
type: bool
name: online_search
description: Disable online search during file or command search
default: True

[ProductProperty]
type: bool
name: disable_handwrite_sharing
description: Tablet-PC: Disable sharing of handriting information
default: True

[ProductProperty]
type: bool
name: sync_settings
description: Sync settings with AccountID
default: False

config-winbase

Paket zum Customizing der Grundeinstellungen von Oberfläche, Explorer usw..

opsi-auto-update

opsi-auto-update ist ein Produkt, um die Pflege der Clients zu vereinfachen.

opsi-auto-update ist nicht geeignet für Clients mit der WAN-Erweiterung.

Im Kern ist es die Aufgabe des Produktes, dafür zu sorgen, die installierten Produkte aktuell zu halten.
Das Produkt setzt alle installierten Produkte, deren Version nicht identisch mit der auf dem Server ist, für den Client auf setup.

Properties zur Behandlung von Ausnahmen:

  • name: products_to_exclude

    • description: (Deneylist) Which opsi product(s) should be excluded from update ?
      Liste von Produkten, die nicht installiert werden sollten auch wenn es ein Update gibt (wie z.B. windomain)

  • name: products_to_exclude_by_regex

    • description: (Deneylist) Which opsi product(s) should be excluded from update (by regular expressions)?
      Liste von regular expressions, die auf Produkte passen, welche nicht installiert werden sollten auch wenn es ein Update gibt (wie z.B. windomain)

  • name: products_to_include

    • description: (Allowlist) Which opsi product(s) should be checked for update ? ; If empty = all products
      Hier kann man eine Liste von Produkten angeben, auf die die Updateprüfung beschränkt werden soll. Produkte, welche nicht in dieser Liste sind, werden auch nicht bei der Prüfung auf Updates berücksichtigt. Ausnahme: Wenn die Liste leer ist, wird gegen alle Produkte geprüft.

Properties zur Behandlung von Ergänzungen:

  • name: products_to_run_always

    • description: Which opsi product(s) should be installed via every update ? (List will not be cleared after run)
      Liste von Produkten, welche bei jedem Lauf von opsi-auto-update auf setup gestellt werden.

  • name: setup_after_install

    • description: Which opsi product(s) should we switch to setup after update is done ?
      Liste von Produkten, welche nach jedem Lauf von opsi-auto-update auf setup gestellt werden. (z.B. shutdownwanted)

  • name: failed_products_to_setup

    • description: if true this also sets all failed products to setup on all clients
      Wenn auf True, werden alle Produkte, die auf failed stehen, erneut auf setup gesetzt.

Properties zur Ablaufsteuerung:

  • name: shutdown_on_finish

    • description: if true we have a final shutdown if false we have no reboot / shutdown default: False
      Soll nach Abschluß des Produktes heruntergefahren werden ?

Special Properties für local-image / vhd-reset:
siehe auch: opsi vhd reset
siehe auch: opsi local image

  • name: do_cleanup

    • description: If false: skip restore before update
      Diese Property wird ignoriert, wenn es sich nicht um eine vhd oder local.image Installation handelt.
      Bei einer vhd Installation wird bei do_cleanup=true vor den Updates opsi-vhd-control aufgerufen und dadurch werden alle Änderungen verworfen und der gespeicherte Zustand wieder hergestellt.
      Bei einer local-image Installation wird bei do_cleanup=true vor den Updates opsi-local-image-restore aufgerufen und dadurch werden alle Änderungen verworfen und der gespeicherte Zustand wieder hergestellt.
      In beiden Fällen werden dabei auch die Informationen über Actionrequests verworfen. Um trotzdem während eines Laufs von opsi-auto-update Produkte hinzuzufügen oder entfernen zu können, gibt es die folgenden beiden Properties.

  • name: products_to_install

    • description: Which opsi product(s) should be installed via update ? (List will be cleared after run)
      Liste von Produkten, welche beim Lauf von opsi-auto-update auf setup gestellt werden. Wenn die Produkte erfolgreich abgearbeitet wurden, werden sie aus dieser Liste gelöscht.

  • name: products_to_uninstall

    • description: Which opsi product(s) should be uninstalled via update ? (List will be cleared after run)
      Liste von Produkten, welche beim Lauf von opsi-auto-update auf uninstall gestellt werden. Wenn die Produkte erfolgreich abgearbeitet wurden, werden sie aus dieser Liste gelöscht.

  • name: do_merge

    • description: If false: skip backup after update
      Diese Property wird ignoriert, wenn es sich nicht um eine vhd oder local.image Installation handelt.
      Bei einer vhd Installation wird bei do_cleanup=true nach den Updates opsi-vhd-control mit upgrade=true aufgerufen und dadurch werden alle Änderungen gespeichert.
      Bei einer local-image Installation wird bei do_cleanup=true nach den Updates opsi-local-image-backup aufgerufen und dadurch werden alle Änderungen gespeichert.

Properties zu Debug-Zwecken (Finger weg):

  • name: disabled
    Diese Property dient zu Debug-Zwecken.
    Wenn 'true', dann führt das Produkt keine Aktionen aus.
    Default = 'false'

  • name: rebootflag
    Bitte während des Laufes nicht ändern. Sollte vor dem Start '0' sein.

  • name: stop_after_step
    Diese Property dient zu Debug-Zwecken.
    Wenn nicht '0', dann Anzahl der Reboots, nach denen gestoppt wird. Default = '0'

Das Produkt opsi-auto-update hat eine sehr niedrige Priorität (-97), welche noch geringer ist als die von opsi-vhd-control.

Das opsi-Produkt opsi-auto-update kann gut mit einem cron-job, der das opsi-wakeup-clients ausführt, kombiniert werden.
(opsi-wakeup-clients ist Bestandteil des opsi-utils Pakets)
Zur Dokumentation siehe hier: opsi-auto-update

opsi-win-driver-update

opsi-win-driver-update ist nicht geeignet für Clients mit der WAN-Erweiterung.

opsi-win-driver-update ist ein opsi Produkt um existierende Windows Installationen mit aktualisierten Treibern zu versorgen.

Neue Treiber werden dabei üblicherweise zunächst in das Treiberrepository für die Betriebssysteminstallation integriert.

Wie das im einzelnen geschieht ist beschrieben im Windows-Client-Handbuch Kapitel:
Treiber die über die Felder <vendor>/<model> der Inventarisierung automatisch den Rechnern zu geordnet werden.

und im opsi-Handuch Kapitel:
Automatisierte Treiberintegration

Per default versucht das Produkt das netbootproduct zu ermitteln von dem das laufende Betriebssystem installiert wurde. Von diesem netboot Produkt wird das 'byAudit' Treiber Repository als Quelle für die Treiber verwendet.
Das Script versucht das verwendete netbootprodukt selbst zu erkennen, es kann aber auch über das Property netbootproduct explizit angegeben werden.
Über das Property diver_path kann aber auch ein komplett anderes Treiberrepository angegeben werden. Dieses wird dann aber nicht nach <vendor>/<model> gefilter, sonder komplett verwendet.

Die Properties:

  • name: driver_path
    description: Path to the driver directory.
    'auto'= from netboot product driver repo
    default=auto

  • name: netbootproduct
    description: name of the netboot product (where we can find the driver in driver_path auto mode).
    'auto'= try to detect the used netboot product
    default=auto

  • name: force_import_cert_from_sys
    description: if true, installation of not correct signed drivers will be possible by extracting the certs from the .sys file and import them to the cert store
    default=false

  • name: force_reinstallation
    description: if true, we try to install the driver even if it seems to be installed in the repo version
    default=false

Die gefundenen Treiberverzeichnisse werden wie folgt gefiltert: Alle Verzeichnisse welche eins der folgenden Muster enthalten werden verworfen:
autorun.inf, WINXP, XP, WIN200, WIN2K, VISTA, WINPE
Auf einem 64 Bit System werden alle Verzeichnisse welche eins der folgenden Muster enthalten werden verworfen:
32, x86, DrvBin32 ,WIN32, IA32, IA-32
Auf einem 32 Bit System werden alle Verzeichnisse welche eins der folgenden Muster enthalten werden verworfen:
64, x64 , DrvBin64, WIN64, x86-64, amd64

Beeinflussung der Installationsreihenfolge durch Prioritäten und Produktabhängigkeiten

Seit opsi 4.0 wird die Installationsreihenfolge vom opsi-Server unter Berücksichtigung von Produktabhängigkeiten und Produktprioritäten berechnet.

  • Produktabhängigkeiten
    definieren Abhängigkeiten und notwendige Installationsreihenfolgen zwischen Produkt-Paketen. Typisches Beispiel ist die Abhängigkeit von Java Programmen von der Java Laufzeitumgebung (javavm).

  • Produktprioritäten
    dienen dazu, bestimmte Pakete in der Installationsreihenfolge nach vorne oder nach hinten zu schieben. So ist es z.B. sinnvoll Servicepacks und Patches an den Anfang einer Installation zu legen und eine Softwareinventarisierung an das Ende.
    Produktprioritäten sind Zahlen zwischen 100 und -100 (0 ist default)

Wie diese beiden Faktoren gegeneinander gewichtet werden sollen, kann unterschiedlich gesehen werden. Daher stellt opsi zwei Algorithmen zur Verfügung.

Die Umstellung zwischen diesen Algorithmen erfolgt entweder:

im 'opsi-configed' in der Server-Konfiguration

configed serverconfiguration
Abbildung 1. 'opsi-configed': Serverkonfiguration

oder auf der Kommandozeile mit folgendem Befehl:

opsi-setup --edit-config-defaults
opsi setup product sort algorithm
Abbildung 2. Wählen des Sortieralgorithmus: Teil 1
opsi setup product sort algorithm2
Abbildung 3. Wählen des Sortieralgorithmus: Teil 2

Algorithm1: Produktabhängigkeit vor Priorität (Default)

Bei diesem Algorithmus werden zunächst die Produkte anhand Ihrer Prioritäten sortiert und dann aufgrund der Produktabhängigkeiten nochmals umsortiert. Hierdurch kann natürlich ein Produkt mit sehr niedriger Priorität weit nach vorne geschoben werden, weil es von einem anderen Produkt als 'required before' benötigt wird. Auf der anderen Seite wird vermieden, dass es zu Installationsproblemen aufgrund nicht aufgelöster Produktabhängigkeiten kommt.
Der Algorithmus 1 sorgt dafür, dass die Installationsreihenfolge konstant ist, unabhängig davon wieviele Produkte auf setup stehen. Diese Reihenfolge entspricht der Reihenfolge, welche im configed angezeigt wird, wenn die Produkte nach der Spalte Position sortiert werden.
Damit ist gesichert, dass bei einer mit "ExitWindows /immediateReboot" nur unterbrochenen Abarbeitung eines setup-Skripts nach dem Reboot direkt die Bearbeitung des unterbrochenen Skripts weitergeführt wird.

Algorithm2: Produktpriorität vor Abhängigkeit

Dieser Algorithmus geht von dem Gedanken aus, dass es in der Praxis im wesentlichen drei Prioritätsklassen gibt:

  • Produkte, welche am Anfang installiert werden sollen wie z.B. OS-Patches und Treiber, durch die der PC in seinen Standard-Zustand gebracht wird. Wird realisiert durch Zuweisen einer hohen Priorität (maximal +100).

  • "Normale" Produkte, die Anwendungen installieren (Default-Priorität 0).

  • Produkte, die möglichst am Ende eingespielt werden sollen wie z.B. Softwareinventariserung. Realisiert durch Zuweisen einer niedrigen Priorität (niedrigste mögliche -100).

Die Auflösung der Produktabhängigkeiten erfolgt nur innerhalb einer Prioritätsklasse. Hierdurch ist sichergestellt, dass Produkte mit einer hohen Priorität auch tatsächlich am Anfang installiert werden. Prioritätsklassen übergreifende Produktabhängigkeiten werden nicht berücksichtigt bzw. führen zu einer Warnung. Daher ist beim Packen zu beachten, dass Produktabhängigkeiten nur innerhalb einer Prioritätsklasse definiert werden.

Die Produktabhängigkeiten werden hier so interpretiert, dass sie bei "normalen" Produkten automatisch zu einer konsistenten, alle Abhängigkeiten berücksichtigenden Reihenfolge führen. Wurden widersprüchliche (zirkuläre) Abhängigkeiten definiert, wird ein Fehler angezeigt.

Bei den für die PC-Einrichtung grundlegenden Produkten mit hohen Prioritäten wird dagegen der Administrator – ähnlich wie etwa bei Unix-Startskripten – die genaue Reihenfolge von Hand festlegen, indem er pro Produkt entsprechend der gewünschten Reihenfolge je eine spezifische Priorität zwischen +100 und +1 setzt. Ähnliches gilt für die finalen Produkte mit niedrigen Prioritäten.

Erstellung von Prioritäten und Produktabhängigkeiten

Prioritäten und Produktabhängigkeiten gehören zu den Meta-Daten eines opsi-Produktes. Diese werden bei der Erstellung eines Produktes mit dem Befehl opsi-newprod abgefragt.

Diese Metadaten werden im control file des Produktes abgelegt und können dort editiert werden. Nach einer Veränderung im control file muss das Produkt neu gepackt und installiert werden.

Siehe hierzu auch das Kapitel Erstellen eines opsi-Product-Paketes im opsi-getting-started Handbuch.

Einbindung eigener Software in die Softwareverteilung von opsi

Die Anleitung zur Einbindung eigener Software finden Sie im Handbuch opsi-getting-started.