Archiv der Kategorie: Deployment

Surface Pro 4 UEFI Einstellungen

Bei neuen Computern lege ich jeweils im Bios resp. über UEFI fest, dass nur von der internen Festplatte und dem Netzwerk gestartet werden kann und schütze die Einstellungen über ein Passwort. So soll verhindert werden, dass jemand über eine CD oder einen USB-Stick ein Live-Linux oder ein Windows PE startet und das lokale Administratorpasswort zurücksetzt. Weiterlesen

Windows 10: Upgrade auf neueste Version

Wenn dies so mit SCCM vorbereitet ist, können die Benutzer selber auf die neueste Version von Windows 10 (im Moment 1803) upgraden.

Welche Version ist installiert?
Welche Version von Windows 10 installiert ist, findet man unter “Einstellungen” (Startknopf und dann das Zahnradsymbol) –> “System” –> “Info”. Im Bild unten die Version 1803. Weiterlesen

Windows 10 Upgrade auf neueste Version

Windows 10 wird jedes Jahr neue Versionen erhalten, die dann mit einer Nummer (in der Form Jahr/Monat wie man das z.B. von Ubuntu kennt) gekennzeichnet werden. Nach der ursprünglichen Version kam eine neue Version 1511 (also November 2015) und die nächste Version ist schon angekündigt. (Nachtrag. Hier wird beschrieben, wie man die neue Version verteilt).

Mit SCCM 2012 R2 konnte man nur auf die Version 1511 wechseln, indem man den Computer vollständig mit der neuen Version neu aufgesetzt hat. Dies funktioniert auch weiterhin mit SCCM Current Branch.

Neu kommt nun auch die Möglichkeit dazu, als Upgrade auf die neueste Version zu wechseln. Im Gegensatz zum neu aufsetzen werden dabei auch manuell installierte Programme oder Dateien auf der lokalen Festplatte beibehalten.

Dazu erstellt man eine neue Tasksequenz “Ein Betriebssystem vom Aktualisierungspaket aktualisieren”.

image

Im nächsten Schritt vergibt man einen Tasksequenznamen.

image

Hier wählt man das entsprechende Aktualisierungspaket.

image

Ich habe ausgewählt, dass Softwareupdates gerade auch installiert werden sollen. 
Nachtrag: In der Zwischenzeit verzichte ich auf diesen Schritt. Da wir zeitnah ein neues Image erstellen hat es noch nicht so viele Updates, dafür geht der Vorgang deutlich schneller.

image

Zusätzliche Anwendungen müssen bei uns keine installiert werden.

image

Nach weiter –> weiter ist die neue Tasksequenz erstellt. Diese sieht dann wie im Bild unten aus. Standardmässig werden 2 GB Ram verlangt, bei mir ist die Tasksequenz dann aber auf Maschinen mit 2 GB nicht korrekt durchgelaufen, wahrscheinlich, weil ein Teil davon für die Chipsatzgrafik gebraucht wurde und darum nicht verfügbar war. Die Tasksequenz läuft aber auch durch, wenn man den Arbeitsspeicher auf 1024 MB herunter setzt.

image

Das ganze Upgrade dauert sehr lange. In dieser Zeit können Lehrpersonen resp. Schüler/-innen nicht arbeiten. Daher wollte ich es nicht zwingend verteilen.

Zuerst habe ich eine Sammlung mit allen Computern erstellt, die die erste Version von Windows 10 (Build 10240) installiert haben und die Tasksequenz für diese als “Verfügbar” bereitgestellt.

select SMS_R_SYSTEM.ResourceID,SMS_R_SYSTEM.ResourceType,SMS_R_SYSTEM.Name,SMS_R_SYSTEM.SMSUniqueIdentifier,SMS_R_SYSTEM.ResourceDomainORWorkgroup,SMS_R_SYSTEM.Client from SMS_R_System inner join SMS_G_System_OPERATING_SYSTEM on SMS_G_System_OPERATING_SYSTEM.ResourceId = SMS_R_System.ResourceId where SMS_G_System_OPERATING_SYSTEM.BuildNumber = "10240"

image

Danach können die verantwortlichen Schulhaussupporter oder die Lehrpersonen selber das Upgrade auslösen, wenn es zeitlich für sie passt.

Die Anleitung dazu findet sich hier.

OSD mit Windows 10 1511 bricht ab

Die Verteilung von Windows 10 in der aktuellen Version 1511 bringt diverse neue Probleme. Zuerst ist der build & capture Prozess nicht durchgelaufen, weil Windows neu versucht, auf X: statt auf C: zu installieren. Dies konnte ich gemäss dem hier beschriebenen Workaround beheben.

