Рубрика «powershell» - 23

Часть первая: powershell и mci.

Используемая операционная система — Windows 7.
Первый вопрос, который возникает: как воспроизвести mp3 в powershell?
Ранее на хабре были упоминания подобного вопроса:
Как воспроизвести mp3 из командной строки в Windows 7?
Как же все-таки пользоваться PowerShell?

Ввиду отсутствия удовлетворительного ответа, было принято решение использовать Media Control Interface или mci.
Плюсы следующие: встроенность в систему, достаточная низкоуровневость, есть возможность посылать команды в виде строки.
Многим mci известен по ответу на вопрос: «как программно отрыть устройство чтения-записи компакт дисков?», хотя предоставляет много других возможностей. Ниже приведены некоторые сценарии использования.

Извлечение CD-ROM:

mci 'set cdaudio door open'

Воспроизведение локального mp3-файла:

mci 'play C:\temp\Kalimba.mp3'
mci 'status C:\temp\Kalimba.mp3 mode'

Запись в wav-файл:

mci 'open new type waveaudio alias RecWavFile'
mci 'set RecWavFile bitspersample 16 samplespersec 44100 channels 2'
mci 'record RecWavFile'
mci 'stop RecWavFile'
mci 'save RecWavFile C:\temp\RecWavFile.wav'
mci 'close RecWavFile'
mci 'play C:\temp\RecWavFile.wav wait'

Простой вариант воспроизведения потока из сети:

mci 'play http://some-radio-server.com:80/some-radio-channel.mp3'

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

В связи со сменой сервис провайдера и переездом из одного датацентра в другой возникла необходимость миграции контроллеров домена леса и трех его доменов. Решено было поднять свежие машины в новом датацентре, мигрировать на них текщие AD DS роли, после чего утилизировать старые серверы домена.
Наш лес состоит из трех доменов: одного корневого (в котором ничего нет, кроме домен котроллеров) и двух дочерних доменов (там находится весь функционал). Основой разделения доменов служило разделение обязанностей между ИТ командой компании и ИТ специалистами сервис провайдера. В каждом домене существует по два домен контроллера: первый на реальном железе, второй в виде виртуальной машины. Функциональный уровень леса – Windows 2008 R2. Операционная система установлена на всех серверах та же. На каждом сервере имеется DNS сервер с интегрированными в AD зонами.
Ниже я в общих чертах опишу весь процесс.
Читать полностью »

В работе администратора домена Active Directory довольно часто возникает необходимость найти причину блокировки пользователя. Иногда причиной блокировки пользователя является заражённый вирусом ПК — в таких случаях особо важна скорость обнаружения источника проблемы. В PowerShell 2 на Windows 2008 R2 есть прекрасный командлет Get-WinEvent который позволяет решать данную задачу за 1-2 минуты даже в очень большом домене.
Примечание: всё далее описанное касается только PowerShell >= 2.0
Читать полностью »

Управляем службами Windows с помощью PowerShell. Часть 6. Служебные учетные записи
Этим постом мы завершаем публиковать перевод цикла статей по управлению службами Windows с помощью PowerShell, которые выходят на сайте 4sysops.com. В предыдущем посте было рассмотрено как осуществлять управление службами Windows в Server 2012 c помощью CIM-командлетов, представленных в PowerShell 3.0. В этом посте мы рассмотрим, как осуществлять управление служебными учетными записями с помощью WMI- и CIM-командлетов.
Итак, под катом приведен перевод статьи с портала 4sysops.com Managing Services the PowerShell way – Part 8

Предыдущие статьи:
Управляем службами Windows с помощью PowerShell. Часть 1. Получаем статус служб
Управляем службами Windows с помощью PowerShell. Часть 2. Остановка, запуск, пауза
Управляем службами Windows с помощью PowerShell. Часть 3. Конфигурируем службы с помощью WMI и CIM
Управляем службами Windows с помощью PowerShell. Часть 4. Изменение служб с помощью WMI
Управляем службами Windows с помощью PowerShell. Часть 5. CIM-командлеты
Читать полностью »

Отчет по Exchange окружению с помощью Powershell (теперь и по Exchange 2013)
19 января вышла новая версия скрипта, который позволяет получить наглядную информацию о состоянии инфраструктуры Exchange. Стив Гудман (Steve Goodman) добавил в версии 1.5.6 поддержку Exchange 2013. Если Вы еще не встречались с этим полезным инструментом, то рекомендуем сделать это уже сегодня.
Скрипт собирает много полезной информации по Exchange инфраструктуре и выводит ее в html-файл. Также можно автоматизировать получение отчетов на почту.
Список того, что включено в отчет, достаточно большой — вы можете найти его под катом.

Сам скрипт можно скачать здесь.
Под катом приведен небольшой перевод поста автора о работе скрипта.
Читать полностью »

