web-dev-qa-db-ja.com

unattend.xmlのサーバーからPowerShellスクリプトを実行する

現在、基本設定用のunattend.xmlファイルを使用して、Windows展開サービス(WDS)でWindows 10マシンを展開しています。時々、ウィンドウを自動的にアクティブ化しないマシンがあります(私たちはOEMライセンスを使用しています)。これは、Windowsが以前にアクティブ化されていない新しいマシンでのみ発生するようです。

この問題を「回避」するために、bios/uefiからWindowsキーを取得し、このキーでWindowsコピーをアクティブにする小さなPowerShellスクリプトを作成しました。スクリプトは正常に機能しており、セットアップ後にスクリプトをunattend.xmlに追加して自動的に実行したいと考えています。スクリプトをファイルサーバーに保存し(スクリプトを変更するたびにイメージが変更されないようにするため)、そこから実行します。 unattend.xmlファイルでこれをどこに構成する必要がありますか?これは可能ですか?

Serverfault( WDSデプロイの特殊化パス中にPowerShellスクリプトを実行するにはどうすればよいですか? )に関するトピックが見つかりました。コメントセクションでは、OOBEおよび自動ログオンセクションへの追加について説明しています。私は少し混乱している(そしてトピックは本当に古い)ので、質問したいと思います。-適切な資格情報で自動ログオンを構成し、この自動ログオンユーザーの下でスクリプトを実行する必要がありますか?もしそうなら、これはunattend.xmlファイルでどのように行われますか?

2
SaintCore

_unattend.xml_を介してPowershellスクリプトを自動的に実行するには、スクリプトの_run synchronous command_エントリを構成する必要があります。

変更する無人ファイルに対して_Windows SIM_を開きます。 [コンポーネント]タブを開き、_*Microsoft-Windows-Deployment*_エントリを展開します。

Add the command execution item.

アイテムを_unattend.xml_に追加したら、pathと書かれたボックスで実行するコマンドを構成できます。

サーバー上のPowerShellスクリプトでは、次のようなコマンドを使用できます。

_powershell -File "\\remote-computer\some\dir\script.ps1"_。

ローカルコンピューター上のPowerShellスクリプトの場合、構文は次のようになります。

_powershell -File "C:\path\to\dir\script.ps1"_。

スタンドアロンのPowerShellコマンドレットを実行する場合は、次のコマンドスタイルを使用できます。

powershell verb-noun -argument(s)

Enter the command to be executed.


オプション:

コマンドを実行するために必要な資格情報を入力します。 Run as info/credentials


リンク:


Tl; Dr:

Windows SIMを使用して、synchronousまたはasynchronousコマンドを_unattend.xml_に追加します。

6
Elliot Labs LLC