Roman
#Import Module $CMModulepath=$Env:SMS_ADMIN_UI_PATH.ToString().Substring(0,$Env:SMS_ADMIN_UI_PATH.Length - 5)+"\ConfigurationManager.psd1" import-module $CMModulepath -force #Change the site Code -- CD #SiteCode: #Set variables $SMSProvServerName = #"FQDN of SMSProv" $SiteCode = #"SiteCode" #Change File Location Import-Csv 'D:\Script\Roman\SUDP.csv' | ForEach-Object { $PackageId = $_.PackageId $PackageName = Get-CMSoftwareUpdateDeploymentPackage -id $PackageID | select name #Getting list of Distribution Point where the content is assigned. $query = Get-WmiObject –NameSpace Root\SMS\Site_$SiteCode –Class SMS_DistributionDPStatus -ComputerName $SMSProvServerName –Filter "PackageID='$PackageID'" | select Name #Warning $Number = $Query.Count Write-Host "Removing $PackageID $PackageName from $Number Distribution Points" ForEach ($ObjItem in $query) { $DPName = $objItem.Name #For Software Update Deployment Packages Write-Host "Removing Software Update Deployment Package $PackageID - $PackageName from Distribution Point $DPName" Remove-CMContentDistribution -DeploymentPackageId "$PackageId" -DistributionPointName "$DPName" -Force -Verbose } }
Sergey
простите моё стремление к краткости: Import-Module "$($ENV:SMS_ADMIN_UI_PATH)\..\ConfigurationManager.psd1" $SiteCode = Get-PSDrive -PSProvider CMSITE Set-Location "$($SiteCode.Name):\"
Sergey
$SiteServer = $SiteCode.SiteServer $SiteCode = $SiteCode.SiteCode
Dmitry
иди кодь в свой двор ))))))
Sergey
%))) ну и пойду
Roman
небольшая инструкция к скрипту (который предоставляется как есть, никаких гарантий, все дела). Скрипт был создан чтобы удалять Software Update Deployment Package контент с Distribution Points перед тем, как вы удаляете Deployment Package из консоли. Это ответ на ситуацию, при которой после удаления Deployment Pacage, контент остаётся на DistributionPoints и занимает там драгоценное место. Скрипт удаляет контент Software Update Deployment Packages (Далее SUDP) со всех Distribution Points (далее DP), куда SUDP был разослан. Перед началом использования, вам нужно выгрузить в csv Package ID тех SUDP, которые собираетесь удалить. Пример: PackageID M01000AE M01000C1 M01000D4 M01000FE Далее модифицируйте скрипт под свою инфраструктуру. 5 строка - прописать Site Code 8 строка - прописать FQDN SMS Provider сервера (наличие этого костыля обусловлено тем, что скрипт подготовлен в системе, где SMS Provider болтается не на Primay Site сервере. Поэтому, SMS Provider сервер указывается отдельно) 9 строка - прописать Site Code (как верно заметил @skorotkov, это несколько избытычно и можно было бы его всего раз прописывать 😉) 12 строка - прописать путь к CSV файлу После этого выполнить скрипт и надеяться на лучшее 😁 Дабы потом по чату не искать где скрипт а где инструкция, продублирую код в этом же сообщении #Import Module $CMModulepath=$Env:SMS_ADMIN_UI_PATH.ToString().Substring(0,$Env:SMS_ADMIN_UI_PATH.Length - 5)+"\ConfigurationManager.psd1" import-module $CMModulepath -force #Change the site Code -- CD #SiteCode: #Set variables $SMSProvServerName = #"FQDN of SMSProv" $SiteCode = #"SiteCode" #Change File Location Import-Csv 'D:\Script\Roman\SUDP.csv' | ForEach-Object { $PackageId = $_.PackageId $PackageName = Get-CMSoftwareUpdateDeploymentPackage -id $PackageID | select name #Getting list of Distribution Point where the content is assigned. $query = Get-WmiObject –NameSpace Root\SMS\Site_$SiteCode –Class SMS_DistributionDPStatus -ComputerName $SMSProvServerName –Filter "PackageID='$PackageID'" | select Name #Warning $Number = $Query.Count Write-Host "Removing $PackageID $PackageName from $Number Distribution Points" ForEach ($ObjItem in $query) { $DPName = $objItem.Name #For Software Update Deployment Packages Write-Host "Removing Software Update Deployment Package $PackageID - $PackageName from Distribution Point $DPName" Remove-CMContentDistribution -DeploymentPackageId "$PackageId" -DistributionPointName "$DPName" -Force -Verbose } }
Dmitry
Спасибо!
Roman
не за что
Roman
сейчас ещё чем-нибудь поделюсь, хоть вы и не просите)
Sergey
гитхаб есть на это
Sergey
чем сюда простыни постить. и ридми заодно там наваять можно
Roman
гитхаб есть на это
Это верно, но как по мне, выклыдвание на гитхаб обязывает причесать свой код и вложиться в написание ридми. А к таким подвигам я не готов. Тут узкоспециализированное русскоязычное комьюнити, для которого я готов постараться и где 20 % усилий, надеюсь, дадут 80% результа)
Sergey
не, не надо ничего причесывать
Sergey
хочешь - причесывай. всем плевать
Sergey
просто там удобненько
Alexander
/stat@combot
Combot
combot.org/c/-1001054149356
Roman
Фидбек я принял. расписывать тут скрипты не буду) Если кого-то заинтересует, из интересных решений на коленке имеется: 1) Рестарт всех серверов, где включен PXE 2) Скрипт для массовой очистки Distribution Points от контента драйвер пакетов и образов ОС 3) Последовательная инструкция (на английском) по использованию ContentLibraryCleanup.exe
Sergey
не стесняйтесь, выкладывайте с хештегами и ключевыми словами по которым можно будет найти
Sergey
вижу простор для оптимизации скрипта выше Remove-CMContentDistribution -DeploymentPackageId "$PackageId" -DistributionPointName "$DPName" -Force -Verbose оба параметра принимают массивы
Sergey
хотя это же cm-командлеты, может раньше и не принимали
Boris
небольшая инструкция к скрипту (который предоставляется как есть, никаких гарантий, все дела). Скрипт был создан чтобы удалять Software Update Deployment Package контент с Distribution Points перед тем, как вы удаляете Deployment Package из консоли. Это ответ на ситуацию, при которой после удаления Deployment Pacage, контент остаётся на DistributionPoints и занимает там драгоценное место. Скрипт удаляет контент Software Update Deployment Packages (Далее SUDP) со всех Distribution Points (далее DP), куда SUDP был разослан. Перед началом использования, вам нужно выгрузить в csv Package ID тех SUDP, которые собираетесь удалить. Пример: PackageID M01000AE M01000C1 M01000D4 M01000FE Далее модифицируйте скрипт под свою инфраструктуру. 5 строка - прописать Site Code 8 строка - прописать FQDN SMS Provider сервера (наличие этого костыля обусловлено тем, что скрипт подготовлен в системе, где SMS Provider болтается не на Primay Site сервере. Поэтому, SMS Provider сервер указывается отдельно) 9 строка - прописать Site Code (как верно заметил @skorotkov, это несколько избытычно и можно было бы его всего раз прописывать 😉) 12 строка - прописать путь к CSV файлу После этого выполнить скрипт и надеяться на лучшее 😁 Дабы потом по чату не искать где скрипт а где инструкция, продублирую код в этом же сообщении #Import Module $CMModulepath=$Env:SMS_ADMIN_UI_PATH.ToString().Substring(0,$Env:SMS_ADMIN_UI_PATH.Length - 5)+"\ConfigurationManager.psd1" import-module $CMModulepath -force #Change the site Code -- CD #SiteCode: #Set variables $SMSProvServerName = #"FQDN of SMSProv" $SiteCode = #"SiteCode" #Change File Location Import-Csv 'D:\Script\Roman\SUDP.csv' | ForEach-Object { $PackageId = $_.PackageId $PackageName = Get-CMSoftwareUpdateDeploymentPackage -id $PackageID | select name #Getting list of Distribution Point where the content is assigned. $query = Get-WmiObject –NameSpace Root\SMS\Site_$SiteCode –Class SMS_DistributionDPStatus -ComputerName $SMSProvServerName –Filter "PackageID='$PackageID'" | select Name #Warning $Number = $Query.Count Write-Host "Removing $PackageID $PackageName from $Number Distribution Points" ForEach ($ObjItem in $query) { $DPName = $objItem.Name #For Software Update Deployment Packages Write-Host "Removing Software Update Deployment Package $PackageID - $PackageName from Distribution Point $DPName" Remove-CMContentDistribution -DeploymentPackageId "$PackageId" -DistributionPointName "$DPName" -Force -Verbose } }
Anton
и сразу на гите
😈Макс
гита и зита
Anton
git init git add remote github https://url.git git add . git commit -am 'commit' git push github master изи
Sergey
да отлько сранчала в маркдауне разберись %)
Anton
зочем? пуш сразу ps1
Sergey
а ридми?
Anton
плейнтекстом можешь оформить )
Sergey
нуууу ок
Anton
понабрал )
Sergey
а дай ка ссылку на эту страницу?
Anton
https://portal.azure.com
Anton
держи
Sergey
cvc не хватает
Sergey
Sergey
держи
вот спасибо!
Anton
а дай ка ссылку на эту страницу?
да я на самом деле полез за лицензией для вебшторма от джебрейнс и вспомнил, что у меня еще бенефит мсдн не активирован по программе
Anton
пора окунуться в мир удовольствия ))
Alexander
Anton
Нет
что нет? у тебя ваще интюн )
Anton
а у него древний адк какой-то
Anton
тебе вообще не понять всю онпремис боль
Alexander
И слава богу
Alexander
Я сейчас пытаюсь понять боль стыковки Android Enterprise и application protection политик
Alexander
Мне хватает
Alexander
А ещё статью надо дописать когда то
Alexander
Скриншотов наделать
Quantum Yupiter
небольшая инструкция к скрипту (который предоставляется как есть, никаких гарантий, все дела). Скрипт был создан чтобы удалять Software Update Deployment Package контент с Distribution Points перед тем, как вы удаляете Deployment Package из консоли. Это ответ на ситуацию, при которой после удаления Deployment Pacage, контент остаётся на DistributionPoints и занимает там драгоценное место. Скрипт удаляет контент Software Update Deployment Packages (Далее SUDP) со всех Distribution Points (далее DP), куда SUDP был разослан. Перед началом использования, вам нужно выгрузить в csv Package ID тех SUDP, которые собираетесь удалить. Пример: PackageID M01000AE M01000C1 M01000D4 M01000FE Далее модифицируйте скрипт под свою инфраструктуру. 5 строка - прописать Site Code 8 строка - прописать FQDN SMS Provider сервера (наличие этого костыля обусловлено тем, что скрипт подготовлен в системе, где SMS Provider болтается не на Primay Site сервере. Поэтому, SMS Provider сервер указывается отдельно) 9 строка - прописать Site Code (как верно заметил @skorotkov, это несколько избытычно и можно было бы его всего раз прописывать 😉) 12 строка - прописать путь к CSV файлу После этого выполнить скрипт и надеяться на лучшее 😁 Дабы потом по чату не искать где скрипт а где инструкция, продублирую код в этом же сообщении #Import Module $CMModulepath=$Env:SMS_ADMIN_UI_PATH.ToString().Substring(0,$Env:SMS_ADMIN_UI_PATH.Length - 5)+"\ConfigurationManager.psd1" import-module $CMModulepath -force #Change the site Code -- CD #SiteCode: #Set variables $SMSProvServerName = #"FQDN of SMSProv" $SiteCode = #"SiteCode" #Change File Location Import-Csv 'D:\Script\Roman\SUDP.csv' | ForEach-Object { $PackageId = $_.PackageId $PackageName = Get-CMSoftwareUpdateDeploymentPackage -id $PackageID | select name #Getting list of Distribution Point where the content is assigned. $query = Get-WmiObject –NameSpace Root\SMS\Site_$SiteCode –Class SMS_DistributionDPStatus -ComputerName $SMSProvServerName –Filter "PackageID='$PackageID'" | select Name #Warning $Number = $Query.Count Write-Host "Removing $PackageID $PackageName from $Number Distribution Points" ForEach ($ObjItem in $query) { $DPName = $objItem.Name #For Software Update Deployment Packages Write-Host "Removing Software Update Deployment Package $PackageID - $PackageName from Distribution Point $DPName" Remove-CMContentDistribution -DeploymentPackageId "$PackageId" -DistributionPointName "$DPName" -Force -Verbose } }
Пакеты с кодом сайта M01 напоминают мне один банк...
Sergey
а m10****** или m09****** ?
Dmitry
Походу нам пиздец!
Dmitry
Ой
Dmitry
Не туда
Dmitry
Сорьки
Quantum Yupiter
Походу нам пиздец!
Раскидали osd на all systems?)
Dmitry
Раскидали osd на all systems?)
Не, я таким не промышляю))))
Dmitry
Но говорят мой руководитель на прошлой работе умудрился так сделать ;₽
Sergey
ну незря такой алерт страшный сделали. а для тасков так вообще скрыли, приходится пошиком деплоить
Quantum Yupiter
Ахаха, они бы окошко сначала перерисовали создания квери для коллекции
Quantum Yupiter
А то recent development в preview: Maximize the browse registry window
Quantum Yupiter
In the Software Library workspace, expand Operating Systems, and select the Task Sequences node. Edit is now the default action when opening a task sequence. Previously the default action was Properties.
Dmitry
Это прекрасно ))
Dmitry
Инородные предметы внутри себя? 😂
Boris
Инородные предметы внутри себя? 😂
не, ты не увиливай, заинтриговал всех и краями... чё пиздец то?
Boris
вот и бот знал даже, а мы не знаем
Алексей
По моему первый раз я эту байку услышал году в 2007 на курсах по sccm
Алексей
И разумеется не про win8
🧙‍♂️
🧙‍♂️
стало больно
Aleksandr
Добрый день!
Aleksandr
Aleksandr
подскажите куда копать в первую очередь?
Alexander
Лишние аргументы при установке