Оболочка windows powershell не установлена server 2016

Устанавливаем PowerShell в старых версиях Windows

Установка PowerShell в Windows

PowerShell — это современная замена комадной строки в Windows, альтернатива Bash от Microsoft и просто мощный инструмент в умелых руках. Тем не менее, есть он далеко не во всех операционных системах Windows — первой операционной системой, в которой был встроен PowerShell, была Windows 7. К счастью, установить его можно и на более старые системы — такие как Windows XP, Vista и их серверные аналоги. Делается это с помощью установки комплекта Windows Management Framework.

Программная часть компьютера при этом должна соответствовать следующим требованиям:

Операционная система:
Windows XP с установленным Service Pack 3
Windows Server 2003 с установленными Service Pack 2
Windows Vista с установленными Service Pack 1 или Service Pack 2
Windows Server 2008 с установленными Service Pack 1 или Service Pack 2

Установленный Microsoft .NET Framework 2 (так же подходит .NET Framework 3 и .NET Framework 3.5).

Скачать обновления для нужной операционной системы, содержащие в себе Windows Management Framework, в том числе Windows PowerShell 2.0 и WinRM 2.0 можно по следующим ссылкам:

Windows XP и Windows Embedded (обновление KB968930):

Windows Server 2003 (обновление KB968930):

Windows Server 2003 x64 (обновление KB968930):

Windows Vista (обновление KB968930):

Windows Vista x64 (обновление KB968930):

Windows Server 2008 (обновление KB968930):

Windows Server 2008 x64 (обновление KB968930):

После установки, исполняемый файл PowerShell можно будет найти по адресу C:\WINDOWS\system32\WindowsPowerShell\v1.0, а так же в меню Пуск.

Как установить PowerShell 7 в Windows 10

4 марта 2020 года Microsoft анонсировала PowerShell 7.0. Это последнее крупное обновление PowerShell, межплатформенной оболочки командной строки и языка сценариев Microsoft. В данной статье рассказано, что нового в PowerShell 7 и как вы можете установить его на свой ПК с Windows.

Что нового в PowerShell 7?

Последняя версия, PowerShell 7, основана на предыдущем PowerShell Core 6.1. Она продолжает поддерживать кроссплатформенное развёртывание и добавляет множество новых функций, командлетов и исправлений ошибок. Некоторые из наиболее важных новых функций включают в себя:

  • Распределение по конвейеру с помощью ForEach-Object. Выполняйте итерацию по элементам коллекции параллельно с новым параметром -Parallel или задайте максимальное число потоков (по умолчанию пять) с параметрами -ThrottleLimit.
  • Добавление новых операторов:

Тернарный оператор «? : »: Работает так же, как оператор if-else, сравнивая два выражения с условием, чтобы увидеть, является ли оно истинным или ложным, например,

Операторы «||» и «&&»: оператор && выполняет правую часть выражения, если левая часть завершилась успешно. И наоборот, оператор || выполняет правую часть только в случае неудачи левой части.

  • Командлет Get-Error. Упрощённое и динамическое представление ошибок для более простого изучения самой последней ошибки в текущем сеансе.
  • Автоматические уведомления о новых версиях. Показ уведомлений для пользователей о появлении новой версии PowerShell. Функция обновления по умолчанию проверяет новые выпуски один раз в день.
Читайте также:  Указатели для мыши windows 10 геймерские

В дополнение к перечисленным выше новым функциям Microsoft добавила множество других командлетов, экспериментальные улучшения и добавила PowerShell 7 в свой выпуск для долгосрочного обслуживания, который позволит ей получать обновления, пока поддерживается .Net 3.1. Полный список всего нового, исправлений и улучшений можно найти в журнале изменений Github для PowerShell 7.

Как установить PowerShell 7 с пакетом MSI

PowerShell 7 доступен для Windows, macOS и Linux. Мы покажем вам, как установить его на Windows 10.

Первый метод, который мы рассмотрим, использует MSI-файл для установки PowerShell. Пакеты MSI работают почти идентично файлу EXE и позволяют устанавливать программу с использованием графического интерфейса пользователя. Это метод установки, который использует только необходимые и ключевые файлы. Все, что вам нужно сделать, — это дважды щёлкнуть по файлу, чтобы запустить мастер установки.

Примечание. PowerShell 7 устанавливается и работает параллельно с Windows PowerShell 5.1, которая поставляется с Windows 10, но заменяет PowerShell Core 6.x. Если вам нужно запустить PowerShell 6 параллельно с PowerShell 7, вам необходимо установить его через ZIP-пакет.

