Командный язык Windows весьма скуден, но даже несмотря на это, множество энтузиастов со всего мира продолжают с ним экспериментировать, открывая подчас вещи весьма неожиданные, которые, наверное, все же правильнее было бы назвать багами. Как бы там ни было, факт остается фактом: скриптовая (и не только) малварь была, есть и будет покуда существует IT-индустрия (а не только Microsoft, как полагают многие). Речь пойдет о лазейках в командных сценариях, позволяющих комбинировать их «бесшовно» с другими технологиями, что может быть использовано как во благо, так и во вред, так что давайте условимся сразу: все изложенное ниже является лишь информацией к размышлению, а не руководством к действию, карающемуся органами в погонах.
Читать полностью »
Рубрика «powershell» - 20
Управление виртуальными машинами Azure с помощью PowerShell
2015-03-23 в 10:33, admin, рубрики: azure, azure active directory, Microsoft Azure, powershell, virtual machine, Блог компании Microsoft, виртуальные машины, ит-инфраструктура, системное администрированиеPowerShell – это очень мощный инструмент, нужно только знать, как его правильно применять. Важно также отметить, что несколько сейчас PowerShell предоставляет функционал больший, чем использование графических элементов управления: всё, что можно выполнить из графического интерфейса, можно реализовать при помощи командлетов PowerShell. Наоборот это правило не работает. В случае с Microsoft Azure с помощью PowerShell вы можете сделать все теже действия, что и через портал управления, кроме создания самой подписки. Применение Azure PowerShell позволяет контролировать и автоматизировать развертывание рабочих нагрузок и управлениями ими. В этой статье мы поговорим о том, как можно использовать Azure PowerShell для управления виртуальными машинами.

Быстрая настройка серверов с помощью PowerShell Desired State Configuration
2015-03-19 в 7:32, admin, рубрики: Desired State Configuration, dsc, iis, powershell, powershell dsc, PowerShell ISE, pull server, Windows Server, windows server 2012 r2, Блог компании Microsoft, ит-инфраструктура, конфигурация сервера, настройка желаемого состояния, системное администрированиеВо многом работа системного администратора не отличается оригинальностью задач. Так или иначе, большинство заданий – это повторяющиеся операции, которые сводятся к созданию, удалению, изменению настроек, установки и настройки ролей и компонентов системы. Абсолютно естественным является желание максимально автоматизировать такие задачи. Одним из инструментов, спешащих на помощь администратору, является PowerShell Desired State Configuration, которая впервые была представлена в Windows Server 2012 R2. О том, что это такое и как может облегчить жизнь IT-специалиста использование Desired State Configuration мы и поговорим в этой статье.

