Windows powershell для windows server 2008

Описание пакета установки Windows PowerShell 1.0 Release Candidate 2 (RC2) для Windows Vista RC1 и Microsoft Windows Server 2008 внутренних разработчиков сервера (IDS) построения 5600, освобождает в конце 2006 г.

Windows Server 2008 Datacenter without Hyper-V Windows Server 2008 Enterprise without Hyper-V Windows Server 2008 for Itanium-Based Systems Windows Server 2008 Standard without Hyper-V Windows Server 2008 Datacenter Windows Server 2008 Enterprise Windows Server 2008 Standard Windows Server 2008 Web Edition Еще…Меньше

ВВЕДЕНИЕ

В данной статье описывается пакет установки для Windows PowerShell 1.0 версии-кандидата (RC) 2 на Microsoft Windows Vista RC1 и Microsoft Windows Server 2008 внутренних разработчиков сервера (IDS) построение 5600.

Этот пакет установки устанавливает английский языковой версии Windows PowerShell 1.0 RC2. Он работает только для английского языка (en US) версий Windows Server 2008 и Windows Vista RC1. Не локализованные версии Windows PowerShell 1.0 RC2 доступны для построения Windows Vista RC1 или Windows Server 2008 Идентификаторы 5600.

Локализация и английской версии выпуска Windows PowerShell 1.0 для веб (RTW) пакеты доступны для Windows XP и Пакет обновления 2 и Windows Server 2003 Пакет обновления 1. Сведения о версии английского языка, щелкните следующий номер статьи базы знаний Майкрософт:

926139 Windows PowerShell 1.0 английский пакеты установки Пакет обновления 1 для Windows Server 2003 и Пакет обновления 2 для Windows XP

Дополнительные сведения о локализованной версии щелкните следующий номер статьи базы знаний Майкрософт:

926140 Windows PowerShell 1.0 локализованного пакета установки для Windows Server 2003 с Пакет обновления 1 и Windows XP и Пакет обновления 2

Внимание! Прежде чем устанавливать Windows PowerShell 1.0 RC2, удалите все предыдущие версии Windows PowerShell 1.0. В противном случае происходит сбой установки.

Дополнительные сведения

Microsoft Windows PowerShell-это новая оболочка командной строки и язык сценариев для администрирования и автоматизации систем. Основанное на платформа.NET Framework, Windows PowerShell позволяет ИТ-специалистам и разработчикам контролировать и автоматизировать администрирование Windows и приложений.

Windows PowerShell включает в себя:

  • Более 130 средств командной строки (называемые «командлетов») для выполнения общих задач системного администрирования, таких как управление службами, процессами, журналы событий, сертификаты, реестра и с помощью инструментария управления Windows (WMI).

  • Средства командной строки, которые разработаны с учетом просты в изучении и простой в использовании со стандартным соглашениям об именах и общие параметры и простые средства для сортировки, фильтрации и форматирования данных и объектов.

  • Поддержка существующих языков сценариев и средств командной строки и нескольких версий Windows, включая Windows XP, Windows Server 2003, Windows Vista™ и Windows Server с кодовым названием «Longhorn».

  • Функции, позволяющие пользователям перемещаться по хранилищам данных, такие как реестр и хранилище сертификатов, как если бы они были файловой системы.

  • Стандартные служебные программы для управления данными Windows в различных хранилищах и форматах, включая интерфейсы служб Active Directory (ADSI), инструментария управления Windows (WMI), объекты модели компонентных объектов (COM), объекты данных ActiveX (ADO), HTML и XML.

  • Разбор сложных выражений и управление объектами платформа.NET Framework из командной строки, включая передача объектов помогают ИТ-специалистам работать более эффективно и рационально.

  • Расширяемый интерфейс, позволяющий независимым поставщикам и корпоративным разработчикам создавать пользовательские командлеты в соответствии с особыми требованиями администрирования системы и приложений.

Дополнительные сведения о Windows PowerShell посетите следующие веб-узлы:

  • Веб-узел Windows PowerShell:
    http://www.microsoft.com/windowsserver2003/technologies/management/powershell/default.mspx

  • Блог Windows PowerShell:
    http://blogs.msdn.com/powershell

Требования к системе

  • Windows Vista RC1 или Windows Server 2008 Идентификаторы построения 5600

Windows PowerShell требует Microsoft платформа.NET Framework 2.0, который включен в Windows Vista RC1 и Windows Server 2008 Идентификаторы построение 5600.

Если на компьютере установлен любой версии Windows PowerShell 1.0, необходимо удалить его. В противном случае происходит сбой установки.

Удаление Windows PowerShell

Перед установкой Windows PowerShell 1.0 RC2, необходимо удалить все версии Windows PowerShell 1.0 на компьютере.
Чтобы удалить другие версии Windows PowerShell 1.0:

  1. Нажмите кнопку Пуск Start button , в поле « Начать поиск » введите команду appwiz.cpl и нажмите клавишу ВВОД.

  2. В списке Удаление или изменение программы щелкните правой кнопкой мыши Windows PowerShell(TM) 1.0и нажмите кнопку Удалить/изменить.

  3. Следуйте инструкциям по удалению Windows PowerShell(TM) 1.0.

