Архив

Archive for the ‘Tricks’ Category

PowerShell; VS Code; snippet for SCCM;

VS Code SCCM-snippet

Сниппет по подгрузке CCM-командлет в VS Code.

Нажимаем F1, вводим «User snippet», выбираем PowerShell, добавляем в открывшийся конфиг:

"Import-Module ..\ConfigurationManager.psd1": {
	"prefix": "ccm",
	"body": [
		"Import-Module \"\\$(\\$ENV:SMS_ADMIN_UI_PATH)\\..\\ConfigurationManager.psd1\"",
		"\\$SiteCode = Get-PSDrive -PSProvider CMSITE",
		"Set-Location \"\\$(\\$SiteCode.Name):\\\""
	],
	"description": "Import-Module ..\ConfigurationManager.psd1"
}
Рубрики:PowerShell, SCCM, Tricks

SCCM; Aprove Application via email на русском языке и Status Filter Rule

С версии SCCM 1810, появилась возможность использовать утверждение запроса приложения через e-mail. Если необходимо получать уведомление на языке отличным от Английского, можно изменить язык в подписке на Уведомления (Subscription) в мониторинг: \Monitoring\Overview\Alerts\Subscriptions.

image

Автоматизируем этот процесс, повесив Status Filter Rule на Status Message ID: 30240

Тег «Далее»

Рубрики:SCCM, Tricks

SCCM; Коллекция устройств с данными о приложении из Application;

Коллекция устройств с установленным приложением в которой Name, Publisher и Software version подставим из Application.

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_INSTALLED_SOFTWARE
        on SMS_G_System_INSTALLED_SOFTWARE.ResourceID = SMS_R_System.ResourceId
    inner join SMS_ApplicationLatest
        on SMS_ApplicationLatest.Manufacturer = SMS_G_System_INSTALLED_SOFTWARE.Publisher
        and SMS_ApplicationLatest.SoftwareVersion = SMS_G_System_INSTALLED_SOFTWARE.ProductVersion
        and SMS_ApplicationLatest.LocalizedDisplayName = SMS_G_System_INSTALLED_SOFTWARE.ProductName
where
    SMS_ApplicationLatest.ModelName = 'ScopeId_844C9ED5-F96B-4CEF-AD14-23ED6EF7E0F9/Application_da479ffe-9a82-4708-b9c4-50a4aa6ebeb4'

 

Тег «Далее»

Рубрики:SCCM, Tricks

SCCM; PS; И очень медленная работа Add-CMDeviceCollectionDirectMembershipRule

… или простая задача но много букв.

Время от времени возникает вопрос — «Надо добавить в коллекцию пару сотен девайсов, а командлет Add-CMDeviceCollectionDirectMembershipRule делает это ну оооочень медленно». И приводят пример вроде этого:

$Names = "a*"
$CollName = "Test collection"
Get-CMDevice -Name $Names | Foreach-Object {
    Add-CMDeviceCollectionDirectMembershipRule -CollectionName $CollName -ResourceId $_.ResourceID
}

Смотрим описание командлета:

Тег «Далее»

Рубрики:PowerShell, SCCM, Tricks

SCCM; OSD; Windows 10; Порядок языков, язык в LogonScreen и локализованные ярлыки приложений в "Пуск"

Время от времени на профильных ресурсах обсуждается вопрос – «Как задать языковые параметры ОС при установке?». Классический, правильный ответ — с помощью Unattend.xml или в MDT — с помощью CustomSettings.ini (что на самом деле тоже ведёт к формированию Unattend.xml). Но не все параметры удаётся задать через него, особенно специфические. Особенно часто этот вопрос начал возникать с появлением Windows 10, так как заданный порядок языков влияет на отображение ярлыков приложений в меню «Пуск». Вокруг этого сразу возникает множество советов по исправлению параметров реестра, не обращая внимания на способ предложенный MS уже более 10-ти лет назад – «Command Line Configuration of International Settings«.

В SCCM 1910 добавили возможность более гибко управлять языками в Task Sequence.

Тег «Далее»

Рубрики:OSD, SCCM, Tricks

RSAT; Windows 10; DNS manager console missing for RSAT client on Windows 10 Version 1709;

Чтобы самому не искать каждый раз

DNS manager console missing for RSAT client on Windows 10 Version 1709

Архив с файлами под x64 и немного доработанным батником, чтобы можно было из сети ставить или SCCM-ом:

Архив c “installx64.bat” и “unattend_x64.xml” под x64: RSAT_Win10_1709+DNS.zip

Распаковываем и кладём туда же сам RSAT client — WindowsTH-RSAT_WS_1709-x64.msu

Запускам “installx64.bat” с повышением привилегий (Run As Administrator)

installx64.bat: Тег «Далее»

Рубрики:Tricks, Troubleshooting

SCCM; SSRS; Часть 1: Скачать отчёты? Что может быть проще!

… и пара базовых отчётов для примера CPU & RAM has changed.

