| Windows Server 2008 R2の真価 ―― 実質新世代サーバOSの真の実力を知る ―― 第3回 進化したPowerShell 2.0
Microsoft MVP |
| 「Windows Server 2008の真価」は、2009年10月に出荷が予定されている、Windows Server 2008の後継OSである、Windows Server 2008 R2の注目機能について解説するコーナーです。 |
Windows Server 2008 R2には、従来から広く利用されているコマンド・プロンプトよりも高機能なシェルである、「Windows PowerShell 2.0」が標準機能として付属している。本稿ではWindows Serverの標準機能となったPowerShell 2.0の概要を述べ、PowerShellがWindows Server管理者にとってどのような変革をもたらすのかについて解説する。なおこのPowerShell 2.0は同時期に出荷が開始されるクライアントOSであるWindows 7でも利用できる。本稿の解説は特に断らない限り、Windows Server 2008 R2でもWindows 7にも適用可能である。なおPowerShellの基本的な機能については以下の記事などを参照していただきたい。
| [参考]従来OS向けのPowerShell 2.0 |
| Windows XPやWindows 2003、Windows Vista、Windows Server 2008向けのPowerShell 2.0の正式版は、2009年10月末に公開された。以下のサポート技術情報内のリンクからダウンロードできる。PowerShell 2.0単体では配布されておらず、「Windows Management Framework Core(WinRM 2.0+Windows PowerShell 2.0)」として配布されている。インストール方法の詳細などは以下のページを参照していただきたい。 ・Description of the Windows Management Framework on Windows XP, Windows Server 2003, Windows Vista, and Windows Server 2008(サポート技術情報) ・Windows XP や Windows Server 2003、Windows Vista は、Windows Server 2008 では、Windows 管理フレームワークの説明[機械翻訳] (サポート技術情報) |
PowerShellが登場した背景
PowerShellはその名のとおり、Windows OS向けのシェルである。シェルという言葉やその機能はUNIXで広く知られるようになったが、OSの核であるカーネルを覆い隠し、ユーザーや管理者がOSを対話的に操作するためのプログラム機能のことである。Windows Serverでは従来から(クライアントOSでも同様だが)、GUI(Graphical User Interface)のシェルであるエクスプローラが主に使われている。ご存じのとおりエクスプローラを用いると、ファイル操作、デスクトップ・アイコンからのプログラムの起動、タスク・バーによるプログラムの切り替えや、コントロール・パネルでの各種設定などがマウス・オペレーションにより可能である。
一方でWindows Serverにはコマンド・プロンプトというCUI(Character User Interface)ベースのシェルも存在している。コマンド・プロンプトそのものはコンソール・アプリケーションであるため、入力も出力もすべて文字列である。つまり、マウス・オペレーションではなくユーザーや管理者はキーボードからコマンドを入力し、結果は文字列で表示される。
Windows Serverを管理する場合、エクスプローラとコマンド・プロンプトを併用するケースが多いのではないだろうか。なぜならば、両者ともメリットとデメリットがそれぞれあるからだ。エクスプローラおよびそこから起動されるGUIアプリケーション(MMCコンソールをベースに動作する管理ツールを含む)を使用した管理は、非常に直感的である。画面に表示されたテキスト・ボックスに文字を入力したり、ボタンをクリックしたりするだけで各種設定が行える。その半面、同様の操作を繰り返す場合は、何度も同じような操作を、繰り返し手作業で行わなければならない。だがコマンド・プロンプトを使えば、このデメリットを補うことができる。コマンド・プロンプトでは繰り返し(反復)処理を行うためのコマンドが用意されているし、一連の操作をテキスト・ファイルであるバッチ・ファイルに記述しておき、必要に応じて記述しておいた操作を繰り返し何度も実行することができる。
さて以上の説明だけだと、Windows Serverは何のスキもない完成された管理機能を持っていると思えるかもしれない。しかし、実際はコマンド・プロンプトにはデメリットがいろいろとある。まず、コマンド・プロンプトから呼び出す各種コマンドが非常に多く存在するうえ、そのコマンド命名規則も、コマンドに付けるオプションもまちまちである(注:コマンドにはコマンド・プロンプトそのものが持つ内部コマンドと、コマンド・プロンプトから実行するコンソール・アプリケーションである外部コマンドが存在するが、利用者側からは普通は意識しないでよい)。そのため、どのようなコマンドが存在し、どのような操作がどのコマンドで実行できるのか、あるいはどういうオプションを付ければどのような変化が現れるのか、などを把握するのが容易ではなく、習熟に時間を要する。また、コマンド・プロンプトで用いるコマンドをあらかじめ記述しておくバッチ・ファイルでは、ごく単純な制御構文しか利用できない。せいぜい、変数の使用、条件分岐、繰り返し、行ジャンプ程度である。これはC#やJavaなどといった一般的なプログラミング言語に比べるべくもなく、同じくOSのシェルであるUNIXシェル・スクリプトに比べても大きく見劣りする。この弱点をカバーするために、Windows ServerにはVBScriptやJScript(Microsoft版JavaScript)といったスクリプト言語を用いて処理を記述できるWSH(Windows Script Host)というプログラムが用意されているものの、これらの言語を用いた場合、複雑な処理は可能になる半面、簡単なことを行うにも多くの記述が必要であるという問題を抱えている。またコマンド・プロンプトのような対話的コンソールの機能もない。
このように、これまではWindows Server管理を円滑に行うためのコマンドライン・シェルには満足のいくものがなかった。そのため、Microsoftはまったく新しい、Windows Serverの管理に特化したシェルとしてPowerShell 1.0を開発した。PowerShell 1.0は2006年にリリースされ、Windows Server用としてはWindows Server 2003版がダウンロードおよびインストールが可能となった。Windows Server 2008ではOSのコンポーネントとして含まれており、サーバー・マネージャから「機能の追加」を行うことでインストールすることが可能である。さらに、いくつかのサーバ製品群(Exchange Server 2007など)にもPowerShell 1.0が同梱され、サーバOSのみならずサーバ製品をPowerShellベースで管理できるようになり始めた。
PowerShell 2.0の登場
しかしながら、PowerShell 1.0が大々的に利用されたかというと、必ずしもそうであるとはいえないのが実際のところではないだろうか。筆者はPowerShellに関する数々の講演や執筆活動を行ってきており、その際に感じたことであるが、PowerShellの認知度はそれほど高くなく、また、実際に使用しているという声もなかなか聞かれなかった。これには主に3つの理由があるためと筆者は考える。というのも、「なぜ使わないのですか?」と聞くと「興味はあるのですが……」というフレーズに続いて、だいたい次のような声が返ってくるからだ。
-
導入に手間が掛かる
PowerShell 1.0はWindows Server 2003ではダウンロードおよびインストールが必要、Windows Server 2008では有効化が必要であり、デフォルトの状態では使用が不可能である。 -
資料が乏しい
ヘルプはコマンドラインからしか取得できず、WSHのようなヘルプ・ファイルがない。 -
導入するメリットを見いだしにくい
わざわざPowerShellを用いなくても、バッチ・ファイルやWSHスクリプトで代替できる。
以上のような理由で、PowerShellを導入、学習するサーバ管理者は少なかったのではないだろうか。
そのような状況の中、PowerShell 2.0がWindows Server 2008 R2およびWindows 7とともに登場することとなる。PowerShell 2.0が1.0と大きく違うのは「OSの標準機能である」という点である。Windows Server 2008 R2をインストールすると、次のようなデスクトップを目にすることとなる。
タスク・バー上のサーバー・マネージャのアイコンとエクスプローラのアイコンの間にあるのがPowerShell(以下、バージョンの表記を指定しない場合は2.0を指すものとする)のアイコンである。このアイコンをクリックすると、PowerShellが起動する。
![]() |
| PowerShellの起動画面 |
| PowerShellアイコンをクリックするとPowerShellのコンソール・ウィンドウがすぐに起動する。 |
このように、Windows Server 2008 R2ではPowerShellはデフォルトですぐに実行可能になっている。これにより、先のデフォルトでインストールされていないという問題は解決している。
また、タスク・バーのPowerShellのアイコンを右クリックすると、これも2008 R2の新機能であるジャンプ・リストによって次のようなメニューが表示される。
![]() |
|||
| PowerShellのジャンプ・リスト | |||
| Windows Server 2008 R2/Windows 7では、タスク・バー上のアイコンを右クリックするとよく使う機能などをまとめた「ジャンプ・リスト」が表示される。 | |||
|
ここに、「Windows PowerShell ヘルプ」という項目があるので、クリックするとグラフィカルなヘルプが表示される。
![]() |
| 「Windows PowerShell のヘルプ」表示 |
| このようにPowerShellにはHTML形式の標準的なヘルプ・ファイルが付属し、いつでも表示可能である。 |
これにより、資料が乏しい(ヘルプが利用できない)という問題も解決された。
さて、一番よく聞かれる意見である「導入するメリットを見いだしにくい」に対する答えであるが、それは次のページから始めるPowerShell の機能紹介から判断していただきたい。
| 【コラム】Windows Server 2008 R2 Server CoreとPowerShell 2.0 | ||
Windows Server 2008およびWindows Server 2008 R2では、エクスプローラではなくコマンド・プロンプトがシェルとなっており、最小限の機能のみ有効化されている「Server Coreインストール」が利用できる。Windows Server 2008 Server CoreではPowerShellの1.0も2.0も利用できないが(これは後述する.NET Frameworkが利用できないため)、Windows Server 2008 R2 Server CoreではPowerShell 2.0を利用できる。ただし、デフォルトでは無効化されているので、次のコマンドをコマンド・プロンプト上で実行して.NET Framework 2.0およびPowerShellを有効化する必要がある。
PowerShellを起動するには、
とする。 |
| INDEX | ||
| Windows Server 2008 R2の真価 | ||
| 第3回 進化したPowerShell 2.0 | ||
| 1.Windows Serverの新しいシェル、PowerShell | ||
| 2.PowerShellの基本について | ||
| 3.PowerShell 2.0の新機能(1)―バックグラウンド処理、リモート機能、モジュール機能 | ||
| 4.PowerShell 2.0の新機能(2)―イベンティング機能、GUI開発環境 | ||
| 更新履歴 | |
|
| 「 Windows Server 2008 R2の真価 」 |
ホワイトペーパー(TechTargetジャパン)
- Windows 7のファイアウォール機能 (2010/3/18)
Win 7のファイアウォールの概要解説。ルールセットを切り替えるプロファイル機能が強化され、ドメインでもVPNでも、適切なルールが自動選択される - 第212話 プリンタ用紙 (2010/3/16)
致命的なディスク・クラッシュが起きる確率は、クラッシュによってもたらされる被害の大きさに比例する… - WindowsTIPS (2010/3/12)
− 不要なアドオンを無効化してIE8の起動を高速化する
− IE8のソース表示エディタを変更する
− RRASのNATでポートマッピングを定義する - PowerShell 2.0で始めるWindowsシステム管理 (2010/3/11)
コマンド・プロンプトやWSHスクリプトはもう古い!? これからのWindowsシステム管理はPowerShellでスマートに片付けよう
|
|
スキルアップ/キャリアアップ(JOB@IT)
スポンサーからのお知らせ
- - PR -
| 「いつかは壊れるサーバ」そんな故障に 迅速で安価に手軽に対応する方法とは? New! |
| 「特権ユーザー」の事件を防げ! 万能権限を持つユーザーの管理方法とは? New! |
| 仮想環境の構築とデータ保護の特効薬?! 実績と信頼性の高いパッケージで安心運用 |
| 仮想環境のバックアップもこれまでどおり 「まるごと取ってまるごと戻す」簡単運用 |
| おばかアプリ選手権、第4弾開催中!! ムダにカッコよくてくだらない作品求ム! |
| 社内ファイルサーバを“クラウド”に統合 VPN直結「クラウド型ストレージ」を紹介 |
| その数、なんと400台以上! グループ内 サーバの「統合管理」によるメリットは? |
| 美人!? まあまあ? 気になる いやし系!! PV急増で「美人時計」がとった手段とは? |
| 進化を続ける富士通ストレージETERNUS DX 製品開発者の自信を裏付けるものとは何か |
| 運用管理の課題を“2つの観点”から分析 ユーザー満足度の高い「仮想環境」とは? |
- - PR -
お勧め求人情報