Управляем службами Windows с помощью PowerShell. Часть 5. CIM командлеты
Продолжаем публиковать переводы статей по управлению службами Windows, которые выходят на сайте 4sysops.com. В предыдущем посте было рассмотрено как осуществлять управление службами Windows, используя WMI. Но если вы работаете с PowerShell 3.0, то вам доступны новые CIM-командлеты. Работать с ними проще — и в этом посте мы узнаем почему.
Итак, под катом приведен перевод статьи с портала 4sysops.com Managing Services the PowerShell way – Part 7
Читать полностью »

image
Администраторы Windows долгое время полагались на такие проверенные временем инструменты командной строки как PING, IPCONFIG и REPADMIN. И некоторые до сих пор ими пользуются, вместо того, чтобы обратить свое внимание на PowerShell. Ashley McGlone, Premier Field Engineer Active Directory and PowerShell (именно его улыбающееся лицо вы можете видеть на фото), создал замечательное 4-страничное руководство, которое соотносит хорошо известные CMD-утилиты для работы с Active Directory с соответствующими им PowerShell-командлетами. Например, вместо PING можно использовать PowerShell командлет Test-Connection, вместо NSLOOKUP — Resolve-DNSName, вместо GPUPDATE — Invoke-GPUpdate.
Читать полностью »

Управляем сетевыми папками с помощью PowerShell
Публикуем вторую часть перевода статьи File Server Management with Windows PowerShell. В первой части мы рассматривали как с помощью PowerShell строить отчеты о сетевых папках.
На этот раз в зоне нашего внимания находятся такие вопросы как создание сетевой папки, делегирование прав доступа к ней и прекращение совместного доступа.

Создаем новые папки

Теперь давайте взглянем на то, как можно использовать PowerShell для создания файлов и папок и управления ими. Все, что я продемонстрирую, Вы можете использовать в PS 2.0 и 3.0 (хотя в PS 3.0 приводимые мною примеры можно упростить). Управление файловым сервером в PowerShell 2.0 требует обращения к WMI и написанию сложных скриптов. В PowerShell 3.0, особенно если у вас Windows Server 2012, этот тип управления значительно упрощен. Именно его я и собираюсь рассмотреть.
Все, что нам необходимо, уже имеется в модуле SMBShare, который по умолчанию установлен на моей машине Windows 8. Команды в этом модуле позволят нам локально и удаленно управлять папками. Я не собираюсь останавливаться на каждой команде подробно – они довольно однотипны; рекомендую прочитать справку и примеры. Мы же начнем с использования команды New-SMBShare, чтобы создать новую папку.
Сделать это нужно за пару шагов. Так как папка должна быть на удаленном сервере, я установлю удаленную сессию PowerShell:

$session=New-PSSession -ComputerName SRV2K12RC

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

Перемещаем информацию о пользователях в Active Directory и Sharepoint c помощью PowerShell     Бывает так — что в крупной организации, подчиненной сложным корпоративным правилам — возникает несколько точек проникновения информации из реального мира в мир production! Например — мелкая торговая фирма вела список своих сотрудников в 1С — с помощью нанятого со стороны сотрудника отдела кадров — а потом — раз, и выросла в большую фирму — с разветвленной сетью филиалов и большой IT — инфрастуктурой! Нанято большое количество сотрудников — на скорую руку (с привлечением интеграторов, разумеется)  построена AD инфраструктура — заведены пользователи, настроены сайты, групповые политики работают, etc… и вдруг — оказывается, что информации в AD о пользователях — ноль! ну то есть имя — фамилия,  OU, членство в группах, пароль, logon-скрипт — и все! ни тебе имени, ни комнаты, ни телефона — где он и кто он — пустые поля. Что делать???

     Или вот взять мою ситуацию — пришел работать маленьким винтиком большой корпоративной системы! Она распределена по всей стране — и была не организована — но за время моей работы — подтянулась к реалиям современного мира, и вместо отдельно взятого домена в каждом филиале, не связанным с остальными — построила большое AD на всю страну! И поехали мои пользователи в новое прогрессивное будущее через ADMT, и их рабочие станции поехали, и они сами! И быстро организовались и OU, и групповые политики с логон — скриптами, действующими WMI — фильтрами и прочее — прочее! Да только вот старый их домен не хранил никаких знаний о них — ни о кабинете, где сидят, ни о том, как их зовут толком, ни об отделе, где трудятся! И так они поехали, простите, голыми в новый домен, что уже само по себе неприлично! А отсюда выросла задача первая:

1) Заполняем данные о пользователе в AD с помощью powershell

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

Управляем службами Windows с помощью PoweShell. Часть 4. Изменение служб с помощью WMI
Продолжаем публиковать переводы статей по управлению службами Windows, которые выходят на сайте 4sysops.com. В предыдущем посте было рассмотрено использование WMI для извлечения информации о службе. WMI объект службы предлагает новые свойства, которые отсутствуют в .NET объекте службы. И хотя мы можем использовать Set-Service для изменения объекта службы, есть такие ситуации, когда вам необходимо использовать WMI.
Под катом приведен перевод статьи с портала 4sysops.com Managing Services the PowerShell way – Part 6.
Читать полностью »


https://ajax.googleapis.com/ajax/libs/jquery/3.4.1/jquery.min.js