Необходимость перезагрузки

Необходимо перезагрузить компьютер после установки Windows PowerShell 1.0 RC2.

Перезагрузка необходима, только если файлы, которые при установке или удалении используются другой программой. Это может произойти только в том случае, когда одна и та же версия Windows PowerShell была установлена на компьютере и не был полностью удален. Если эти файлы используются, появится предложение перезагрузить компьютер, пока программа установки выполняется в автоматическом режиме.

Папки установки

Windows PowerShell 1.0 RC2 устанавливаются в следующие папки. Не удается изменить расположение.

При x86 под управлением версий Windows Windows PowerShell 1.0 RC2 устанавливается в следующую папку, где % windir % представляет системную папку Windows (как правило, C:Windows):

%windir%System32WindowsPowerShellV1.0На основе x64 и Itanium версиях Windows 32-разрядной и 64-разрядные версии Windows PowerShell 1.0 RC2 устанавливаются по умолчанию в следующих местах, где % windir % представляет системную папку Windows (как правило, C:Windows):

  • 64-разрядной версии Windows PowerShell устанавливается в следующую папку:

    %windir%system32WindowsPowerShellV1.0

  • 32-разрядной версии Windows PowerShell устанавливается в следующую папку:

    %windir%Syswow64WindowsPowerShellV1.0

Файлы ресурсов устанавливаются во вложенной в папку установки, например c:windowssystem32WindowsPowerShellv1.0en-US языкового стандарта.

Документы будут установлены во вложенной папке документы папки установки во вложенной папке языкового стандарта, например c:windowssystem32WindowsPowerShellv1.0Documentsen-US.

Обнаружение Windows PowerShell

Программы можно определить Windows PowerShell установлена на компьютере под управлением Windows Vista RC1 или Windows Server 2008 Идентификаторы построения 5600 путем проверки значения реестра установить :

HKEY_LOCAL_MACHINESOFTWAREMicrosoftPowerShell1
<LCID>Install
Где < LCID > — это идентификатор языкового стандарта системы в шестнадцатеричном формате, например, 0409 для en US.

Если установить значение 1, Windows PowerShell установлена на компьютере.

Загрузите Windows PowerShell

Следующие файлы доступны для скачивания из Центра загрузки Майкрософт:

Windows PowerShell 1.0 (RC2) для Windows Vista RC1 и Windows Server 2008 Идентификаторы построения 5600, x86 под управлением версий

Download
Загрузить пакет Windows PowerShell 1.0 RC2 Windows Vista и Windows Server «Longhorn» — x86.

Windows PowerShell 1.0 (RC2) для Windows Vista RC1 и Windows Server 2008 Идентификаторы построения 5600, x64 под управлением версий

Как загрузить файлы поддержки Microsoft через оперативные службы 119591
Корпорация Майкрософт проверила этот файл на наличие вирусов. Корпорация Майкрософт использует последнее антивирусное программное обеспечение, доступное на период публикации файла. Файл хранится на защищенных серверах, что предотвращает его несанкционированное изменение.

Сведения о файлах

В обновление включены следующие файлы:

  • About_alias.help.txt

  • About_arithmetic_operators.help.txt

  • About_array.help.txt

  • About_assignment_operators.help.txt

  • About_associative_array.help.txt

  • About_automatic_variables.help.txt

  • About_break.help.txt

  • About_command_search.help.txt

  • About_command_syntax.help.txt

  • About_comparison_operators.help.txt

  • About_continue.help.txt

  • About_core_commands.help.txt

  • About_display.xml.help.txt

  • About_environment_variable.help.txt

  • About_escape_character.help.txt

  • About_execution_environment.help.txt

  • About_filter.help.txt

  • About_flow_control.help.txt

  • About_for.help.txt

  • About_foreach.help.txt

  • About_function.help.txt

  • About_globbing.help.txt

  • About_history.help.txt

  • About_if.help.txt

  • About_line_editing.help.txt

  • About_location.help.txt

  • About_logical_operator.help.txt

  • About_method.help.txt

  • About_pssnapins.help.txt

  • About_namespace.help.txt

  • About_object.help.txt

  • About_operator.help.txt

  • About_parameter.help.txt

  • About_parsing.help.txt

  • About_path_syntax.help.txt

  • About_pipeline.help.txt

  • About_property.help.txt

  • About_provider.help.txt

  • About_quoting_rules.help.txt

  • About_redirection.help.txt

  • About_ref.help.txt

  • About_regular_expression.help.txt

  • About_reserved_words.help.txt

  • About_scope.help.txt

  • About_script_block.help.txt

  • About_shell_variable.help.txt

  • About_signing.help.txt

  • About_special_characters.help.txt

  • About_switch.help.txt

  • About_system_state.help.txt

  • About_types.help.txt

  • About_commonparameters.help.txt

  • About_where.help.txt

  • About_while.help.txt

  • About_wildcard.help.txt

  • Default.help.txt

  • Microsoft.powershell.commands.management.dll

  • Microsoft.powershell.commands.management.dll-help.xml

  • Microsoft.powershell.commands.utility.dll

  • Microsoft.powershell.commands.utility.dll-help.xml

  • Microsoft.powershell.consolehost.dll

  • Microsoft.powershell.consolehost.dll-help.xml

  • Microsoft.powershell.security.dll

  • Microsoft.powershell.security.dll-help.xml

  • Microsoft.powershell.commands.management.resources.dll

  • Microsoft.powershell.commands.utility.resources.dll

  • Microsoft.powershell.consolehost.resources.dll

  • Microsoft.powershell.security.resources.dll

  • System.management.automation.resources.dll

  • System.management.automation.dll

  • System.management.automation.dll-help.xml

  • Dotnettypes.format.ps1xml

  • Filesystem.format.ps1xml

  • Registry.format.ps1xml

  • Certificate.format.ps1xml

  • Help.format.ps1xml

  • Types.ps1xml

  • Powershellcore.format.ps1xml

  • Powershelltrace.format.ps1xml

  • Pwrshmsg.dll

  • Pwrshsip.dll

  • Powershell.exe

  • Powershell.exe.mui

  • Pscustomsetuputil.exe

  • Pssetupnativeutils.exe

  • Profile.ps1

  • Releasenotes.rtf

  • Gettingstarted.rtf

  • Userguide.rtf

  • Quadfold.rtf

