Sonntag, 6. November 2022

Wenn eine neue Windows 10/11 Version kommt, müssen häufig auch Treiber aktualisiert werden

upDateNow DriverUpdater

UPDATENOW

DriverUpdater

 

Autor:   Frank Dethlefsen

Datum:   25.10.2022

Version: 2.2.10.25

 

Matrix42 und Empirum sind registrierte Markennamen der Matrix42 GmbH.

 

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 Matrix42 UEM Agent 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 so lange 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 2022.10.exe“ aus. 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 Sie 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-Packs

1.    Falls Sie vom Computerhersteller ein vorinstalliertes Windows Betriebssystem geliefert bekommen, das mit Ihrer Wahl der Windows-Betriebssystemversion übereinstimmt, können Sie Punkt 1. überspringen. Wenn nicht, installieren Sie auf die einzubindende Computerhardware die Windows-Betriebssystemversion Ihrer Wahl mit Empirum. Die Installation könnte wegen fehlender Treiber fehlschlagen. 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

\Model_Import.json    : Importdatei für die Matrix42 Management Console > Treiberassistent > Modell Import

\Revision.ini    : Konfigurationsdatei für die Freigabe von Treiber- und Setup-Updates

\CreateDriverPack.zip.ps1    : PowerShell-Skript zur Erstellung einer Treiber-Pack.zip-Datei

 

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.    Optional können Treiber deinstalliert und gelöscht werden, um Treiberupdates zu ermöglichen. Lesen Sie aus dem Windows Geräte-Manager den Treibernamen aus, den Sie deinstallieren möchten. Erzeugen Sie eine Textdatei mit dem Namen UninstallDrivers.txt im Treiber-Pack-Ordner. Hinterlegen Sie in der UninstallDrivers.txt pro Zeile einen Treibernamen zur Deinstallation.

 

5.    Optional können Zertifikate von nichtvertrauenswürdigen Treiberherstellern installiert werden, um Treiberupdates zu ermöglichen.

Offizieller Support von Linksys - Treiberinstallation des Linksys WUSB6400M  mittels die Setup Utility auf einem Windows® XP oder Vista® Computer

Gehen Sie wie folgt vor. Erstellen Sie einen Ordner mit dem Namen Certs im Treiber-Pack-Ordner. Gehen Sie in die entsprechende Treiberquelle. Suchen Sie die Datei mit der Dateiendung .cat. Machen Sie einen Doppelklick mit der linken Maustaste auf die Datei. Wählen Sie im Dialog „Sicherheitskatalog“ den Knopf „Signatur anzeigen“ aus. Wählen Sie im Dialog „Details der digitalen Signatur“ den Knopf „Zertifikat anzeigen“ aus. Wählen Sie im Dialog „Zertifikat“ das Register „Details“ und dann „In Datei kopieren“ aus. Führen Sie den Zertifikatsexport mit Standardvorgabe durch. Speichern Sie das Zertifikat mit dem Dateinamen <Hersteller><Jahr>.cer z.B. RealTek2022.cer im Ordner Certs unterhalb des Treiber-Pack-Ordner ab. Falls Sie weitere Zertifikate benötigen, wiederholen Sie den Vorgang.

 

6.    Wenn nötig, hinterlegen Sie die Systemsoftwaresetups wie folgt (bzw. falls Sie Systemsoftwaresetups schon in einem Vorgänger-Treiber-Pack integriert haben, kopieren Sie dessen Setup-Ordner in den neuen Treiber-Pack-Ordner.) 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. Falls keine Kommandozeilenoptionen für eine unbeaufsichtigte Installation benötigt werden, geben Sie nichts an.

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

 

7.    Komprimieren Sie nun das Treiber-Pack in das Zip-Format. Klicken Sie unterhalb des Treiber-Pack-Ordners mit der rechten Maustaste auf das PowerShell-Skript CreateDriverPack.zip.ps1 und wählen Sie aus dem Kontextmenu „Mit PowerShell ausführen“ aus. Nach Ausführung finden Sie das komprimierte Treiber-Pack <WindowsVersion>_<Hersteller>_<Modell>.zip direkt auf dem Benutzer-Desktop.

 