Wenn man danach versucht, die mit dem build & capture hergestellte WIM Datei auf die Clients zu installieren, funktioniert auch das nicht wie gewohnt. Am Schluss hängt sich die Tasksequenz bei mit bei Updates installieren auf. Wenn man smsts.log durchsieht, finden sich viele Fehler. Weiterlesen

Lego Mindstorms Education EV3 installieren

Wir bieten an unserer Schule ein Freifach “Robotik” an, in dem mit Lego Mindstorms gearbeitet wird.

Wenn man die entsprechende Schullizenz gekauft hat, bekommt man einen Link zum Download und eine Lizenz.

image

Weiter unten auf der Seite gibt es eine Netzwerkanleitung und einen Patch.

image

Die Netzwerkanleitung beinhaltet gleichzeitig Einstellungen, die bei der unbeaufsichtigten (silent) Installation angegeben werden müssen. Man könnte die Datei auch selber erstellen, indem man die Installation mit dem Parameter /generatespecfile aufruft. In der Netzwerkanleitung wird beschrieben, wie man die Installation aufruft (1). Ich habe eine lokale Installation (2) ausgewählt, den Pfad fürs Installationsverzeichnis auskommentiert (3) um Standardpfade zu verwenden und eine Schülerinstallation ausgewählt (4).

image

Die Setupdatei entpackt zuerst den ganzen Inhalt nach C:\Windows\temp\. Daher wird bei der eigentlichen Installation die Datei mit den Einstellungen nicht gefunden. Als Workaround kann man sie zuerst an einen Ort kopieren, auf den man dann im Skript verweisen kann.

image

Ohne Installation des Patches kommt beim Programmstart ein Hinweis, dass eine neue Version verfügbar sei. Mit Benutzerrechten kann man diese dann aber nicht installieren. Scheinbar ist der Parameter /disableNotificationCheck nicht für diese Meldung zuständig. Also muss man im Skript den Patch (weitere 600MB) auch noch installieren. Obwohl man bei der manuellen Installation diverse Angaben machen muss, darf bei der silent Installation keine Einstellungsdatei angegeben werden…

Wenn dann alles installiert ist, kommt beim ersten Start noch ein Hinweis, dass die Firewall einige Features blockiert. Also muss man auch dieses Problem noch beheben.

image

Für eine Schullizenz mit “network installation guide” war es dann doch ziemlich aufwendig eine automatische Installation zu erstellen…


@echo off 

REM Ins Verzeichnis mit Daten wechseln
cd %~dp0

REM Spec Datei an verfügbaren Ort kopieren
xcopy install.txt c:\windows\temp\

REM Programm installieren
start /wait setup.exe c:\windows\temp\install.txt /q /AcceptLicenses yes /r:n /disableNotificationCheck

REM Patch installieren
start /wait patch.exe /q /AcceptLicenses yes /r:n /disableNotificationCheck

REM Verknuepfung auf Desktop und install.txt löschen
if exist "C:\Users\Public\Desktop\LEGO MINDSTORMS Education EV3.lnk" del "C:\Users\Public\Desktop\LEGO MINDSTORMS Education EV3.lnk"
if exist "c:\windows\temp\install.txt" del "c:\windows\temp\install.txt"

REM Firewall anpassen
netsh advfirewall firewall add rule name="Lego Mindstorms" dir=in action=allow program="C:\program files (x86)\lego software\lego mindstorms edu ev3\mindstormsev3.exe" enable=yes

REM Return exit code to sccm
exit /B %EXIT_CODE% 

 

 
image

Windows 10 fast startup

Windows 10 kennt wie Windows 8 einen sogenannten “fast startup”. Dabei wird Windows nicht vollständig heruntergefahren, sondern ein Teil des Systems wird ähnlich wie beim Ruhezustand in eine Datei ausgelagert, die schneller wieder eingelesen ist als bei einem Kaltstart (Cold Boot). Mit diesem “Trick” startet Windows 10 mit aktiviertem “fast startup” schneller als ohne und damit auch schneller als z.B. Windows 7, das den “fast startup” noch gar nicht kannte. Weiterlesen

Treiber für Betriebssystembereitstellung

Um die Betriebssystembereitstellung (OSD = Operating System Deployment) mit SCCM für neue Demogeräte zu testen, muss man die Treiber entsprechend einbinden.