Нужна дополнительная помощь?

Привет друзья, меня зовут Ro8! В предыдущей статье мы с вами установили Windows Server 2008 R2 в режиме Server Core, в сегодняшней статье мы установим на Windows Server 2008 R2 (Server Core) средство автоматизации PowerShell 2.0.

Установка Windows PowerShell 2.0 на Windows Server 2008 R2 (Server Core)

В статье «Установка Windows Server 2008 R2 в режиме Server Core» мы установили на компьютер операционную систему Windows Server 2008 R2 в режиме Server Core.

После входа в систему перед нами появляется окно командной строки

Запустим Диспетчер задач введя в командной строке команду taskmgr

Откроется окно диспетчера задач

Выбираем «Новая задача».

Введем команду cmdи запустим еще один экземпляр командной строки

В итоге у нас есть два запущенных экземпляра командной строки

Перед тем, как выполнять установку Windows PowerShell, нам необходимо установить на компьютер компонент .net Framework 2.0

Для просмотра компонентов, доступных для установки выполним в первом экземпляре командной строки команду oclist

После выполнения команды oclist  можно увидеть, что компонент .net Framework 2.0 (NetFx2-ServerCore)не установлен

Для установки компонента NetFx2-ServerCore воспользуемся командой ocsetup NetFx2-ServerCore(выполняем данную команду во втором экземпляре командной строки)

После того, как команда ocsetup NetFx2-ServerCore отработает, в первом экземпляре командной строки выполним команду oclist для просмотра установленных компонентов

Как видим, компонент NetFx2-ServerCore уже установлен

Таким же образом используя команду oclistвидим, что компонент MicrosoftWindowsPowerShell пока не установлен

Для установки компонента MicrosoftWindowsPowerShell выполним во втором экземпляре командной строки команду ocsetup MicrosoftWindowsPowerShell

Выполняем в первом экземпляре командной строки команду oclist и видим, что компонент MicrosoftWindowsPowerShell установлен

Перейдем по пути C:WindowsSystem32WindowsPowerShellv1.0 выполнив команду cd WindowsSystem32WindowsPowerShellv1.0 

Посмотрим содержимое папки v1.0 выполнив команду dir /b. Как видим, в папке v1.0 присутствует файл powershell.exe

Запустим файл powershell.exe, выполнив команду powershell.exe 

Как видим, мы запустили экземпляр PowerShell, о чем свидетельствуют буквы PS 

Выполним к примеру в PowerShell команду get-processдля просмотра процессов на данном компьютере

Во всех версиях Windows, предшествовавших Server 2008, оболочка PowerShell устанавливалась отдельно как самостоятельное приложение. В Windows Server 2008 она является встроенным компонентом операционной системы во всех версиях, кроме Core. С выходом Windows Server 2008 R2 PowerShell будет поддерживаться и в базовой версии.

Включить PowerShell на сервере Windows Server 2008 можно одним из двух способов.

«Управление сервером»

Во-первых, установить PowerShell можно с помощью утилиты «Управление сервером» (Server manager). Для этого достаточно поставить флажок «Windows PowerShell» в разделе «Компоненты» (Features) (рис. A).

Включение PowerShell в Windows Server 2008

Рисунок A. Нажмите на изображении для увеличения.

Установка с помощью сценариев

Другой способ позволяет автоматизировать установку PowerShell и других компонентов Windows с помощью сценариев, что очень удобно для многих администраторов. Команда ocsetup дает возможность включить PowerShell в Windows Server 2008 одной строкой:

start ocsetup MicrosoftWindowsPowerShell

