ホーム >  windows >  Windows7にPower Shell 5.1をインストールする

投稿日:   |  最終更新日:

Windows7にPower Shell 5.1をインストールする

windows

windows7で最新のVagrantを使用しますが、相性が悪いです。windowsの機能である「Power Shell」をアップデートすれば解決するそうなので、実際に行ってみます。

Power Shellとは?

Microsoft が提供する、Windowsシステム管理用の「コマンドシェル」であり「スクリプト言語」です。PowerShell(正式には、Windows PowerShell)は、「Windows Server 2008 R2 / Windows 7」から標準で搭載されたWindows管理用の CLI ツールです。

PowerShellでは、GUIの管理方法に比べより「便利」に「強力」に「使いやすく」なっています。

Power Shellを更新する理由

今回は、Vagrantの最新版をWindows7から利用するため、初期バージョン「2.0.50727.8806」から「5.1.14409.1005」に更新します。他にも更新する理由として、一般的に以下の理由がよく挙がります。

  • PowerShell を使ったシェル開発でバージョンが合わない
  • PowerShell の機能を使ったアプリが動作しない

準備

当サイトでは、Windows7 32bitを使用して説明します。

環境

OS Windows7 Professional Service Pack 1 (32bit)
powerShell 2


アップデートの流れ

Windows Power Shell の アップデート の流れは以下のようになります。ざっくり言うと、WMFをダウンロードして、更新用スクリプトを実行するだけです。

  • OSに対応する Windows Management Framework(WMF)をダウンロード
  • Windows PowerShell の実行ポリシーを変更
  • WMF の更新用スクリプトを実行
  • Windows Update スタンドアロン インストーラー 実行
  • Windows PowerShell の実行ポリシーを戻す

PowerShellのスクリプトは Windows7 など多くのOSでデフォルトでは実行が禁止です。セキュリティを一時的に弱める操作も途中で行います。

PowerShellの起動・バージョン確認

①Windowsの「スタートボタン」→「すべてのプログラム」→「アクセサリ」→「Windows PowerShell」を右クリックします。

「管理者として実行(A)…」で起動します。

②powerShellが起動したら、以下のコマンドを実行します。

$PSVersionTable

以下のような結果が表示されます。

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

「CLRVersion」の項目がPowerShellのバージョンです。

PowerShell バージョン:2.0.50727.8806

Windows Management Framework(WMF)をダウンロード

powerShellのバージョンをアップするため、WMFをダウンロードします。WMFはバージョンがありますので、OSに適合したバージョンを使いましょう。

Windows Management Framework(WMF)とは?

WMFは、Windowsのいろいろな機能を管理します。その機能の1つに「Windows PowerShell」があります。よって、WMFをバージョンアップすれば PowerShell もバージョンアップします。

Windows Management Framework (WMF) は配信メカニズムであり、さまざまな種類の Windows や Windows Server に一貫した管理インターフェイスを提供します。(引用:Windows Management Framework

ダウンロードする前に、WindowsとWMFの互換性を調べる

WMFをダウンロードする前に、以下のページで自身のWindowsのバージョンと、それに対応するWMFの互換性を確認しましょう。

Windows Management Framework

Window7SP1の場合、WMF 5.1が「可」なので最新で更新できます。この5.1をダウンロードします。

WMF5.1をダウンロード

①WMFを「Microsoft Dwonload Center」からダウンロードします。

Windows Management Framework 5.1

②Downloadをクリックします。

③WMFをダウンロードします。私はWindows7の32bitですので以下のファイルをダウンロードします。

Win7-KB3191566-x86.zip

④ZIPファイルを解凍します。以下の2つのファイルがあることを確認してください。

  • Install-WMF5.1.ps1
  • Win7-KB3191566-x86.msu

Install-WMF5.1.ps1は更新用スクリプトファイルです。

.musは更新プログラムッケージです。


Windows PowerShellの実行ポリシーを変更

WMFの更新スクリプトを実行する前に、PowerShellの実行ポリシーを変更します。Windows7ですが、デフォルトでPowerShellスクリプト(.ps1) が実行できません。

「Install-WMF5.1.ps1」は、「PowerShell」スクリプトのファイルです。

PowerShellの実行ポリシーは以下の通りになります。

Restricted 個別のコマンドは許可されますが、スクリプトは実行されません。すべてのスクリプト ファイルの実行を防止します。
AllSigned 信頼された発行元によって署名されているスクリプトは実行可能です。不明の場合は、確認メッセージが表示されます。

①現在の実行ポリシーがRestrictedであるか確認します。以下のコマンドを実行します。

Get-ExecutionPolicy

Restricted

デフォルトでは、Restricted(全てのスクリプトが実行禁止)の実行ポリシーになっています。ウィルスなどでPowerShellスクリプトを悪用される危険性があるため、今回のように特別な理由がない限りは変更しないようにしましょう。

②以下のコマンドで実行ポリシーを「AllSigned」に変更します。

Set-ExecutionPolicy AllSigned

③変更を確認します。

Get-ExecutionPolicy

AllSigned

PowerShellスクリプトInstall-WMF5.1.ps1を実行

あとは、ダウンロードしたファイル「Install-WMF5.1.ps1」を実行し、インストーラーに従って進めるだけです。

①「Win7-KB3191566-x86.msu」を実行します。

同意して次へ。

②PCを再起動します。

③PowerShellを起動し、バージョンを確認します。以下のコマンドを実行します。

$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

PSVersionが「5.1.14409.1005」になっています。

④最後にセキュリティポリシーを元の「Restricted」に戻します。

Set-ExecutionPolicy Restricted

現在の実行ポリシーがRestrictedであるか確認します。

Get-ExecutionPolicy

Restricted


トラックバック用のURL
プロフィール

名前:イワサキ ユウタ 職業:システムエンジニア、ウェブマスター、フロントエンドエンジニア 誕生:1986年生まれ 出身:静岡県 特技:ウッドベース 略歴 20

最近の投稿
人気記事
カテゴリー
広告