SCCM: Dual-Use der Treiberpakete

claspSCCM 2007 hat eine relativ gute Verwaltung der Treiber für eine Betriebssysteminstallation (OSD), die auch automatisch erkannt und installiert werden. Gerade wenn man viel Zeit und Mühe in die Pflege dieser Liste gesteckt hat, möchte man vielleicht auch bereits installierte Systeme mit den Treibern aktualisieren.

Mir ist keine SCCM interne Möglichkeit bekannt dies umzusetzen. Auch eine versuchsweise erstellte Tasksequenz, die nur die Treiberauswahl beinhaltet bricht auf einem Zielsystem ab, da es nicht im richtigen Kontext (WinPE) ausgeführt wird.
Continue reading

Posted in Configuration Manager, Deutsch, System Center | Tagged , , | Leave a comment

SCCM: Windows Update Dienst korrigieren

Manchmal macht der Windows Update Dienst Probleme. Um einige Probleme zu korrigieren setzte ich schon seit längerer Zeit ein kleines Script ein:

Continue reading

Posted in Configuration Manager, Deutsch, System Center | Tagged , , | Leave a comment

Enteo, Powershell und PnP IDs

Heute mal wieder eine kurze Powershell Zeile, um alle in Enteo hinterlegten PnP-IDs in den Driver Packages auszulesen und auszugeben.

Interessant kann diese Liste sein, um sie mit einer Enteo-externen Inventur zu vergleichen oder zu überprüfen, ob eine neue Hardware bereits unterstützt wird.


(Get-EmdbSoftwarePackage -recurse -Filter "SchemaTag=PnpPackage" |

where {$_.PnPEnabledIdList -ne $null}) |

foreach-object{$_.PnPEnabledIdList.Split(",")} > c:\temp\pnpids.txt

Zuerst wird in allen Software Paketen nach dem Typ PnPPackage gesucht. Aus diesen Ergebnissen werden alle Treiber ohne PnP Ids ausgefiltert. Das Ergebnis ist eine kommaseparierte Liste pro Treiber-Paket, die beim Komma getrennt wird. Am Ende steht eine Liste mit jeweils einer PnP Id pro Zeile:


[...]
OPTIONBUS\GTHSM501_DBG
OPTIONBUS\GTHSM501_DBG2
OPTIONBUS\GTHSM501_GPSD
OPTIONBUS\GTHSM501_GPSC
OPTIONBUS\GTHSM501_APP
OPTIONBUS\GTHSM501_APL
PCI\VEN_8086&DEV_105E&SUBSYS_105E8086
PCI\VEN_8086&DEV_105E&SUBSYS_005E8086
PCI\VEN_8086&DEV_105E&SUBSYS_115E8086
PCI\VEN_8086&DEV_105E&SUBSYS_125E8086
PCI\VEN_8086&DEV_105E&SUBSYS_135E8086
PCI\VEN_8086&DEV_105E&SUBSYS_704E103C
PCI\VEN_8086&DEV_105E
PCI\VEN_8086&DEV_105F&SUBSYS_005F8086
PCI\VEN_8086&DEV_105F&SUBSYS_115F8086
PCI\VEN_8086&DEV_105F&SUBSYS_125F8086
PCI\VEN_8086&DEV_105F&SUBSYS_704F103C
PCI\VEN_8086&DEV_105F
PCI\VEN_8086&DEV_1060&SUBSYS_00608086
[...]

Posted in Deutsch, Powershell | Tagged , , , | Leave a comment

Diverse Tools für SCCM – Teil 5

boxIm letzten Teil wurde eine Batchdatei zur Erzeugung von CCR Dateien vorgestellt. Möchte man direkt eine komplette Collection installieren lassen, dann läßt sich dies wieder einfach mit der getcomputer.vbs Datei umsetzen:

makeccrall.cmd:

for /F %%i in ('cscript.exe //NOLOGO %~dp0getcomputer.vbs %1 smsserver sitecode') do call %~dp0makeccr.bat %%i

(auch hier wieder smsserver und sitecode durch die korrekten Daten ersetzen)

Alterntiv möchte man eventuell die Installation erzwingen, d.h. egal ob ein Client vorhanden ist oder nicht soll dieser auf jeden Fall installiert und gegebenenfalls repariert werden. Dazu muss in der CCR Datei ein zusätzlicher Parameter angegeben werden. Hierfür ist die Batchdatei forcemakeccr.cmd zuständig:

Continue reading

Posted in Configuration Manager, Deutsch, System Center | Tagged , | Leave a comment

Diverse Tools für SCCM–Teil 4

boxIm vierten Teil wird eine Batchdatei zum Remoterollout des SCCM Clients vorgestellt. Dazu wird ein Client Configuration Request (CCR) erzeugt und in das entsprechende SCCM Verzeichnis abgelegt. Auf dieses reagiert der Server und versucht den Client remote zu installieren (ähnlich des Clientrollouts über die MMC Konsole).

Auch diese Batchdatei benötigt wieder die Datei findip.bat aus dem ersten Teil.


@echo off
set PC=%1
set sitecode=SMS
set siteserver=SMSSERVER

if .%PC%==. set /p PC=Enter Computer Name to install SMS Client:
call %~dp0findip.bat %PC%
if %ip%.==. goto ende

:testdomain
echo Computer:%PC%

:weiter
set output="%temp%\%PC%.ccr"

echo [NT Client Configuration Request]>%output%
echo   Client Type=1>>%output%
echo   Machine Name=%PC%>>%output%

copy %output% \\%siteserver%\sms_%sitecode%\inboxes\ccr.box\
dir  \\%siteserver%\sms_%sitecode%\inboxes\ccr.box

del %output%

:ende
set output=
set ip=
set d=

In der dritten und vierten Zeile muss der jeweilige Siteserver und der SCCM Sitecode angegeben werden. Aufgerufen wird die Batchdatei wie üblich mit dem Ziel-PC Name als Parameter.

Posted in Configuration Manager, Deutsch, System Center | Tagged , | Leave a comment