После выполнения сценария достаточно обновить окно «Управление сервером» — и PowerShell переместится в список установленных компонентов, а в меню «Пуск» (Start) в подпапке «Windows PowerShell 1.0» появится соответствующий ярлык. PowerShell готова к использованию.

Автор: Rick Vanover
Перевод: SVET

Оцените статью: Голосов

Введение

Порою с помощью PowerShell управлять Windows Server 2008 можно гораздо быстрее, чем с помощью привычых GUI-инструментов. В этой статье вы найдет 9 наиболее распространенных задач, которые могут быть реализованы с помощью PowerShell. (10 задача была исключена из перевода из-за того, что демонстрируемый в статье скрипт был неполным – Прим. переводчика).
По данной теме будет два поста. Материала много, материал хороший, но, к сожалению, размещение в одном посте сделает его нечитаемым.
Итак, какие задачи будут рассмотрены:

  1. Изменение пароля локального администратора с помощью PowerShell
  2. Перезагрузка или выключение сервера
  3. Перезапуск службы
  4. Остановка процесса
  5. Создание отчета об использовании диска
  6. Получаем 10 последних ошибок журнала событий
  7. Сбрасываем контроль доступа к папке
  8. Получаем server’s uptime
  9. Получаем информацию о Service Pack

Первые пять задач мы рассмотрим в этом посте, оставшиеся 4 последующем. Заинтересованных приглашаем под кат.

1. Меняем пароль локального администратора

Предположим Вы залогинились как доменный администратор на компьютере под Windows 7, который входит в Ваш домен. Теперь, предположим, Вы хотите сменить пароль локального администратора на удаленном сервере CHI-WIN7-22 в Чикаго. После использования пароля в течение определенного периода времени, его желательно сменить; процедуру необходимо повторять периодически.
Первое, что администратор делает для смены пароль администратора — создает ADSI объект для локального администратора на этом компьютере. Это делается в PowerShell следующим образом:

[ADSI]$Admin=”WinNT://CHI-WIN7-22/Administrator”

Произойдет извлечение учетной записи администратора на сервере CHI-WIN7-22 и присвоение ее ADSI объекту $Admin. Имя WinNT в этой строке чувствительно к регистру, примите это во внимание. Если Вы захотите подключиться к другому компьютеру, просто замените CHI-WIN7-22 на имя того компьютера, к которому Вы хотели бы подключиться.
Однако для начала необходимо узнать, как долго пароль используется, чтобы определить, пришло ли время менять его или нет. Информация из $Admin может быть получена следующим образом:

$Admin.PasswordAge

Выведется время, прошедшее с последней смены пароля. Результат показывается в секундах, переведем ее в дни (осуществим деление на 86400 (количество секунд в сутках)):

$Admin.PasswordAge.Value/86400

Обратите внимание, что было использовано свойство Value. Это было сделано потому, что PasswordAge хранится как коллекция, и поэтому нам необходимо сначала присвоить значение этой коллеции, чтобы вернуть ее в число, к которому можно применить операцию деления.
В итоге Вы можете изменить пароль, вызвав SetPassword метод и затем использовав новый пароль в качестве аргумента.

$Admin.SetPassword(“S3cre+WOrd”)

Внимание: По нажатию Enter, не ждите получения письмо подтверждения. Такового не будет! Изменения будет применены немедленно. То, что я здесь продемонстрировал, является методом, а не командлетом. Помимо прочего это значит, что в отличие от командлетов, SetPassword не поддерживает -whatif или —confirm.
Это все. Позвольте мне продемонстрировать все это PowerShell-картинках.

image

2. Перезагрузка или остановка сервера

Двигаемся дальше. Перед нами стоит задача перезагрузить или остановить сервер с помощью PowerShell. Как и в первом случае, предположим, что вы залогинены как доменный администратор на машине под Windows 7, которая входит в ваш домен.
Мы будем использовать два WMI-командлета – Restart-Computer и Stop-Computer. И хотя мы не будем их здесь показывать, стоит упомянуть, что эти командлеты принимают альтернативные учетные данные (alternate credentials). Альтернативные учетные данные позволяют Вам уточнить учетную запись пользователя (отличную от той, под которой вы залогинились), так что вы можете осуществлять действия, на которые эта (альтернативная) учетная запись имеет права.
Также среди приятного об этих командлетах – вы сможете использовать -whatif и —confirm. Это значит, если вы захотите перезапустить или выключить сервер, необходимо сначала убедиться, что вы делаете это на предназначенном для этого компьютере. Это удобно, когда вы осуществляете подобные операции с множеством компьютеров.
Для перезагрузки компьютера синтаксис такой:

Restart-Computer -ComputerName <string[ ]>

где -ComputerName <string[ ]> это массив строк, который может состоять как из имени одного, так и нескольких компьютеров. Stop-Computer используется практически тот же самый синтаксис. Например, если Вы хотите перезагрузить два компьютера CHI-DC02 и CHI-FP01, используйте следующую команду:

Restart-Computer “CHI-DC02”, “CHI-FP01”