imageПопросили сделать отчёт об изменениях RAM/CPU. Кстати, про RAM  уже есть в комплекте, называется: «Оборудование — Память > Компьютеры с измененной физической памятью». Только он — яркий пример издевательства над арифметикой, потому что сравнивать значения по ROUND(x, -3), это какое-то “параллельное” представление о процессах происходящих в мире ИТ. Однако, встроенные отчёты, пожалуй, основной источник информации о том, где брать эти самые данные (вьювки/таблицы/фукции/хранимки) из базы CCM, так что за это — отдельное спасибо разработчикам.

В этой части два простых отчёта, без перевода, без ресурсов, без нормального именования, не учитывающий наличия нескольких процессоров и т.п., но с поддержкой RBAC (Да, кстати, все эти понты с — «Мы поддерживаем RBAC» — ничего кроме названия и замены вьювок на одноимённые функции не означает. Продукт-группа о нас позаботилась). Основная цель этих простеньких отчётов – сразу показать изменения, подсветить знаковые показатели. Т.е. созданы они для подписки по e-mail. В параметрах – “коллекция устройств”, возможность исключить виртуальные машины, и показывать только изменённые в меньшую сторону показатели (память уменьшилась, частота CPU/кол-во ядер — упало).

  1. RAM has changed.rdl
  2. CPU has changed.rdl

Попутно убедился, что ресурсный файл русского языка не поправили, и то, что называется — “PreviousPhysicalMemoryMB”, так и указано, по-русски – “Предыдущий объем физической памяти (КБ)”.

Буду докидывать отчёты в этот пост

Некоторые отчёты которые делал для себя или комьюнити:

Далее “Step-By-Step” о том как загрузив отчёт *.rdl, запустить его в своём окружении, и на что ещё ОБЯЗАТЕЛЬНО надо обратить внимание.

  • Скачиваем *.rdl;
  • Загружаем *.rdl на “Report Point”;
  • Проверяем, что делает отчёт;
  • Меняем “Data Source”.

Тег «Далее»

Рубрики:SCCM, SSRS, Tricks

SCCM; OSD; WDS; PXE; UEFI & BIOS & DHCP options 66, 67. Часть 2: Vendor Classes

С периодичностью в неделю на профильных ресурсах возникает один и тот же вопрос – “У меня появилось устройство, загружающееся по UEFI и вот оно не загружается, в DHCP опцию 067 меняю, теперь UEFI — работает, а BIOS (legacy) нет”.

В первой части – “Часть 1: DHCP Relay Agent”, мы разбирались как с наименьшими трудозатратами поддерживать сразу все текущие платформы загрузки клиента (UEFI и BIOS) с помощью возможности WDS-сервера прикидываться DHCP-сервером и отдавать PXE-клиенту необходимый загрузчик.

Но что делать если мы не можем обеспечить возможность получать широковещательные запросы клиента (DHCP Discover) — WDS сервером? Например, для каждой подсети (домена широковещания) — настроен отдельный DHCP-сервер, который как бы, не желает делиться запросом PXE-клиента с WDS-сервером. Еще вариант, когда WDS-сервер и DHCP-сервер находятся на одном сервере, т.е. WDS не может прослушивать 67 порт, т.к. он занят DHCP.

Ответ простой — использовать возможность DHCP сервера — фильтровать запросы клиентов по “Option 60 — Vendor class identifier” (DHCP-Сервер на Windows Server начиная с версии 2012) или “Option 93 — Client System Architecture” (например, “ISC DHCP”). Кстати PXE-сервер тоже ориентируется именно на архитектуру клиента в Option 93) и в зависимости от них предоставлять клиенту разные ответы (DHCP Offer) с DHCP-опциями 66, 67 для поддержки каждой из платформ.

Vendor Classes Filtering

Тег «Далее»

Рубрики:OSD, SCCM, Tricks

SCCM; OSD; WDS; PXE; UEFI & BIOS & DHCP options 66, 67. Часть 1: DHCP Relay Agent

С периодичностью в неделю на профильных ресурсах возникает один и тот же вопрос – “У меня появилось устройство, загружающееся по UEFI и вот оно не загружается, в DHCP опции 67 меняю, теперь UEFI — работает, а BIOS (legacy) нет”.

Давайте разбираться.

Есть два способа правильно обрабатывать запрос клиента и выдавать ему правильный загрузчик.

  • “DHCP Relay Agent” — когда WDS Сервер сам определяет архитектуру загрузчика клиента и отправляет клиенту информацию с правильным загрузчиком;
  • “Vendor Classes Filtering” — т.е. продолжать использовать DHCP Options 66, 67, но с дополнительной фильтрацией клиентского запроса по “Vendor class identifier”.

DHCP Relay Agent

Тег «Далее»

Рубрики:OSD, SCCM, Tricks

SCCM; TS; Drivers by categories; in «Control freak» mode;

Или как «объяснить» Task Sequence-у, что предыдущий поиск драйверов по категориям не был успешным.

WCA-B301.wmv_snapshot_00.23.08_[2017.05.25_22.25.46]

Пожалуй, лучший доклад, который я видел на тему управления драйверами, это доклад Johan Arwidmark (@jarwidmark) — <A Drivers Saga: Mastering Windows Deployment>. Крайне рекомендую.

Тег «Далее»

Рубрики:SCCM, Tricks