本記事の目的
業務でWindows Serverの構築及び設定をすることが多くなってきましたので、一部の設定をGUIでなくPower Shellで実施する方法をまとめます
設定項目は以下となります
・サービス
・役割と機能
・レジストリ
可能な限りコマンドで設定値を変更することで、ミスの削減につながれば良いと思っております
今回実施した環境はWindows Server 2012 となります。
サービス
サービス一覧を取得する場合は、以下のコマンドになります
PS> Get-Service
サービスによっては長くなっていることがあるので、[Format-table]コマンドを併用することで、より見やすくすることができます
PS> Get-Service | Format-Table -AutoSize
特定のサービスについては、[-Name]オプションを使用します
PS> Get-Service -Name <サービス名> | Format-Table -AutoSize
その他詳細については、以下リンクを参照ください
今回は、AJRouterというサービスのスタートアップの状態を変更してみます
PS C:\Users\Administrator> Get-Service -Name AJRouter
Status Name DisplayName
------ ---- -----------
Stopped AJRouter AllJoyn Router Service
PS C:\Users\Administrator> Set-Service -Name AJRouter -startupType Manual
PS C:\Users\Administrator> Set-Service -Name AJRouter -startupType Automatic
以下は実際のAJRouterの設定です
上記のコマンドで実施したように、[StartupTpye]がAutomaticに設定されています
以下は、[Set-Service -Name AJRouter -startupType Automatic]を実施した後です。
そのため[startupTpye]がAutomaticに設定されています
役割と機能
次に[役割と機能]の設定方法を記載します
一覧の取得は以下のコマンドで実施できます
PS> Get-WindowsFeature
情報が多いので、インストール済みの役割と機能の名前のみ必要な場合は、以下コマンドで実施可能です
PS> Get-WindowsFeature | Where-object {$_.Installed -eq $True} | Format-List DisplayName
役割や機能をインストールする場合は、役割「IIS」のインストロールを例にとると、以下のコマンドで実施可能です
※役割「IIS」の内部名はWeb-Server
です
PS> Install-WindowsFeature -Name Web-Server
コマンド実行後は以下のように表示され、「Success」が「True」であるなら、インストールは成功です
Success Restart Needed Exit Code Feature Result
------- -------------- --------- --------------
True No Success {Common HTTP Features, Default Document, D...
参考
レジストリ
最後にレジストリの設定方法についてまとめます
主なコマンドは三つあります
・reg query
・reg add
・reg delete
今回は「Windows で通常使うプリンターを管理する」という設定を、上記コマンドを使用して設定変更する、というシナリオで進めていきます
まずは現状の設定をreg query
コマンドで確認します
コマンドは
reg query “パス” /v “名前”ですので、以下のようになります
PS> reg query “HKEY_CURRENT_USER\Software\Microsoft\Windows NT\CurrentVersion\Windows” /v “LegacyDefaultPrinterMode”
すると以下のような結果が返ってきます
HKEY_CURRENT_USER\Software\Microsoft\Windows NT\CurrentVersion\Windows
LegacyDefaultPrinterMode REG_DWORD 0x1
次は実際に値を変えてみます
コマンドは
・reg add “パス” /v “名前” /t “種類” /d “データ” (/f)
で実行可能です
※(/f)をつけることで、ユーザの同意を求めず変更が可能です
PS> reg add “HKEY_CURRENT_USER\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Windows” /v LegacyDefaultPrinterMode /t “REG_DWORD” /d “0” /f
The operation completed successfully.
実際にreg query
コマンドで結果を確認すると、確かにデータが変更されていることがわかります
PS >reg query “HKEY_CURRENT_USER\Software\Microsoft\Windows NT\CurrentVersion\Windows” /v “LegacyDefaultPrinterMode”
HKEY_CURRENT_USER\Software\Microsoft\Windows NT\CurrentVersion\Windows
LegacyDefaultPrinterMode REG_DWORD 0x0
終わりに
今回まとめた
・サービス
・役割と機能
・レジストリ
これらは、GUIで設定すると恐ろしく時間がかかり、ミスにもつながります
ミスをしないように注意を払うことは大切ですが、ミスをしない努力をすることよりミスをしない環境を作ることに努めるほうがより確実だと思います
せっかくエンジニアとして働かせてもらっているので、自動化できるところは自動化し、可能な限りヒューマンエラーを減らす努力を、今後とも続けていきたいと思います