Ниже приведен фактически скриншот PowerShell, в котором мы использовали аргумент –whatif. Используйте его, если вы просто хотите посмотреть, что случиться, если вы выполните команду.

image

Все достаточно просто. Давайте теперь усложним задачу. Предположим, что у вас есть список компьютеров в файле servers.txt. Используем командлет Get-Content, чтобы извлечь их имена из файла.

image

Итак, у вас есть ряд компьютеров, которые вы бы хотели периодически перезагружать, и вы храните их имена в текстовом файле. Каждый раз, когда вам нужно перезагрузить их, вы просто используйте командлет Get-Content. Ниже представлен пример работы Get-Content и Restart-Computer.

image

Сначала мы получаем содержимое файла, используя Get-Content. Для начала пропингуем этим компьютеры. В этом выражении, мы запустим test-connection, что фактически эквивалентно ping на каждом компьютере. -quiet возвращает значения true или false, а -count 2 означает, что каждый компьютер будет “пропингован” лишь дважды. Те компьютеры, которые будут успешно пропингованы, будут дальше запущены в работу.
Затем мы используем foreach. Цель этого такова: для каждого имени, которое проходит пинг-тест, выводится сообщение зеленым текстом, указывающее на перезагрузку компьютера. “$_” означает текущий объект в конвейере. Затем используем командлет Restart-Computer для перезагрузки тех компьютеров, которые пингуются. Мы также используем параметр –force, чтобы сбросить всех, кто залогинен на данном компьютере
Параметр –whatif используется для того, чтобы посмотреть, что произойдет, без реальной перезагрузки компьютеров.

3. Перезагрузка службы

Restart-Service, как следует из название, это командлет, который перезапускает службу. Хотя у него и отсутствует возможность подключаться к удаленному серверу, может быть активирован PowerShell Remoting, так что Вы можете выполнять ее локально на удаленном компьютере. Это бывает полезно, когда Вы хотите перезапустить службу на группе компьютеров.
Для локальной перезагрузки службы просто напишите Restart-Service “service”, где “service” – имя той службы, которую вы хотите перезагрузить. С другой стороны, если вы хотите перезагрузить службы на одной или нескольких удаленных машинах, используйте командлет Invoke-Command и PowerShell Remoting.
На скриншоте ниже показаны два примера работы командлеты Restart-Service для перезагрузки службы wuauserv (Windows Update). В первом примере Restart-Service выполняется локально. Во втором, она выполняется на удаленном сервере БД CHI-DB01с помощью командлета Invoke-Command.

image

По умолчанию Restart-Service не выводит никаких объектов, если вы не используете параметр -passthru. Дополнительная информация (Status, Name и другое) – результат его использования. Если служба запущена на нескольких компьютеров и вы хотите перезапустить их также, перечислите их через запятые.
То же самое можно сделать с использование WMI. Создадим WMI объект:

image

gwmi – это сокращенно для Get-WmiObject.
Давайте посмотрим на методы объекта. Введем Get-Member (сокращенно gm).

image

Как вы могли заметить, здесь отсутствует метод для перезапуска службы. А это значит, что сначала придется остановить службы через метод StopService и запустить снова с помощью StartService.
Вот как остановить службу, используя метод StopService объекта. Круглая скобка указывает на наличие метода. Если получили ReturnValue равным 0, значит служба успешно остановлена. В противном случае, обратитесь к документации MSDN для класса службы Win32.

image

Запускаем службу — метод StartService.

image

Проверяем: запустим команду get-service на этом компьютере. Get-service позволяет получить информацию о службе на удаленном компьютере. Пример запроса для удаленного компьютера CHI-DB01.

image

4. Остановка процесса

Еще одной частой задачей является остановка процесса. Используем для этого командлет Stop-Process. Он может быть выполнен как локально, так и на удаленной машине (см. пункт 3).
Существует два способа остановки процесса с помощью командлета Stop-Process.
Первый – простой. Запускаете Stop-Process и передаете ему имя или соответствующий ID процесса. Обратите внимание, что мы останавливаем “Calc” (Калькулятор Windows). В данном примере процесс запущен локально.

image

Второй способ связан с использованием командлета Get-Process для получения одного или нескольких процессов или передачи их в Stop-Process. Для примера взят процесс Notepad. Kill является сокращением для Stop-Process. Notepad запущен локально.

image

Двигаемся дальше. Перейдем к процессам, запущенным на удаленной машине. Для начала запустим, например, notepad на удаленном компьютере chi-fp01.

image

Затем, проверим, запущен ли процесс. Для этих целей используем ps, являющимся сокращением для Get-Process.

image

5. Создаем отчет об использовании дисков

Администраторы должны отслеживать свободное место, оставшееся на серверах. Это можно сделать, использовав WMI и класс Win32_LogicalDisk, которые дают нам информацию такую как ID устройства, размер диска, свободное места и прочую информацию.
Через WMI мы можем обращаться к локальным и удаленным компьютерам. Мы также можем выполнять эти запросы как одной, так и нескольких машинах. Также мы можем: экспортировать данные в .csv или базу данных, создавать текстовый или HTML-отчет или просто вывести результаты на экран.
Пример команды, выполняемой на локальном компьютере.

