Скрипт для удаления контента SCCM пакетов с Distribution point серверов

Задача: удалить контент пакетов с SCCM Distribution point серверов, чтобы они не занимали место на них, при этом не удаляя самих пакетов.

Скрипт получает списков DP серверов, на которые указанный пакет распространен (distributed), а затем удаляет контент на каждом DP. Для каждого типа пакетов используется свой синтаксис командлета Remove-CMContentDistribution.

Читать полностью »

Популярность: 1%

Скрипт для параллельного копирования файлов с помощью BITS

Представим себе, что нам необходимо параллельно запустить несколько копирований через BITS. Это можно сделать в помощью Powershell Workflow. Параллельно создаются BITS Job, для каждой из которых каждые 15 секунд выводится статус копирования. Требуется Powershell версии 5.1 или выше.
Читать полностью »

Популярность: 1%

Использование BITS для передачи больших файлов

Представляю вам скрипт, который в удобной форме создает BITS job на Powershell и каждые 10 секунд показывает текущий статус передачи. По окончании или при ошибке в лог записывается информация о том, сколько % скопировалось, и каков финальный статус пересылки.

Читать полностью »

Популярность: 1%

Скрипт для массовго prestage пакетов на серверах SCCM

Часто требуется выполнить prestage пакетов, которые нормальным образом не хотят распространяться на SCCM Distribution Point сервера. Для этого можно использовать связку утилиты PSEXEC и утилиты ExtractContent.exe, которая входит в состав установки SCCM DP сервера и выполняет prestage. Утилиту PSEXEC вы должны скачать и положить в папку Windows\System32 заранее.
Читать полностью »

Популярность: 1%

Скрипт для включения аккаунтов Active Directory с заданными параметрами

Представим, что выключенные (disabled) аккаунты у вас хранятся в отдельном OU, в них прописаны определеныне аттрибуты, чтобы не ходила почта, а отбойник отправлялся получателям.

Вот пример такого скрипта, который включает аккаунт, перемещает в правильный OU, включает почту через 13 Exchange attribute, делает unhide почтового ящика в Global Address Book (GAL).
Читать полностью »

Популярность: 1%

Скрипт Powershell: отключение Out-of-Office сообщения в почтовом ящике

Этот скрипт отключает auto-reply message (сообщение автоответа) в почтовом ящике MS Exchange. Как обычно, пере запуском команд Exchange, не забудьте запустить скрипт в Exchange Console Shell или импортировать снап-ин Exchange.

#disable OOO
$username = get-mailbox -identity (Read-Host -Prompt "Enter username" -ErrorAction Stop)
Set-MailboxAutoReplyConfiguration -Identity $username -AutoReplyState Disabled
#check
Write-Host "Current state:" -ForegroundColor green
(Get-MailboxAutoReplyConfiguration -Identity $username).AutoReplyState

Популярность: 1%

Скрипт Powershell: получение списка ACL прав всех папок и подпапок

Этот скрипт для примера получает права папок и подпапок C:\Scripts и выводит результаты в CSV файл.

$OutFile = "C:\temp\Permissions.csv"
$Header = "Folder Path,IdentityReference,AccessControlType,IsInherited,InheritanceFlags,PropagationFlags"
Del $OutFile
Add-Content -Value $Header -Path $OutFile 

Читать полностью »

Популярность: 1%

Скрипты Powershell для работы с AD аккаунтами

Получить список группы по маске:

Import-Module ActiveDirectory
Get-ADGroup -Filter {name -like "*Workstation Admins"} | select name

Получить список членов AD группы, которые удовлетворяют критерию (содержат в своем названии search_matching_rule):

Читать полностью »

Популярность: 1%

Скрипт Powershell: управление правами на папки в почтовом ящике

Отличие этих скриптов в том, что они получают список папок я почтовом ящике и продавливают на них права.

Скрипт для добавления прав на папки  в ящике:

[CmdletBinding()]
param (
	[Parameter( Mandatory=$true)]
	[string]$Mailbox,

	[Parameter( Mandatory=$true)]
	[string]$User,
  	[Parameter( Mandatory=$true)]
	[string]$Access
)

Читать полностью »

Популярность: 1%

Скрипт Powershell: размер папок почтовых ящиков

Этот скрипт выводит размер в МБ папки Inbox для всех почтовых ящиков:

#Get size of Inbox folders in all mailboxes
$mailboxes = @(Get-Mailbox -ResultSize Unlimited)
$report = @()

Читать полностью »

Популярность: 1%