UPDATENOW
DriverUpdater
Autor: Frank Dethlefsen
Datum: 28.03.2020
Version: 2.0.3.6
Matrix42 und Empirum sind registrierte Markennamen der Matrix42 AG.
Funktionsbeschreibung
Das Tool DriverUpdater von upDateNow ist ein Zusatz für das winpe-basierende Treibermanagement von Matrix42 Empirum.
Treiber/Systemsoftware- und BIOS/Firmware-Updates vom Computerhersteller können mit einem ausgeklügelten hardwareunabhängigen Softwarepaket „upDateNow DriverUpdater 1.0“ über den Empirum Agenten kontrolliert installiert und auch im Nachhinein aktualisiert werden. Das Softwarepaket greift dabei auf dieselben Treiber-Packs zurück, die auch vom PreOS-Paket „DriverIntegration“ verwendet werden. Um Datenverlust und Fehler zu vermeiden, wird die Installation der Updates ausschließlich nur vor Benutzeranmeldung und nur im Netzstrombetrieb durchgeführt. Der Benutzer wird am Anmeldebildschirm währenddessen mit einem Geräteaktualisierungsmodus-Hinweisdialog informiert. Eine Benutzeranmeldung wird verhindert, weil der Dialog die Benutzername- und Passworteingabe solange verdeckt.
OEM-PnP-Treiber (also alle Treiber, die nicht von Microsoft sind) können komfortabel mit einem Treibersicherungsprogramm OEMDriver2Pack.exe zu einem Treiber-Pack exportiert werden. Die Treiber-Pack-Ordnerstruktur wird dabei in verständlichen Treiberklassen und Treibernamen aufbereitet.
Setup
Melden Sie sich auf dem Haupt-EmpirumServer per Remotedesktop administrativ an und führen die „upDateNow DriverUpdater 2020.exe“ aus (*1 siehe Anmerkungen unten). Es erscheint ein Bestätigungsdialog, ob die Installation durchgeführt werden soll. Wählen Sie „continue“ für fortsetzen aus.
Es wurde im Empirum-Hauptverzeichnis der Ordner \Empirum\upDateNow\DriverUpdater erstellt, in dem sich nun folgende Dateien befinden:
DriverUpdater.htm : Anleitung, die über den Link aus dem Startmenü\Programme\upDateNow\DriverUpdater\DriverUpdater-Tutorial aufgerufen werden kann.
OEMDriver2Pack.exe : Treibersicherungsprogramm für die installierten OEM-PnP-Treiber
DriverUpdater.sql : SQL-Skript zum Anlegen des Softwarepaketes „upDateNow DriverUpdater 1.0“ im Depot.
Des Weiteren wurde das Softwarepaket „upDateNow DriverUpdater 1.0“ unterhalb von \Empirum\Configurator\Packages\upDateNow\DriverUpdater\1.0 kopiert.
Starten Sie das Matrix42 DBUtil (Desktoplink) und melden sich an die Standortdatenbank an. Gehen Sie in das Menu Aktionen > SQL-Skripts ausführen > Standort und wählen Sie das SQL-Skript \Empirum\upDateNow\DriverUpdater\DriverUpdater.sql aus. Das SQL-Skript hat Ihnen nun das Softwarepaket in das Depot unter der Registerkarte upDateNow Tools > upDateNow DriverUpdater 1.0 eingefügt. Falls das Softwarepaket nicht sichtbar ist, aktualisieren Sie die Ansicht in der Matrix42 Management Console mit F8.
Schritt für Schritt Anleitung für die Erstellung eines Treiber-Setup-Packs
1. Falls Sie vom Computerhersteller ein vorinstalliertes Windows Betriebssystem geliefert bekommen, das mit Ihrer Wahl der Windows Betriebssystemversion, -build und -architektur übereinstimmt, können Sie Punkt 1. überspringen. Wenn nicht, installieren Sie auf die einzubindende Computerhardware die Windowsbetriebssystemversion, -build und -architektur Ihrer Wahl mit Empirum. Die Installation könnte wegen fehlender Treiber unvollständig sein. Vervollständigen Sie die fehlenden Treiber manuell über den Geräte-Manager bzw. mit der Installation der Treibersetups, die vom Computerhersteller zu Verfügung gestellt werden. Diese finden Sie in der Regel auf der Computerhersteller-Internetseite. Von den größeren Computerherstellern gibt es auch spezielle Updatetools, die Ihnen den Download und die Installation der Treibersetups erleichtern. Hier eine Liste der Updatetools der großen Computerhersteller:
HP SoftPaq Download Manager
Lenovo System Updates
Dell System Software Utility
Fujitsu DeskUpdate
Empfehlung: Installieren Sie nur die notwendigen Treiber und Systemsoftware. In der Regel heißt das, den Windows Geräte-Manager saubermachen und bei Notebooks noch ein paar notwendige Anwendungen installieren. Nutzen Sie wenn möglich, die windowseigenen Funktionen anstatt spezieller Anwendungen vom Computerhersteller.
2. Kopieren Sie das Programm \\<Haupt-EmpirumServer>\Empirum$\upDateNow\DriverUpdater\OEMDriver2Pack.exe auf den Benutzer-Desktop von einem Computer, dessen Treiber Sie sichern wollen. Starten Sie das Programm als Administrator. Es exportiert alle OEM-PnP-Treiber in einen Ordner auf dem Benutzer-Desktop: C:\Users\<Username>\Desktop\<WindowsVersion>_<Hersteller>_<Modell>
Folgende Verzeichnisse und Dateien werden unterhalb bereitgestellt:
\Driver : Hauptordner für die exportierten OEM-PnP-Treiber
\<Treiberklasse> : Ordner für die Treiberklasse
\<Treiberbezeichnung> : Ordner mit der Treiberbezeichnung
\Setup : Hauptordner für die Systemsoftwaresetups
\Setup.ini-Pad.exe : Programm für die Bearbeitung der Setup.ini
\Setup.ini : Konfigurationsdatei für die Systemsoftwaresetups
\OEMDriver2Pack.log : Logdatei von der OEMDriver2Pack.exe
\Import.json : Importdatei für den Matrix42 WinPEDriverAssistant
\Revision.ini : Konfigurationsdatei für die Freigabe von Treiber- und Setup-Updates
3. Unter gewissen Umständen wurden auch Treiber exportiert, die keinen festen Bezug zu der Computerhardware haben, wie z.B. Peripheriegeräte und systemnahe Anwendungen. Durchsuchen Sie die \Driver\<Treiberklassen>-Ordner nach Unterordnern mit Treiberbezeichnungen, die darauf Rückschluss geben und löschen Sie diese.
4. Wenn nötig, hinterlegen Sie die Systemsoftwaresetups wie folgt:
Erstellen Sie jedes Setup unterhalb des Hauptordners \Setup einen eigenen aussagekräftigen Ordner und kopieren Sie die Installationsdateiquellen jeweils in diesen Ordner.
Beispiele:
\Setup\BIOS\Update.exe
\Setup\HDDProtect\HDDProtect.msi
Starten Sie das Oberflächenprogramm \Setup\Setup.ini-Pad.exe für die Integration der Systemsoftwaresetups in die \Setup\Setup.ini.
Alternativ können Sie die Systemsoftwaresetups wie folgt manuell hinterlegen:
Für jedes Systemsoftwaresetup müssen in der \Setup\Setup.ini die Setupinformationen: NAME, FILE, CMDS und ggf. optional REBOOT und SUCCESSCODE hinterlegt werden.
In der Setup.ini sind leere [SETUP-1] bis [SETUP-99] Sektionen vordefiniert. Tragen Sie die Setupinformationen für das erste Systemsoftwaresetup in die Sektion [SETUP-1] und das zweite in [SETUP-2] usw. ein.
NAME = Definieren Sie einen aussagekräftigen Setupnamen. Die Angabe ist erforderlich.
FILE = Definieren Sie den Dateipfad-Suffix für das Setupprogramm bzw. für die MSI-Datei. Der Pfad des Hauptordners für die Systemsoftwaresetups (%Src%\Setup\) wird zum Ausführungszeitpunkt automatisch vorangestellt. Die Angabe ist erforderlich.
Beispiele:
FILE=BIOS\Update.exe
FILE=HDDProtect\HDDProtect.msi
Hinweis: Hinterlegen Sie den Dateipfad-Suffix ohne Hochkommata.
CMDS = Definieren Sie die Kommandozeilenoptionen für eine unbeaufsichtigte (silent) Installation. Setzen Sie zusätzlich immer auch die Optionen, die verhindern, dass ein Neustart initiiert wird und die dafür sorgen, dass das Setup bis zum Installationsende wartet. Die Angabe ist erforderlich.
Beispiele von Kommandozeilenoptionen von bekannten Setup-Methoden:
MSI (Microsoft Installer): CMDS=/norestart /quiet
Installshield (alt): CMDS=/s /sms
Installshield (neu): CMDS=/s /v"/norestart /quiet"
NullSoft: CMDS=/s
InnoSetup: CMDS=/verysilent /norestart
REBOOT = Setzen Sie den Wert auf 1, wenn das Setup einen exklusiven Neustart erfordert, bevor folgende Setups installiert werden können. Falls das Setup selbst noch einmal anlaufen muss, kopieren Sie die Setupinformation und fügen diese in der nächsten [Setup-(n+1)] Sektion hinzu. BIOS/Firmware-Updates benötigen in der Regel immer einen exklusiven Neustart. Die Angabe ist optional.
SUCCESSCODE = Definieren Sie einen speziellen Rückgabecode für ein erfolgreiches Setup, wenn der Rückgabecode abweichend vom Standard 0, 1641 oder 3010 ist. Die Angabe ist optional.
Beispiele:
[SETUP-1]
NAME=BIOS Update
FILE=BIOS\Update.exe
CMDS=/s
REBOOT=1
[SETUP-2]
NAME=Harddisk Protection Software
FILE=HDDProtect\HDDProtect.msi
CMDS=/norestart /quiet
SUCCESSCODE=259
5. Kopieren Sie den Ordner vom Treiber-Setup-Pack vom Benutzer-Desktop C:\Users\<Username>\Desktop\<WindowsVersion>_<Hersteller>_<Modell> nach \\<Haupt-EmpirumServer>\Configurator$\Packages\Matrix42\OSPackages\Drivers\
6. Starten Sie eine Remotedesktop-Sitzung auf dem Haupt-EmpirumServer.
Gehen Sie mit dem Windows Explorer auf den Ordner des Treiber-Setup-Packs unterhalb \Empirum\Configurator\Packages\Matrix42\OsPackages\Drivers.
Optional: Falls Sie das Treiber-Setup-Pack als Cab-Datei komprimieren möchten, gehen Sie auf den Ordner vom Treiber-Setup-Pack mit der rechten Maustaste und wählen aus dem Kontextmenu „Als Cabinet speichern“ aus. Warten Sie bis die Cab-Datei erstellt wurde.
Nehmen Sie nun den Ordnernamen bzw. den Cab-Dateinamen mit Dateiendung vom Treiber-Setup-Pack in die Zwischenablage für die spätere Verwendung.
7. Führen Sie das Programm \Empirum\Addons\WinPEDriverAssistant\Matrix42WinPEDriverAssistant.exe als Administrator aus. Betätigen Sie links unten die Schaltfläche „Import“. Wechsel Sie in den Ordner vom Treiber-Setup-Pack \Empirum\Configurator\Packages\Matrix42\OsPackages\Drivers\<WindowsVersion>_<Hersteller>_<Modell> und wählen dort die Datei Import.json aus. Fügen Sie nun in dem besprechendem Betriebssystemfeld vom gerade importierten Modell den Ordnernamen bzw. den Cab-Dateinamen des Treiber-Setup-Packs aus der Zwischenablage ein und speichern rechts unten mit „Save“ ab.
Falls Sie das Treiber-Setup-Pack als Cab-Datei komprimiert haben, können Sie den Ordner vom Treiber-Setup-Pack löschen.
Funktionsweise des Softwarepaketes „upDateNow DriverUpdater 1.0“
Erstinstallationsfall
Bei der Erstinstallation, also in der Regel direkt nach der Betriebssysteminstallation oder beim Erstrollout auf schon bestehenden Computern, werden grundsätzlich keine OEM-PnP-Treiber aktualisiert. Falls Systemsoftwaresetups (Treibersoftware-, BIOS- oder Firmware-Updates) bereitgestellt wurden, werden diese bei der Erstinstallation immer abgearbeitet.
Reinstallationsfall
Bei jeglicher folgender Reinstallation wird die Treiber- und Setup-Revision mit der vorherigen lokalen Treiber- und Setup-Revision vom letzten Update verglichen. Ist sie höher, werden sämtliche OEM-PnP-Treiber- bzw. Systemsoftware-Updates installiert. Diese Vorgehensweise erfordert, dass Ihre hinterlegten Systemsoftwaresetups reinstallationsfähig sind. Falls nicht, müssen Sie ein Skript bauen und als Aufruf (FILE in der Setup.ini) hinterlegen, dass die Reinstallation des Systemsoftwaresetups entsprechend kontrolliert.
Freigabe von neuen Treiber-Setup-Packs via Revisionserhöhung in der Revision.ini
Die Revision.ini wird bei der Erstellung via OEMDriver2Pack.exe unterhalb des Treiber-Setup-Pack Hauptordners erstellt und enthält eine Revision für die OEM-PnP-Treiber (Driver) und eine für die Systemsoftwaresetups (Setup).
Die erzeugte Revisionsnummer hat das Format [letzten 2 Stellen vom Jahr][Monat][Tag][Stunde][Minute] z.B.:
[Revision]
Driver=2003231352
Setup=2003231352
Falls Sie OEM-PnP-Treiber- bzw. Systemsoftware-Updates in einem Treiber-Setup-Pack im Nachhinein hinterlegt, ausgetauscht oder angepasst haben, können Sie die jeweilige Revision manuell erhöhen, wenn eine Aktualisierung auf dem Computer gewünscht ist.
Um ein Treiber-Pack von einem Computerhersteller updatefähig zu machen, müssen Sie eine gültige Revision.ini in das Treiber-Pack integrieren. Das heißt auspacken, gültige Revision.ini hinterlegen und wieder komprimieren.
Wenn keine gültige Revision.ini in einem Treiber-Pack existiert, wird es nie auf dem Computer vom Softwarepaket installiert bzw. aktualisiert. Das heißt, alle Treiber-Packs, die Sie vor Einführung des Tools DriverUpdater hinterlegt haben, werden wie bisher nur vom PreOS-Paket „DriverIntegration“ verarbeitet.
Verwendung des Softwarepaketes „upDateNow DriverUpdater 1.0“
Erfahrungen zeigen, dass Kunden eine differenzierte Herangehensweise an das Thema Treiber/Systemsoftware- und BIOS/Firmware-Updates haben. Insofern wird die Anwendung des Softwarepaketes unterschiedlich gehandhabt.
Das Softwarepaket kann der Standard-Client-Rolle zu gewiesen und durch eine Revisionserhöhung oder eine Verteilungsoption mit einem wiederkehrenden Zeitplan von Zeit zu Zeit auf den Clients reinstalliert werden. Clients, bei denen Updates anstehen, wenden diese an. Clients, bei denen keine Updates anstehen, registrieren nur das Softwarepaket als installiert.
Eine weitere Anwendungsmöglichkeit ist die Zuweisung des Softwarepaketes in eine oder mehreren Zuweisungsgruppen, die speziell von Fall zu Fall für die eine oder andere Computerhardware erzeugt wurde. Per Reinstallationsfunktion kann eine erneute Installation des Softwarepaketes initiiert werden, dass dann die Updates verteilt.
Logging, Debugging und Prüfung
Das Softwarepaketskript hat eine umfangreiche Fehlerbehandlung, die ggf. Fehlermeldungen im SWDepot-Log und SetupErrorLog vom Computerobjekt in der Matrix42 Management Console protokolliert.
Überprüfen Sie nach einer Testinstallation im Windows Geräte-Manager den Versionsstatus der OEM-PnP-Treiber und ggf. den Versionsstatus der Systemsoftware, ob diese installiert bzw. aktualisiert wurden.
Prüfen Sie, ob ein Systemsoftwaresetup ggf. einen anderen Rückgabewert (RETURNCODE) für eine erfolgreiche Installation hatte als 0, 1641 oder 3010. Wenn ja, korrigieren Sie in der Setup.ini den SUCCESSCODE von dem entsprechenden Systemsoftwaresetup.
Lokal auf dem Computer finden Sie folgende Dateien in dem Arbeitsordner C:\ProgramData\upDateNow\DriverUpdater:
\Log\Install.<Datum>.log : Logdatei, die bei der Installation des Softwarepakets geschrieben wird
\DriverPack.ini : Konfigurationsdatei, die bei der Ermittlung des Namens vom Treiber-Setup-Pack erzeugt wird
\Revision.ini : Lokale Kopie der Revision.ini eines erkannten Treiber-Setup-Packs, wenn verfügbar
\LastRevision.ini : Revision.ini, die bei der vorherigen Installation erstellt wurde, wenn verfügbar.
\Setup.ini : Lokale Kopie der Setup.ini eines erkannten Treiber-Setup-Packs, das den Installationsstatus eines Setups speichert, wenn verfügbar
\Setup.<Datum>.ini : Lokale Kopie der Setup.ini, die bei einer vorherigen Installation verwendet wurde, wenn verfügbar
\Treiber-Setup-Pack.cab/zip : Lokale Ablage für ein komprimiertes Treiber-Setup-Pack, wenn verfügbar
Anpassung vom Hinweisdialog Geräteaktualisierung …
Sie finden im Softwarepaketverzeichnis eine sprachbezogene Info.htm-Datei im LCID-Ordner 1031 für Deutsch und 1033 für Englisch:
\Empirum\Configurator\Packages\upDateNow\DriverUpdater\1.0\Source\DeviceUpdate-Info\1031|1033\Info.htm
Sie können die Info.htm-Datei mit Ihren Formulierungen, Corporate Identity und Logo anpassen. Empfehlung: Verwenden Sie Microsoft Word für die Bearbeitung.
Wenn Sie den LCID-Ordner z.B. 1031 mit der Maus auf die DeviceUpdate-Info.exe ziehen, können Sie die Darstellung des Dialogs prüfen. Drücken Sie die ESC-Taste, um den Dialog zu beenden.
Sie können weitere Info.htm-Dateien für zusätzliche Sprachen hinterlegen. Das Programm DeviceUpdate-Info.exe ermittelt selbstständig die Benutzeranzeigesprache und sucht daraufhin nach einer Info.htm-Datei in dem entsprechenden LCID-Ordner. Falls keine Datei gefunden wird, wird als Rückfall immer die 1033\Info.htm (Englisch) verwendet.
Technische Einschränkung
Der Empirum Advanced Agent und UEM-Agent müssen zwingend ein Agent-Template verwenden, das als Verbindungsprotokoll SMB nutzt. Andere Verbindungsprotokolle, wie z.B. HTTPS sind derzeit aus technischen Gründen nicht möglich.
Sonstiges
Der Geräteaktualisierungsmodus-Hinweisdialog kann durch Drücken der ESC-Taste beendet werden, um eine Benutzeranmeldung im Notfall wieder zu ermöglichen.
Change-Log
Version 2.0.3.6
Erstrelease 28.03.2020
Sollten Sie Interesse, Fragen oder Anregungen haben, stehe ich Ihnen gerne per E-Mail zu Verfügung: Frank.Dethlefsen@updatenow.de
*1: Uns ist bewusst, dass die Ausführung der „upDateNow DriverUpdater 2020.exe“ auf einem Server aus Sicherheitsgründen nicht üblich ist. Wir haben uns dennoch dafür entschieden, weil es die Installation und Konfiguration sehr vereinfacht. Um sich davon zu überzeugen, was das Setup macht, können Sie die „upDateNow DriverUpdater 2020.exe“ mit 7-Zip entpacken und das Installationsskript unter Install\Setup.inf analysieren.
Copyright © 2020 upDateNow GmbH
Diese Dokumentation ist urheberrechtlich geschützt. Alle Rechte liegen bei der upDateNow GmbH. Jede andere Nutzung, insbesondere die Weitergabe an Dritte, Speicherung innerhalb eines Datensystems, Verbreitung, Bearbeitung, Vortrag, Aufführung und Vorführung sind untersagt. Dies gilt sowohl für das gesamte Dokument als auch für Teile davon. Änderungen sind vorbehalten. Nachdruck, auch auszugsweise, ist nur mit schriftlicher Genehmigung der upDateNow GmbH gestattet.
Matrix42 und Empirum sind registrierte Markennamen der Matrix42 AG.
upDateNow GmbH
Wacholderweg 7
44869 Bochum
Germany
+49 2327 689 9977