Чтобы загрузить пакет, запустите браузер и перейдите на страницу релизов PowerShell Github. Прокрутите вниз до раздела «Assets» и найдите там файл MSI (PowerShell-*-win-x64.msi), чтобы загрузить его.

Обязательно выберите правильный пакет для вашей версии Windows, x64 для 64-разрядных или x86 для 32-разрядных систем.

При появлении запроса выберите место для загрузки и нажмите «Сохранить», чтобы начать загрузку.

После завершения загрузки перейдите в папку, в которой находится файл, и дважды щёлкните его, чтобы запустить установку.

Как установить PowerShell 7 с помощью команды

Разработчики PowerShell также создали скрипт, который можно вызывать непосредственно из PowerShell. Это однострочный командлет, который автоматически загружает и запускает мастер установки. Все, что вам нужно сделать, это вставить фрагмент кода и нажать клавишу Enter.

Запустите PowerShell и скопируйте/вставьте в окно следующий командлет:

Нажмите клавишу Enter, и PowerShell запустит команду и начнёт загрузку.

Установщик PowerShell 7

Когда откроется мастер установки, нажмите «Next», чтобы установить PowerShell 7.

На следующем экране выберите папку, где будут размещены файлы PowerShell 7 и нажмите «Next»:

Затем вы решаете, какие дополнительные функции включить при установке. Вы можете включить или отключить следующие четыре параметра:

  • Add PowerShell to Path Environment Variable: добавляет PowerShell в переменную среды Windows Path и позволяет вызывать PowerShell из любой другой оболочки или терминала.
  • Register Windows Event Logging Manifest: добавляет PowerShell в манифест регистрации событий Windows и позволяет регистрировать события из экземпляра PowerShell.
  • Enable PowerShell Remoting: Включает возможность удалённого запуска команд.
  • Add ‘Open here’ Context Menus to Explorer: добавляет параметр в контекстное меню, вызываемое правой кнопкой мыши, который открывает экземпляр PowerShell в папке, которую вы щёлкнули.
Читайте также:  Стандартные файлы папки windows

Нажмите «Next» после выбора всех дополнительных функций, которые вы хотите.

Нажмите «Intall», чтобы начать установку. Появится приглашение UAC с запросом прав администратора для установки пакета. Нажмите «Да», чтобы продолжить.

После завершения работы мастера установки нажмите «Готово» для выхода.

Как открыть PowerShell 7

После завершения установки вы можете открыть PowerShell 7 несколькими способами.

Если вы выбрали параметры «Add PowerShell to Path Environment Variable» и «Add ‘Open here’ Context Menus to Explorer», вы можете ввести в командной строке

или щёлкнуть правой кнопкой мыши папку и выбрать PowerShell 7 → Open here.

Однако одним из самых простых способов является ввод в строку поиска «pwsh». После этого нажмите Enter или кликните на иконке PowerShell мышкой. Здесь же вы можете запустить PowerShell 7 с правами Администратора.

Чтобы убедиться, что вы используете PowerShell 7, посмотрите на заголовок окна:

Для обновления справки выполните команду:

Если предыдущая команда завершилась ошибкой, то попробуйте обновить справку так:

Управление ролями и компонентами Windows Server из PowerShell

В Windows Server 2012R2/2016/2019 вы можете устанавливать и удалять различные роли и компоненты сервера через графический Server Manager. Однако в большинстве случаев эти же самые операции можно выполнить гораздо быстрее из консоли PowerShell. В этой статье мы рассмотрим особенности управления ролями и компонентами в актуальных версиях Windows Server.

Как вывести все установленные роли и компоненты Windows Server?

Чтобы вывести список всех доступных ролей и компонентов Windows Server используется командлет Get-WindowsFeature . Если выполнить его без параметров, появится информация обо всех компонентах.

Как вы видите, отображается название компонента (Display Name), его системное имя (Name) и состояние (Install State: Installed, Available или Removed). Список ролей и компонентов представляет собой дерево со вложенными ролями, которое напоминает то, которые вы видите при установке ролей через графический Server Manager. Для установки и удаления ролей и компонентов через PowerShell, вам нужно знать их системное имя, которое содержится в столбце Name.

Роли и компоненты удаляются из образа так:

Uninstall-WindowsFeature –Name DHCP –Remove

Чтобы установить удаленную роль, воспользуйтесь командлетом:

Install-WindowsFeature DHCP (понадобится доступ в Интернет)

Либо вы можете восстановить компоненты их дистрибутива с вашей версией Windows Server:

Install-WindowsFeature DHCP -Source E:\sources\sxs

Вы можете вывести список установленных компонентов сервера:

Get-WindowsFeature | Where-Object <$_. installstate -eq "installed">| ft Name,Installstate

