Windows 7 で Windows Power Shell を使用して、ボリューム シャドウ コピーのスナップショットを作成してアクセスしようとしています。以前のスーパーユーザーの質問により、以下を使用してスナップショットを作成できることがわかりました。
(Get-WmiObject -list win32_shadowcopy).create("C:\","ClientAccessible")
を使用してシャドウ コピーをドライブ文字にマップできるように、シャドウ コピーを「公開」に設定できることを示すドキュメントを見つけることができませんWMI
。同じ質問にリンクされている記事は、ジャンクションを使用してスナップショットにアクセスするハックを示しています。
シンボリックリンクにアクセスしようとすると、次のようになります。
PS C:\Windows\system32> ls C:\shadowcopy
Get-ChildItem : The parameter is incorrect.
At line:1 char:3
+ ls <<<< C:\shadowcopy
+ CategoryInfo : ReadError: (C:\shadowcopy:String) [Get-ChildItem], IOException
+ FullyQualifiedErrorId : DirIOError,Microsoft.PowerShell.Commands.GetChildItemCommand
スナップショットに直接アクセスしようとすると、次のようになります。
PS C:\Windows\system32> ls '\\?\GLOBALROOT\Device\HarddiskVolumeShadowCopy14'
Get-ChildItem : Paths that begin with \\?\GlobalRoot are internal to the kernel and should not be opened by managed applications.
At line:1 char:3
+ ls <<<< '\\?\GLOBALROOT\Device\HarddiskVolumeShadowCopy14'
+ CategoryInfo : NotSpecified: (:) [Get-ChildItem], ArgumentException
+ FullyQualifiedErrorId : System.ArgumentException,Microsoft.PowerShell.Commands.GetChildItemCommand
powershell スクリプトから VSS スナップショットにアクセスするにはどうすればよいですか?