Сегодня соединяем два мощных инструмента для сетевого администратора: PowerShell и MS SCCM.
Оказывается начиная с версии 3.0 PowerShell позволяет управлять ресурсами сети через MS SCCM. И я не преминул воспользоваться такой возможностью.
Для начала надо импортировать модуль из файла ConfigurationManager.psd1, который находится в папке консоли MS SCCM. Запускаем консоль PowerShell.
Переходим в папку консоли Microsoft Configuration Manager:
PS C :\> cd "C:\Program Files(x86)\Microsoft Configuration Manager\AdminConsole\bin"
Импортируем модуль для ConfigurationManаger:
PS C :\> Import-Module .\ConfigurationManager.psd1
Если все пройдет хорошо, то вы не получите никаких сообщений.
После этого мы имеем два способа подключения к сайту MS SCCM. Либо через консоль MS SCCM,
либо напрямую через PowerShell ISE.
В обоих случаях подгружается следующий авто-скрипт входа:
-------------------------------------------------
# Нажмите клавишу F5, чтобы запустить скрипт. При запуске скрипт загрузит модуль ConfigurationManager для Windows PowerShell и подключит его к сайту.
#
# Этот скрипт был автоматически создан "21.11.2017 17:26:48".
# Раскомментируйте строку ниже, если скрипт запущен в среде, которая требует подписать
# скрипт.
#Set-ExecutionPolicy -ExecutionPolicy Bypass -Scope Process
# Конфигурация сайта
$SiteCode = "PRM" # Код сайта
$ProviderMachineName = "sccmprm1.skyfleet.com.ua" # Имя компьютера поставщика SMS
# Настройки
$initParams = @{}
#$initParams.Add("Verbose", $true) # Раскомментируйте эту строку, чтобы включить подробное ведение журнала
#$initParams.Add("ErrorAction", "Stop") # Раскомментируйте эту строку, чтобы останавливать скрипт при любых ошибках
# Не изменяйте ничего под этой строкой
# Импорт модуля ConfigurationManager.psd1
if((Get-Module ConfigurationManager) -eq $null) {
Import-Module "$($ENV:SMS_ADMIN_UI_PATH)\..\ConfigurationManager.psd1" @initParams
}
# Подключение к диску сайта, если оно еще отсутствует
if((Get-PSDrive -Name $SiteCode -PSProvider CMSite -ErrorAction SilentlyContinue) -eq $null) {
New-PSDrive -Name $SiteCode -PSProvider CMSite -Root $ProviderMachineName @initParams
}
# Задание текущего расположения в качестве кода сайта.
Set-Location "$($SiteCode):\" @initParams
-------------------------------------------------
Запускаем его на выполнение и получаем приглашение
PS PRM:\>
Здесь можно сделать многое.
В импортированном модуле 264 команды для получения сведений
PS PRM:\> (GCM Get-CM*).count
264
и 237 для установки или создания новых параметров
PS PRM:\> (GCM Set-CM*).count
237
Например, так можно прочитать командную строку выполнения в пакете "MS Lync 2010"
PS PRM:\> (Get-CMProgram –PackageName "MS Lync 2010").CommandLine
LyncSetup_x86.exe /silent
Так можно получить список всех доступных коллекций
PS PRM:\> Get-CMDeviceCollection | Format-Table –AutoSize
Так прочитать свойства коллекции по ID
PS PRM:\> Get-CMDeviceCollection –CollectionId "PRM00089" -Verbose
ПОДРОБНО: Start: Execution of WQL query: SELECT * FROM SMS_Collection WHERE CollectionID = 'PRM00089' AND CollectionType = 2
Ключик Verbose дает возможность увидеть WQL-запрос и оценить скорость его выполнения.
Так прочитать свойства коллекции по имени
PS PRM:\> Get-CMDeviceCollection –Name "SAP branch"
SmsProviderObjectPath : SMS_Collection.CollectionID="PRM00089"
CollectionID : PRM00089
CollectionRules : {SMS_R_System, SMS_R_System}
CollectionType : 2
CollectionVariablesCount : 0
Comment : SAP рабочие станции
CurrentStatus : 1
HasProvisionedMember : True
IncludeExcludeCollectionsCount : 0
IsBuiltIn : False
IsReferenceCollection : False
ISVDataSize : 0
LastChangeTime : 22.04.2016 8:22:12
LastMemberChangeTime : 19.08.2016 21:08:09
LastRefreshTime : 16.11.2017 9:03:53
LimitToCollectionID : PRM00089
LimitToCollectionName : Skynet
LocalMemberCount : 2
MemberClassName : SMS_CM_RES_COLL_PRM00089
MemberCount : 2
MonitoringFlags : 0
Name : SAP branch
OwnedByThisSite : True
PowerConfigsCount : 0
И т.д.
Как с этим всем работать читайте в книге "Microsoft System Center PowerShell Essentials"
авторов Guruprasad HP и Harshul Patel от Packt Publishing. В электронном виде книгу находил здесь www.it-ebooks.info.
Сам изучаю, тестирую.
Успехов и вам.
No comments:
Post a Comment
А что вы думаете по этому поводу?