Судя по скриншоту, данный сервер используется как файловый сервер (роли FileAndStorage-Services, Storage-Services). Большинство оставшихся компонентов используются для управления и мониторинга сервера.

Если вы не знаете точно имя роли, можно использовать знаки подстановки. Например, чтобы проверить какие из web компонентов роли IIS установлены, выполните (немного сократим синтаксис):

Get-WindowsFeature -Name web-* | Where installed

Вы можете получить список установленных компонентов на удаленном Windows Server:

Get-WindowsFeature -ComputerName msk-prnt1 | Where installed | ft Name,Installstate

Судя по установленным ролям Print-Services и Print-Server, этот сервер используется в качестве сервера печати.

Вы можете использовать командлет Get-WindowsFeature для поиска серверов в домене, на которых установлена определенная роль. Вы можете искать на серверах в определенном OU Active Directory с помощью командлета Get-ADComputer из модуля ActiveDirectory for PowerShell, или по указанному списку серверов ( $servers = (‘server1’, ‘server2’) ). Например, нам нужно найти все файловые сервера c ролью FileAndStorage-Services в указанном контейнере AD (я использую редактор PS — Visual Studio Code)

Читайте также:  Simpletv для windows для него есть уникальный плагин

import-module activedirectory
$Servers=get-adcomputer -properties * -Filter -SearchBase ‘OU=Servers,OU=MSK,DC=winitpro.ru,DC=ru’ |select name
Foreach ($server in $Servers)
<
Get-WindowsFeature -name FileAndStorage-Services -ComputerName $server.Name | Where installed | ft $server.name, Name, Installstate
>

В результате у нас появился список серверов, на которых установлена данная роль.

Установка ролей и компонентов Windows Server из PowerShell

Для установки ролей и компонентов в Windows Server используется командлет Install-WindowsFeature.

Чтобы установить роль DNS на текущем сервере и инструменты управления (в том числе модуль Powershell – DNSServer), выполните:

Install-WindowsFeature DNS -IncludeManagementTools

По-умолчанию командлет устаналивает все необходимые зависимые роли и компоненты при установке роли. Чтобы вывести список зависимостей до установки воспользуйтесь параметров.
Install-WindowsFeature -name UpdateServices -whatif

Например, для установки роли сервера обновлений WSUS, необходимо установить некоторые компоненты IIS.

What if: Continue with installation?
What if: Performing installation for «[Windows Server Update Services] Windows Server Update
What if: Performing installation for «[Windows Server Update Services] WID Database».
What if: Performing installation for «[Windows Server Update Services] WSUS Services».
What if: Performing installation for «[Web Server (IIS)] Windows Authentication».
What if: Performing installation for «[Web Server (IIS)] Dynamic Content Compression».
What if: Performing installation for «[Web Server (IIS)] Performance».
What if: Performing installation for «[Web Server (IIS)] Static Content».
What if: Performing installation for «[Windows Internal Database] Windows Internal Database».
What if: The target server may need to be restarted after the installation completes.

Чтобы установить роль Remote Desktop Session Host, службу лицензирования RDS и утилиты управления RDS на удаленном сервере, воспользуйтесь командой:

Install-WindowsFeature -ComputerName msk-rds21 RDS-RD-Server, RDS-Licensing –IncludeAllSubFeature –IncludeManagementTools –Restart

C параметром –Restart сервер будет автоматически перезагружен, если установленный компонент это потребует.

Также можно установить компонент такой командой (например роль SMTP сервера):

Get-WindowsFeature -Name SMTP-Server | Install-WindowsFeature

Деплой ролей на множество серверов Windows Server

Еще одна интересная возможность при развертывании однотипных серверов. Вы можете установить необходимые компоненты на эталонном Windows Server и экспортируете список установленных ролей в CSV файл:

Get-WindowsFeature | where <$_.Installed -eq $True>| select name | Export-Csv C:\ps\Roles.csv -NoTypeInformation –Verbose

Потом вы можете использовать этот CSV файл для установки такого же набора ролей на других типовых серверах:

Import-Csv C:\PS\Roles.csv | foreach

Если роль или компонент уже установлен, команда вернет NoChangeNeeded и продолжит установку следующей роли.

Либо для установки одинакового набора ролей сразу на нескольких серверах можно использовать такую команду:

$servers = (‘srv1’, ‘srv2’,’srv3’)
foreach ($server in $servers)

Как удалить роль или компонент в Windows Server с помощью PowerShell?

Для удаления ролей и компонентов Windows Server используется командлет Remove-WindowsFeature .

Например, чтобы удалить роль принт-сервера, выполните команду:

Remove-WindowsFeature Print-Server -Restart

Оцените статью