Als erstes kopiert man die Treiber in eine entsprechende Freigabe.

image

Hinweis: Die Treiber für Surface Geräte werden nur noch als MSI angeboten. Man kann sie aber aus dem MSI extrahieren. Dazu verwendet man auf einer mit Adminrechten gestarteten Eingabeaufforderung:


msiexec /a heruntergeladene_Datei.msi targetdir=C:\Pfad /qn

Nun wählt man unter “Softwarebibliothek” –> “Treiber” –> “Treiber importieren”

image

Nun verweist man auf diesen gespeicherten Ordner.

image

Durch einen Klick auf “Kategorien” kann man eine Kategorie zuweisen, resp. neue Kategorien erstellen.

image

image

Auf der nächsten Seite kann man ein Paket auswählen oder durch einen Klick auf “Neues Paket…” ein neues erstellen.

image

image

Die Treiber werden nicht zum Startabbild hinzugefügt.

image

image

Nun muss man das Treiberpaket noch verteilen.

image

Jetzt muss man noch die Tasksequenz so anpassen, dass das Treiberpaket bei den richtigen Geräten angewendet wird.

image

image

image

Bei den Optionen kann man einstellen, dass die Treiber nur auf dieses Computermodell angewendet werden.

image

Die passende WMI Abfrage lautet:

SELECT * FROM Win32_ComputerSystem WHERE Model Like „%Modellname%“

image

image

Den Modellnamen erhält man durch eine WMI Abfrage. Dazu öffnet man eine Eingabeaufforderung und gibt “wmic” ein. Danach erhält man durch die Eingabe von “csproduct get name” den passenden Namen.

image

Die Treiber werden dann während dem OSD installiert.

image

Treiber fürs Startabbild
Es kann sein, dass ein Treiber für eine Netzwerk- oder Festplattenkomponente bereits schon im Startabbild benötigt wird, damit diese schon unter Windows PE angesprochen werden können.

Dazu wählt man bei den Eigenschaften des Startabbilds die Registerkarte “Treiber” und dann den “Stern”, um allfällig gewünschte Treiber einzubinden. Man sollte aber das Startabbild so klein wie möglich halten und nur wirklich benötigte Treiber einbinden.

image

image

Laufwerksbuchstaben

Bei uns wird das Userhome eines Benutzers als Laufwerk H: verknüpft.

image

Nun haben wir aber Computer, die interne Cardreader haben. Diese belegen einen Laufwerksbuchstaben, auch wenn keine Karte eingeschoben ist. Da der Laufwerksbuchstabe bereits belegt ist, wird das Userhome des Benutzers nicht angezeigt.

image

Man kann das Problem manuell beheben, indem man dem Wechseldatenträgerlaufwerk einen anderen Buchstaben zuweist. Dazu startet man die Datenträgerverwaltung (z.B. durch einen Rechtsklick auf den Windows Startknopf). Durch einen Rechtsklick auf den entsprechenden Datenträger kann man ihm einen anderen, noch freien Laufwerkbuchstaben zuweisen.

image

Besser ist es natürlich, wenn man nichts mehr manuell anpassen muss. Im Internet wird für solche Aufgabenstellungen der USB Drive Letter Manager empfohlen. Dieser ist für Schulen gratis.

Als erstes erstellt man eine INSTALL.INI oder passt die vorhandene USBDLM_sample.ini an:

[NetworkLetters]
Letter1=H

In der _install.cmd steht der Befehl zum Installieren, den man auch in SCCM verwenden kann:

“%~dp0usbdlm.exe” –install

Bei mir hat das so aber nicht funktioniert, ich musste die Dateien zuerst in einen anderen lokalen Ordner kopieren und das Programm dann von dort starten.

image 

Wenn bereits ein Benutzer angemeldet ist, wird zwar der Laufwerksbuchstabe des Cardreaders angepasst. Das Userhome ist aber erst bei der nächsten Anmeldung des Benutzers vorhanden.

OSD Fehlermeldung wegen falscher Datum/Uhrzeit Einstellung

Wir haben ein Demogerät zum Testen erhalten. Beim Neuaufsetzen mit unserem Windows 10 Image ist dies aber jeweils abgebrochen. Im SMSTS.log fand sich dann ein Hinweis auf eine falsch eingestellte Zeit auf dem Client:

failed to request for client
SyncTimeWithMP() failed. 80004005.
Failed to get time information from MP: “servername”

image

Sobald Datum und Zeit korrekt eingestellt wurden, konnte man den Client auch problemlos neu aufsetzen.