**先週の人気講座ランキング**
〜CCNA編〜
| ◆ | TomcatやJBossなどAPサーバ環境に関する 情報を集約! “業務”用APサーバ大百科 New! |
| ◆ | 一気に解説! 最新のクラスタストレージ 「RAIDを超えたストレージ基準」……など New! |
| ◆ | クラウド的ユーザー体験の変化は脅威か? 仮想化技術を使いこなす運用管理術を紹介 New! |

| ◆ | 上司や部下、部署内メンバーとの情報共有 を“ガラッ”と変えるコラボツールとは? New! |
| ◆ | おばかアプリ選手権、第4弾開催中!! ムダにカッコよくてくだらない作品求ム! |
| ◆ | 社内ファイルサーバを“クラウド”に統合 VPN直結「クラウド型ストレージ」を紹介 |

| ◆ | Twitterのアカウントはなぜ突破された? メールによる新手の攻撃手法とその対策 |
| ◆ | もう仮想化のお試しフェイズは終わりだ! Hyper-V 2.0が基幹システムも仮想化 |
| ◆ | 美人!? まあまあ? 気になる いやし系!! PV急増で「美人時計」がとった手段とは? |

| ◆ | クライアント企業から求められる人材 ⇒IT技術と経営戦略を併せ持つ「戦略家」 |
| ◆ | .NET編集長が実践する「技術情報検索術」 サンプル・コードを簡単に探す“技”は? |
| ◆ | 業務効率と情報セキュリティ対策を両立! 手間なく確実に機密情報を守る方法とは? |

| ◆ | 進化を続ける富士通ストレージETERNUS DX 製品開発者の自信を裏付けるものとは何か |
| ◆ | 運用管理の課題を“2つの観点”から分析 ユーザー満足度の高い「仮想環境」とは? |

| ◆ | 【CTC事例】約30の基幹システムを統合! 膨大なバッジジョブを制御した方法は? |
| ◆ | 仮想化すればコストは削減できるか? 仮想化に必要な「3つの視点」を解説する |
| ◆ | その数、なんと400台以上! グループ内 サーバの「統合管理」によるメリットは? |