Get-WmiObject win32_logicaldisk -filter “drivetype=3” | Out-File c:ReportsDisks.txt

Мы используем командлет GetWmiObject для возвращения информации из класса Win32_LogicalDisk. Затем мы применяем -filter чтобы возвратить только информацию, для которой справедливо утверждение drivetype=3, которое означает фиксированные логические диски, типа C:. Это значит, что информация относительно о USB и сетевых дисках не будет включена. Полученная информация будет записана в файл Disks.txt.
Пример в PS.

image

Хотя вроде бы все нормально, лучше внести парочку улучшений. Например, добавить отображение свободного места в гигабайтах, а не байтах. Этим мы и займемся.
Чтобы это сделать создадим функцию Get-DiskUtil. Хотя в предыдущем примере мы все делали интерактивно, в этом случае давайте запишем функцию в файл, загрузим в ваш профиль к другим скриптам, которые можно использовать позже.
А вот и сама функция:

image

Давайте ее разберем.
Функция берет имя компьютера как параметр и задает его как имя локального компьютера по умолчанию.

image

Затем мы используем фрагмент скрипта Process, где свойство “имя компьютера” передается в функцию. “$_” указывает, что имя компьютера задается как переменная. В противном случае имя компьютера как будет воспринято как параметр.

image

Далее следует выражение GetWmiObject.

image

Вывод этого выражения передается в командлет Select-Object (сокращенно Select). Мы используем хеш-таблицы, чтобы создать пользовательское свойство под названием Computername. Фактически будет осуществлено переименование SystemName текущего объекта ($_) в Computername. DeviceID остается неизменным.

image

Сделаем еще парочку хеш-таблиц. Первая берет свойство Size и делит его на 1GB, вывод будет с двумя знаками после запятой и переименовывает свойство в SizeGB. Вторая производит то же самое со свойством Freespace.

image

Затем создаем свойство UsedGB, которого нет в WMI. Вычисляется разница между свойствами Size и FreeSpace и делится на 1GB.

image

В конце создаем еще одно свойство PerFree – свободно в процентах. Оно завершает функцию.

image

Ниже приведена работа функции для компьютера CHI-FP01, выведенная в таблице (Format-Table (или ft)) с авто форматированием (параметр –auto).

image

Все и так хорошо, но от этой функции мы можем получить больше. Поэтому предположим, что вам нужно еженедельно получать отчет об использовании дисков на всех серверах в вашей компании. Посмотрим, как этого можно достичь.
Для начала сохраним результаты нашего выражения в переменную $data, чтобы каждый раз не набирать эту команду. Затем, передадим результаты в объект where, пропингуем сервера (дважды) и передадим имя компьютера в созданную нами функцию Get-DiskUtil.

image

Данные будут храниться в переменной $data. Вы можете вытащить информацию из $data и отсортировать по computername, применив –auto. Информация также может быть направлена на печать (Out-Printer) или в файл (Out-File).

image

Конвертируем в csv:

image

Потом Вы можете импортировать этот csv файл для получения снимка статуса использования дисков на момент запуска команды:

image

Пример:

image

И напоследок: я покажу, как создать HTML отчет, доступ к которому можно получить из любого места.
Берем $data и передаем ее в Sort Computername. Результат передается в командлет ConvertTo-HTML. Вы можете присвоить заголовок и путь CSS. CSS необходим, так как ConverToHTML не обладает возможностями форматирования. Поэтому если вы хотите, чтобы отчет выглядит прилично, понадобится CSS файл. На последнем этапе пишем результат в файл.

image

Теперь файл готов, его можно посмотреть с помощью команды start.

image

Пример HTML отчета.

image

Помните, что информацию необходимо держать информацию актуальной.

Upd:
В посте приведен перевод статьи с портала petri.co.il
Top 10 Server 2008 Tasks done with PowerShell – Part 1

Вторую часть перевода смотрите здесь.

P.S. Не могли не обратить внимание, что та же задача получения информации о свободном месте на дисках может решаться с помощью нашей бесплатной программы NetWrix Disk Space Monitor.
Посмотреть как программа работает можно на youtube, cкачать здесь , а активировать бесплатную лицензию без ограничения срока действия (и вообще без каких либо ограничений) можно используя следующие данные:

License name: NetWrix Disk Space Monitor Freeware License
License count: 1000000
License code: EhEQEhoaEhEQEhYTEhYaExQa

Windows Management Framework (WMF) 5.1 contains PowerShell 5.1. By default Windows Server 2008 R2 SP1 runs the older PowerShell version 2. By downloading and installing WMF 5.1 to a Windows Server 2008 R2 system, we can upgrade it to PowerShell version 5.1.


This post is part of our Microsoft 70-744 Securing Windows Server 2016 exam study guide series. For more related posts and information check out our full 70-744 study guide.


Download WMF 5.1 to a Windows Server 2008 R2 system

