Windows 7のWindows Power Shellを使用してボリュームシャドウコピーのスナップショットを作成してアクセスしようとしています。これまでのsuperuser question:powershellからボリュームシャドウコピー(VSS)スナップショットにアクセスする
で以下を使用してスナップショットを作成できました。(Get-WmiObject -list win32_shadowcopy).create("C:\","ClientAccessible")
私はそれはWMI
を使用して、ドライブ文字にマッピングすることができるように「露出」し、シャドウコピーを設定することが可能であることを示す任意のドキュメントを見つけることができません。同じ質問でリンクされたarticleは、スナップショットにアクセスするためにジャンクションを使用するハックを示しています。
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
私はからVSSスナップショットにアクセスすることができます方法:スナップショットにアクセスしようとすると、
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
は、直接、次の与える:私はシンボリックリンクにアクセスしようとすると
、私は次の取得しますパワーシェルスクリプト?
末尾の「\」は、私が逃した重要な部分でした。 – jordanm
将来の読者のために、シャドウコピーを削除する方法は次のとおりです:vssadmin delete shadows/Shadow = "" $($ s2.ID.ToLower()) ""/Quiet "| iex'を実行してから 'Remove-Item c:\ shadowcopy -Confirm:$ false -Force'を実行します。このコードは、シャドウコピーを処理した後に配置してください。 –
魔法のように動作します。 –