8.    Kopieren Sie das Treiber-Pack.zip <WindowsVersion>_<Hersteller>_<Modell>.zip vom Benutzer-Desktop in den Ordner \\<Haupt-EmpirumServer>\Configurator$\Packages\Matrix42\OSPackages\Drivers\. Im Updatefall ersetzen Sie das Treiber-Pack.zip, falls es schon existiert.

 

9.    Falls das Computermodell neu ist, starten Sie die Matrix42 Management Console. Gehen Sie im Konfigurationsbereich auf den Treiberassistent. Fügen Sie ggf. den Hersteller und das Modell manuell hinzu. Gehen Sie anschließend auf die Schaltfläche „Treiber Import“ > „Treiberdatei importieren…“. Importieren Sie das Treiber-Pack.zip <WindowsVersion>_<Hersteller>_<Modell>.zip. Wechseln Sie nun in das entsprechende Betriebssystem-Dropdown-Menü vom neuen Modell und wählen Sie das gerade importierte Treiber-Pack aus. Betätigen Sie abschließend rechts unten die Schaltfläche „Speichern“.

 

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 immer die 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-Packs via Revisionserhöhung in der Revision.ini

Die Revision.ini wird bei der Erstellung via OEMDriver2Pack.exe unterhalb des Treiber-Pack-Ordners 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-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 Zuweisungsgruppen, die speziell von Fall zu Fall für die 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    : Zentrale Logdatei, die bei der Installation des Softwarepakets geschrieben wird

\Log\Pnputil.<Datum>.log    : Logdatei, die bei der Anwendung von Pnputil.exe geschrieben wird

\Log\UninstallDrivers.<Datum>.log    : Optionale Logdatei, die bei der Deinstallation von Treibern geschrieben wird

\Log\CertMgr.<Datum>.log    : Optionale Logdatei, die beim Import von Zertifikaten geschrieben wird

\DriverPack.ini    : Konfigurationsdatei, die bei der Ermittlung des Namens vom Treiber-Packerzeugt wird

\Revision.ini    : Lokale Kopie der Revision.ini eines erkannten Treiber-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-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-Pack.cab/zip    : Lokale Ablage für ein komprimiertes Treiber-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 „D + Esc“-Tasten, 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änkungen

Der Matrix42 UEM Agent muss 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.

Die Betriebssysteme Windows 7 und Windows 10 32-Bit werden nicht mehr unterstützt.

 

Sonstiges

Der Geräteaktualisierungsmodus-Hinweisdialog kann durch Drücken der „D + Esc“-Tasten beendet werden, um eine Benutzeranmeldung im Notfall wieder zu ermöglichen.

 

Change-Log

Version 2.2.10.25 / 25.10.2022

     Logging stark erweitert

     Neue Funktion: Deinstallation von Treibern

     Neue Funktion: Installation von Zertifikaten

     Neue Funktion: CreateDriverPack.zip.ps1

     Hilfe an die Empirum Version 22.0 überarbeitet

     Support für Windows 11 und Windows Server 2022

     Kein Support mehr für Windows 7 und Windows 10 32-Bit

Version 2.2.3.25 / 25.03.2022

     Optimierung GetDriverPack.ps1

     Optimierung Revisionsauswertung

Version 2.1.4.1 / 01.04.2021

     BIOS-Passwörter können verschlüsselt übergeben werden

     Neues Tastaturkürzel „D + Esc“ zum Beenden des Geräteaktualisierungsmodus-Hinweisdialog

     Optimierung Geräteaktualisierungsmodus-Hinweisdialog bei Parallelbetrieb des Betriebssysteminstallationsmodus-Hinweisdialog

     Optimierung LocalSystemFix

Version 2.0.11.29 / 29.11.2020

     Optimierung OSInstallMode bei mehr als 3 Neustarts

     Optimierung Geräteaktualisierungsmodus-Hinweisdialog

Version 2.0.8.8 / 23.09.2020

     Änderung des Erstinstallationsverhalten

     Unterstützung von mehreren Successcodes

Version 2.0.3.6 / 28.03.2020

     Erstrelease

 

Sollten Sie Interesse, Fragen, Anregungen oder möchten Sie ein Angebot haben, stehe ich Ihnen gerne per E-Mail zu Verfügung: Frank.Dethlefsen@updatenow.de

 

Copyright © 2022 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 GmbH.

 

upDateNow GmbH

Wacholderweg 7

44869 Bochum

Germany

+49 2327 689 9977

info@updatenow.email

www.updatenow.de