DSC ファイル リソース
適用対象: Windows PowerShell 4.0、Windows PowerShell 5.x
Windows PowerShell Desired State Configuration (DSC) の File リソースには、ターゲット ノード上のファイルとフォルダーを管理するメカニズムが用意されています。 DestinationPath と
手記
この DSC リソースのこのドキュメントでは、バージョン 7.2 より前の PowerShell に含まれているバージョンについて説明します。 PSDscResources モジュールには、Microsoft によって正式にサポートされている新規および更新された DSC リソースが含まれています。 PSDscResources モジュールは、PowerShell ギャラリーから入手できます。
詳細および更新されたドキュメントについては、PSDscResources リファレンス ドキュメントを参照してください。
構文
File [string] #ResourceName
{
DestinationPath = [string]
[ Attributes = [string[]] { Archive | Hidden | ReadOnly | System }]
[ Checksum = [string] { CreatedDate | ModifiedDate | SHA-1 | SHA-256 | SHA-512 } ]
[ Contents = [string] ]
[ Credential = [PSCredential] ]
[ Force = [bool] ]
[ Recurse = [bool] ]
[ SourcePath = [string] ]
[ Type = [string] { Directory | File } ]
[ MatchSource = [bool] ]
[ DependsOn = [string[]] ]
[ Ensure = [string] { Absent | Present } ]
[ PsDscRunAsCredential = [PSCredential] ]
}
プロパティ
財産 | 形容 |
---|---|
DestinationPath | ターゲット ノード上の場所は、[ の表示] または [ |
属性 | 対象となるファイルまたはディレクトリの属性の目的の状態。 有効な値は、アーカイブ、 |
チェックサム | 2 つのファイルが同じかどうかを判断するときに使用するチェックサムの種類。 有効な値は、SHA-1、SHA-256、SHA-512、createdDate、modifiedDateです。 |
内容 |
タイプファイルで使用する場合にのみ有効です。 対象のファイルから が |
資格 情報 | ソース ファイルなどのリソースにアクセスするために必要な資格情報。 |
力 | エラーが発生するアクセス操作 (ファイルの上書きや空ではないディレクトリの削除など) をオーバーライドします。 既定値は $false です。 |
再帰 |
TypeDirectoryで使用した場合にのみ有効です。 すべてのディレクトリ コンテンツ、サブディレクトリ、およびサブディレクトリ コンテンツに対して、状態操作を再帰的に実行します。 既定値は $false です。 |
SourcePath | ファイルまたはフォルダー リソースのコピー元のパス。 |
種類 | 構成されているリソースの種類。 有効な値は、ディレクトリ と |
MatchSource | リソースが、最初のコピー後にソース ディレクトリに追加された新しいファイルを監視する必要があるかどうかを判断します。
$true の値は、初期コピーの後に、新しいソース ファイルをコピー先にコピーする必要があることを示します。
$false に設定すると、リソースはソース ディレクトリの内容をキャッシュし、最初のコピー後に追加されたファイルは無視します。 既定値は $false です。 |
警告
共通プロパティ
財産 | 形容 |
---|---|
DependsOn | このリソースを構成する前に、別のリソースの構成を実行する必要があることを示します。 たとえば、最初に実行するリソース構成スクリプト ブロックの ID が ResourceName で、その種類が ResourceType の場合、このプロパティを使用するための構文は DependsOn = "[ResourceType]ResourceName" 。 |
確保 | Destination にあるファイルと コンテンツ が存在するかどうかを決定します。 ファイルが存在することを確認するには、このプロパティを Present に設定します。 存在しないことを確認するには、[存在しない] に設定します。 既定値は Presentです。 |
PsDscRunAsCredential | リソース全体を実行するための資格情報を次のように設定します。 |
手記
PsDscRunAsCredential 共通プロパティが WMF 5.0 に追加され、他の資格情報のコンテキストで DSC リソースを実行できるようになります。 詳細については、「DSC リソースで資格情報を使用する」を参照してください。
追加情報
DestinationPath のみを指定した場合、リソースは 、存在する場合はパスが存在するか、存在しない場合 存在しないことを確認 。-
SourcePath と、Type 値が Directoryの DestinationPath を指定すると、リソースはソース ディレクトリをコピー先パスにコピーします。 Recurse、
Force 、および MatchSourceのプロパティ 、、実行されるコピー操作の種類を変更 Credential はソース ディレクトリへのアクセスに使用するアカウントを決定します。 - ディレクトリのコピー時に Recurse プロパティを
$true
に設定しない場合、既存のディレクトリの内容はコピーされません。 指定されたディレクトリのみがコピーされます。 DestinationPath と共にAttributes プロパティにReadOnly の値を指定した場合は、指定したパスPresent が作成されることを確認、 Contents はファイルの内容を設定します。 [存在しない]設定では、属性 プロパティが完全に無視され、指定したパスにあるファイルが削除されます。
例
次の例では、ファイル リソースを使用して、プル サーバーからターゲット ノードにディレクトリとそのサブディレクトリをコピーします。 操作が成功すると、ログ リソースによって確認メッセージがイベント ログに書き込まれます。
ソース ディレクトリは、プル サーバーから共有される UNC パス (\\PullServer\DemoSource
) です。
Recurse プロパティを使用すると、すべてのサブディレクトリも確実にコピーされます。
大事な
ターゲット ノードの LCM は、既定でローカル システム アカウントのコンテキストで実行されます。 SourcePathへのアクセスを許可するには、ターゲット ノードのコンピューター アカウントに適切なアクセス許可を付与します。 資格情報 と PSDSCRunAsCredential は、LCM が SourcePathにアクセスするために使用するコンテキストを変更します。 引き続き、SourcePathへのアクセスに使用するアカウントへのアクセス権を付与する必要があります。
Configuration FileResourceDemo
{
Import-DscResource -ModuleName 'PSDesiredStateConfiguration'
Node "localhost"
{
File DirectoryCopy
{
Ensure = "Present" # Ensure the directory is Present on the target node.
Type = "Directory" # The default is File.
Recurse = $true # Recursively copy all subdirectories.
SourcePath = "\\PullServer\DemoSource"
DestinationPath = "C:\Users\Public\Documents\DSCDemo\DemoDestination"
}
Log AfterDirectoryCopy
{
# The message below gets written to the Microsoft-Windows-Desired State Configuration/Analytic log
Message = "Finished running the file resource with ID DirectoryCopy"
DependsOn = "[File]DirectoryCopy" # Depends on successful execution of the File resource.
}
}
}
DSC で