Наблюдаем за новыми арендами адресов на DHCP сервере с помощью PowerShell
2015-03-13 в 9:34, admin, рубрики: dhcp, powershell, sqlite, windows, Серверное администрирование
Хочу рассказать об одном из способов мониторить новые аренды адресов на Windows DHCP сервере со множеством скопов. Задача была следующая: находить новые аренды и пробегать список глазами на предмет неугодных хостов с последующим их баном.
Для решения мы создадим базу SQLite и будем сохранять в ней информацию о существующих арендах, а затем, с помощью запроса, сравнивать таблицу, полученную ранее (например, вчера или неделю назад) с актуальными данными.
Читать полностью »
Перед вами «быстрый старт» для работы с PowerShell для начинающих тестировщиков. Вы работаете и в один из дней, наконец, смиряетесь с тем фактом, что человек по сути своей ленивое существо, но при этом достаточно хитрое, чтобы облегчить себе жизнь. И, не долго думая, решаете автоматизировать повседневные задачи. Естественно, минимальными усилиями.
Читать полностью »
Загрузка фото пользователя в Active Directory с помощью PowerShell
2015-03-04 в 7:25, admin, рубрики: active directory, exchange, Lync, outlook, powershell, scripting, sharepoint, системное администрирование Если вы используете Active Directory у вас используется Exchange, OwnCloud, SharePoint или другая система с возможностью отображения аватара или фото, то после прочтения данный статьи у вас появится возможность загрузить фото пользователя в AD для отображения в Outlook, Lync, на порталах SharePoint и других системах.
Читать полностью »
Когда вы используете Try/Catch/Finally, команда которая будет выполняться помещается в блок Try. Если произойдет ошибка в процессе выполнения команды, то она будет записана в переменную $Error, и выполнение скрипта перейдет к блоку Catch.
Читать полностью »
Рабоче-крестьянское резервное копирование под Windows
2014-12-25 в 8:19, admin, рубрики: backup, powershell, shadow copy, windows, резервное копирование, Серверное администрирование 
Постановка задачи
Допустим, вы системный администратор в малой/средней (да чего уж там, иногда даже большой) компании, перед которым стоит задача организации резервного копирования файлового сервера исключительно с помощью подручных средств. Или вы продвинутый пользователь, которому небезразлична судьба хранящихся на вашем жестком диске файлов.
Пусть задача будет звучать следующим образом:
- Необходимо организовать автоматическое резервное копирование определенных файлов компьютера на отдельный носитель.
- Компьютер работает под управлением Windows версий 7 / 2008 или более поздней.
- Объем данных большой, поэтому копирование должно поддерживаться как полное, так и дифференциальное.
- Д.б. возможность копировать любые файлы, в т.ч. системные, заблокированные на чтение и т. п.
- Сторонним платным софтом пользоваться категорически не хочется (ну, допустим, мы стеснены в средствах, а эти ваши торренты — не наш путь! Или религия не позволяет. Или миллион других причин.), а лучше вообще обойтись без любого стороннего софта, пользуясь лишь возможностями ОС .
Немного подумав, еще расширим список хотелок:
- Как продолжение предыдущего пункта, формат архива также должен быть открытым и распространенным, чтобы в случае чего его без проблем открыть откуда угодно с помощью чего-угодно
- Более того, он должен быть таким, чтобы из любого, даже дифференциального архива, можно было бы без труда вытащить любой файл, не распаковывая для этого весь архив.
- Глубина архивации должна настраиваться (что называется, backup rotate).
- Было бы неплохо также с архивом сохранять дескрипторы безопасности NTFS.
- И вообще, хочется максимальной расширяемости и настраиваемости, если завтра возникнет желание нагородить дополнительный функционал.
Что ж, требования сформулированы, дело за малым – спланировать и реализовать всё остальное.
Читать полностью »
Использование таймаута при работе с WMI через Powershell
2014-12-17 в 13:08, admin, рубрики: powershell, системное администрированиеЗдравствуйте читатели.
Недавно был опубликован урок по сбору информации о рабочих станциях с использованием PowerShell. В комментариях были рекомендации по реализации некоторого функционала с помощью WMI. Это напомнило мне о некоторых нюансах функционирования WMI на серверах и рабочих станциях, с которыми пришлось столкнуться на работе.
Читать полностью »
Advanced PowerShell vol. 1: повторное использование кода
2014-12-16 в 9:37, admin, рубрики: powershell, Windows Server, Серверное администрирование, системное администрирование Привет! Как большой поклонник и активный практик PowerShell я часто сталкиваюсь с тем, что мне необходимо повторно использовать ранее написанные куски кода.
Собственно, для современных языков программирования code reuse — это обычное дело.
PowerShell в этом вопросе не отстает, и предлагает разработчикам (написателям скриптов) сразу несколько механизмов обращения к написанному ранее коду.
Вот они по возрастанию сложности: использование функций, дот-сорсинг и написание собственных модулей.
Рассмотрим их все порядку.
В качестве решения лабораторной задачи напишем скрипт, который расширяет раздел C: до максимально возможного размера на удаленном Windows-сервере LAB-FS1.
Такой скрипт будет состоять из одной строки и выглядеть так:
Invoke-Command -ComputerName LAB-FS1 -ScriptBlock { "rescan", "select volume=c", "extend" | diskpart }
Работает это так. Сначала PowerShell устанавливает удаленное соединение с сервером LAB-FS1 и запускает на нем локально набор команд, заключенный в фигурные скобки параметра -ScriptBlock. Этот набор в свою очередь последовательно передает команде diskpart три текстовых параметра, а diskpart выполняет (по очереди) повторное сканирование разделов, выбор раздела C: и расширение его до максимально возможного размера.

Как видите, скрипт крайне простой, но в то же время крайне полезный.
Рассмотрим, как правильно упаковать его для повторного использования.
Читать полностью »