This also works with Windows Server 2012 and 2012 R2. By default Windows Server 2016 already has PowerShell 5.0 installed, so this is not required there. Note that to upgrade Windows Server 2008 R2 you must be using Service Pack 1 (SP1).

First we’ll confirm the verison of PowerShell on our 2008 R2 system. This can be done by opening PowerShell, and running $PSVersionTable, as shown below.

PS C:> $PSVersionTable

Name                           Value
----                           -----
CLRVersion                     2.0.50727.4927
BuildVersion                   6.1.7600.16385
PSVersion                      2.0
WSManStackVersion              2.0
PSCompatibleVersions           {1.0, 2.0}
SerializationVersion           1.1.0.1
PSRemotingProtocolVersion      2.1

As expected we have PowerShell version 2.0, which is the default in this operating system.

WMF 5.0 or higher is needed to provide the just-enough administration (JEA) PowerShell feature implemented in Windows Server 2016 into the older 2008 R2 SP1 operating system.

Before we download and install WMF though, we must first install .NET Framework 4.5.2 or later, as this is a prerequisite for WMF 5.1 in Windows Server 2008 R2 SP1, and by default 2008 R2 SP1 comes with .NET 3.5. You can download a newer version of .NET from here: https://www.microsoft.com/net/download/framework

After installation has completed you’ll need to perform a system reboot to proceed.

Next download Windows Management Framework (WMF) 5.1 from Microsoft: https://www.microsoft.com/en-us/download/details.aspx?id=54616

A system reboot is not required after installing WMF.

Once installed open PowerShell and run $PSVersionTable again, we can now see that PSVersion is listed as 5.1 as expected.

PS C:> $PSVersionTable

Name                           Value
----                           -----
PSVersion                      5.1.14409.1005
PSEdition                      Desktop
PSCompatibleVersions           {1.0, 2.0, 3.0, 4.0...}
BuildVersion                   10.0.14409.1005
CLRVersion                     4.0.30319.42000
WSManStackVersion              3.0
PSRemotingProtocolVersion      2.3
SerializationVersion           1.1.0.1

We will now be able to configure our Windows Server 2008 R2 SP1 system to use just-enough administration (JEA), as we’ll cover in future posts.

Summary

By first updating the .NET Framework and then installing either WMF 5.0 or 5.1, we can upgrade our PowerShell version to support Just-Enough Administration (JEA) in older versions of Windows, such as Windows Server 2008 R2, 2012, and 2012 R2.


This post is part of our Microsoft 70-744 Securing Windows Server 2016 exam study guide series. For more related posts and information check out our full 70-744 study guide.

Обновлено 11.12.2019

PowerShell logoДобрый день уважаемые читатели блога pyatilistnik.org, сегодня хочу рассказать как установить PowerShell 3.0 в windows server 2008 R2. Windows PowerShell — расширяемое средство автоматизации от Microsoft, состоящее из оболочки с интерфейсом командной строки и сопутствующего языка сценариев. Впервые публично язык был продемонстрирован на Профессиональной конференции разработчиков (англ. Professional Developers Conference, PDC) в сентябре 2003 года под кодовым названием Monad. Версия 1.0 выпущена в 2006 году.

Для начала нужно определиться какая разрядность у вашей ОС, для этого вам поможет статья (Как определить разрядность в Windows 10, Windows 8.1, Windows 7 / Как определить тип системы), на основании этого запускаем нужное обновление в виде powershell, которое вы легко можете найти на официальном сайте Microsoft. Обновление имеет вид автономного пакета. Жмем да.

Как установить PowerShell 3.0 d windows server 2008 R2

Как установить PowerShell 3.0 d windows server 2008 R2

Принимаем лицензионное соглашение

Как установить PowerShell 3.0 d windows server 2008 R2

Как установить PowerShell 3.0 d windows server 2008 R2

Начинается процесс инсталляции обновления.

Как установить PowerShell 3.0 d windows server 2008 R2

Как установить PowerShell 3.0 d windows server 2008 R2

И видим что все установилось правильно. Для того чтобы обновление применялось перезагружаемся, это обязательно.

Как установить PowerShell 3.0 d windows server 2008 R2

Как установить PowerShell 3.0 d windows server 2008 R2

Скачать можно данное обновление тут. Вот так вот просто произвести установку PowerShell 3.0 d windows server 2008 R2. Хочу отметить, что данная процедура будет применима и к Windows 7, так что вы легко сможете в ней это повторить. Материал сайта Pyatilistnik.org

Дек 11, 2019 23:50

description ms.date title

This article describes how to install WMF 5.1 and its prerequisites.

10/07/2021

Install and configure WMF 5.1

Install and Configure WMF 5.1

[!IMPORTANT]
WMF 5.0 is superseded by WMF 5.1. Users with WMF 5.0 must upgrade to WMF 5.1 to receive support.
WMF 5.1 requires the .NET Framework 4.5.2 (or above). Installation will succeed, but key
features will fail if .NET 4.5.2 (or above) is not installed.

Download and install the WMF 5.1 package

Download the WMF 5.1 package for the operating system and architecture you wish to install it on:

