Żądanie SCCM / WMI dotyczące pobrania wszystkich laptopów w domenie

Aby przygotować specjalistyczne oprogramowanie dla wszystkich urządzeń przenośnych firmy, konieczne było zbudowanie grupy komputerów lub kolekcji SCCM, które obejmowałyby wszystkie laptopy (i inne przenośne systemy mobilne), które działają w sieci korporacyjnej. Zadanie nie było tak proste, jak się wydaje na pierwszy rzut oka. Natychmiast nie mogłem znaleźć właściwości systemowej, która jednoznacznie identyfikowałaby komputer jako laptop lub komputer stacjonarny.

Najpierw próbowałem filtrować komputery mobilne przy użyciu filtrów GPO WMI i przypisywać do nich instalację oprogramowania za pomocą zasad grupy. Było kilka opcji wysyłania żądań WMI poprzez sprawdzenie:

  • stan baterii (mają ją tylko laptopy): WYBIERZ * Z Win32_Battery GDZIE (BatteryStatus 0)
  • rodzaj pamięci RAM (SODIMM dla laptopów): Wybierz * z Win32_PhysicalMemory GDZIE (FormFactor = 12)
  • Właściwości PCSystemType: WYBIERZ * Z Win32_ComputerSystem GDZIE PCSystemType = 2

Uwaga. Możliwe wartości dla PCSystemType

WartośćRodzaj systemu
0Nieokreślony
1Pulpit
2)Mobile
3)Stacja robocza
4Serwer korporacyjny
5Serwer małych biur i biur domowych (SOHO)
6PC urządzenia
7Serwer wydajności
8Maksymalnie

Każde z proponowanych zapytań ma swoje zalety i wady. Najbardziej poprawnym pomysłem powinno być filtrowanie według wartości PCSystemType, ale, niestety, ta klasa pojawiła się tylko w Vista, a nadal mamy sporo komputerów z przestarzałym systemem Windows XP, które nie zostaną odfiltrowane przez takie żądanie.

Bardziej interesujące dla mnie było zapytanie WMI o określenie typu podwozia (Typy podwozia) zawarte w klasie Win32_SystemEnclosure:

Możliwe wartości Typy podwozia podano w tabeli:

ChassisTypes ValueRodzaj systemu
1Inne
2)Nieznany
3)Komputer stacjonarny (w tym maszyny wirtualne)
4Niski profil pulpitu
5Pudełko na pizzę
6Mini wieża
7Wieża
8Przenośny
9Laptop
10Notatnik
11Ręczny
12Stacja dokująca
13Wszystko w jednym
14Sub notebook
15Oszczędność miejsca
16Pudełko na lunch
17Główne podwozie systemowe
18Rozbudowa podwozia
19Podwozie
20Podwozie rozszerzające magistrali
21Podwozie peryferyjne
22Podwozie do przechowywania
23Podwozie do montażu w szafie
24Komputer w zamkniętej obudowie

Tak więc znaczenie typów podwozia jest następujące:

  • dla laptopów: 8, 9, 10, 11, 12, 14, 18, 21
  • dla komputerów stacjonarnych: 3, 4, 5, 6, 7, 15, 16
  • dla serwerów: 17.23

Wynikowe żądanie WMI będzie takie

wybierz * z Win32_SystemEnclosure, gdzie ChassisTypes = "8" lub ChassisTypes = "9" lub ChassisTypes = "10" lub ChassisTypes = "11" lub ChassisTypes = "12" lub ChassisTypes = "14" lub ChassisTypes = "18" lub ChassisTypes = " 21 "

Ten filtr WMI można łatwo przekonwertować na żądanie SCCM, co pozwala zbudować kolekcję obejmującą wszystkie laptopy w sieci.

wybrać SMS_R_SYSTEM.ResourceID, SMS_R_SYSTEM.ResourceType, SMS_R_SYSTEM.Name, SMS_R_SYSTEM.SMSUniqueIdentifier, SMS_R_SYSTEM.ResourceDomainORWorkgroup, SMS_R_SYSTEM.Client z SMS_R_System sprzężenia wewnętrznego SMS_G_System_SYSTEM_ENCLOSURE na SMS_G_System_SYSTEM_ENCLOSURE.ResourceID = SMS_R_System.ResourceId gdzie
SMS_G_System_SYSTEM_ENCLOSURE.ChassisTypes in („8”, „9”, „10”, „11”, „12”, „14”, „18”, „21”)

I na koniec, aby wizualnie przedstawić informacje na temat stosunku ilościowego komputerów stacjonarnych i laptopów w sieci, możesz zbudować raport SCCM:

WYBIERZ
CASE Chassis Typy 0
KIEDY „8” NASTĘPNIE „zeszytów”
KIEDY „9” NASTĘPNIE „zeszyty”
KIEDY „10” NASTĘPNIE „zeszytów”
KIEDY „11” NASTĘPNIE „zeszyty”
KIEDY „12” NASTĘPNIE „zeszytów”
KIEDY „14” NASTĘPNIE „zeszyty”
KIEDY „Notatniki” „18”
ELSE „Desktops”
KONIEC JAKO „Typ stacji roboczej”, policz (odrębny sys.name0) jako ClientCount od
v_GS_SYSTEM_ENCLOSURE ENC
DOŁĄCZ DO WEWNĘTRZNEGO
v_R_System SYS ON ENC.ResourceID = SYS.ResourceID
GDZIE
sys.client0 = 1 AND sys.obsolete0 = 0 AND active0 = 1
GROUP BY
CASE Chassis Typy 0
KIEDY „8” NASTĘPNIE „zeszytów”
KIEDY „9” NASTĘPNIE „zeszyty”
KIEDY „10” NASTĘPNIE „zeszytów”
KIEDY „11” NASTĘPNIE „zeszyty”
KIEDY „12” NASTĘPNIE „zeszytów”
KIEDY „14” NASTĘPNIE „zeszyty”
KIEDY „Notatniki” „18”
ELSE „Desktops”
Koniec
ZAMÓW PRZEZ 2 szt

W naszym przypadku stosunek komputerów stacjonarnych i laptopów wynosi 2832 do 109.

Sprawdziliśmy więc, jak użyć atrybutu ChassisTypes klasy SystemEnclosure do zbudowania kolekcji SCCM lub utworzenia filtru zasad grupy WMI, który pozwala wybrać wszystkie laptopy w sieci.