Operating System Prerequisites Package Links
Windows Server 2012 R2 Win8.1AndW2K12R2-KB3191564-x64.msu
Windows Server 2012 W2K12-KB3191565-x64.msu
Windows Server 2008 R2 .NET Framework 4.5.2 Win7AndW2K8R2-KB3191566-x64.ZIP
Windows 8.1 x64: Win8.1AndW2K12R2-KB3191564-x64.msu
x86: Win8.1-KB3191564-x86.msu
Windows 7 SP1 .NET Framework 4.5.2 x64: Win7AndW2K8R2-KB3191566-x64.ZIP
x86: Win7-KB3191566-x86.ZIP
  • WMF 5.1 Preview must be uninstalled before installing WMF 5.1 RTM.
  • WMF 5.1 may be installed directly over WMF 5.0 or WMF 4.0.
  • It is not required to install WMF 4.0 prior to installing WMF 5.1 on Windows 7 and Windows
    Server 2008 R2.

Install WMF 5.1 for Windows Server 2008 R2 and Windows 7

[!NOTE]
Installation instructions for Windows Server 2008 R2 and Windows 7 have changed, and differ from
the instructions for the other packages. Installation instructions for Windows Server 2012 R2,
Windows Server 2012, and Windows 8.1 are below.

WMF 5.1 Prerequisites for Windows Server 2008 R2 SP1 and Windows 7 SP1

Installation of WMF 5.1 on either Windows Server 2008 R2 SP1 or Windows 7 SP1, requires the
following:

  • Latest service pack must be installed.
  • WMF 3.0 must not be installed. Installing WMF 5.1 over WMF 3.0 will result in the loss of the
    PSModulePath ($env:PSModulePath), which can cause other applications to fail. Before
    installing WMF 5.1, you must either un-install WMF 3.0, or save the PSModulePath and then
    restore it manually after WMF 5.1 installation is complete.
  • WMF 5.1 requires at least
    .NET Framework 4.5.2. You can install
    Microsoft .NET Framework 4.5.2 by following the instructions at the download location.

Installing WMF 5.1 on Windows Server 2008 R2 and Windows 7

  1. Navigate to the folder into which you downloaded the ZIP file.

  2. Right-click on the ZIP file, and select Extract All…. The ZIP file contains two files: an
    MSU and the Install-WMF5.1.ps1 script file. Once you have unpacked the ZIP file, you can copy
    the contents to any machine running Windows 7 or Windows Server 2008 R2.

  3. After extracting the ZIP file contents, open PowerShell as administrator, then navigate to the
    folder containing the contents of the ZIP file.

  4. Run the Install-WMF5.1.ps1 script in that folder, and follow the instructions. This script will
    check the prerequisites on the local machine, and install WMF 5.1 if the prerequisites have been
    met. The prerequisites are listed below.

    Install-WMF5.1.ps1 takes the following parameters to ease automating the installation on
    Windows Server 2008 R2 and Windows 7:

    • AcceptEula: When this parameter is included, the EULA is automatically accepted and will
      not be displayed.
    • AllowRestart: This parameter can only be used if AcceptEula is specified. If this parameter
      is included, and a restart is required after installing WMF 5.1, the restart will happen
      without prompting immediately after the installation is completed.

WinRM Dependency

Windows PowerShell Desired State Configuration (DSC) depends on WinRM. WinRM is not enabled by
default on Windows Server 2008 R2 and Windows 7. Run Set-WSManQuickConfig, in a Windows PowerShell
elevated session, to enable WinRM.

Install WMF 5.1 for Windows Server 2012 R2, Windows Server 2012, and Windows 8.1

Install from Windows File Explorer

  1. Navigate to the folder into which you downloaded the MSU file.
  2. Double-click the MSU to run it.

Installing from the Command Prompt

  1. After downloading the correct package for your computer’s architecture, open a Command Prompt
    window with elevated user rights (Run as Administrator). On the Server Core installation options
    of Windows Server 2012 R2, Windows Server 2012, or Windows Server 2008 R2 SP1, Command Prompt
    opens with elevated user rights by default.

  2. Change directories to the folder into which you have downloaded or copied the WMF 5.1
    installation package.

  3. Run one of the following commands:

    • On computers that are running Windows Server 2012 R2 or Windows 8.1 x64, run
      Win8.1AndW2K12R2-KB3191564-x64.msu /quiet /norestart.
    • On computers that are running Windows Server 2012, run
      W2K12-KB3191565-x64.msu /quiet /norestart.
    • On computers that are running Windows 8.1 x86, run
      Win8.1-KB3191564-x86.msu /quiet /norestart.

    [!NOTE]
    Installing WMF 5.1 requires a reboot. Using the /quiet option alone will reboot the system
    without warning. Use the /norestart option to avoid rebooting. However, WMF 5.1 will not be
    installed until you have rebooted.

Like this post? Please share to your friends:
  • Windows phone как вернуться к заводским настройкам
  • Windows phone для mac скачать бесплатно
  • Windows phone для htc desire hd
  • Windows powershell грузит диск windows 10
  • Windows phone вход в учетную запись