使用 diskshadow.exe、start-bitstransfer powershell cmdlet 时媒体处于写保护状态

使用 diskshadow.exe、start-bitstransfer powershell cmdlet 时媒体处于写保护状态

我正在尝试使用 powershell start-bitstransfer cmdlet 来传输我使用 vss 快照(通过 diskshadow)公开的文件,但不幸的是,我收到以下错误:

Start-BitsTransfer:媒体已写保护。第 1 行,字符:49 + Import-CSV c:\hda1\bits.txt | start-bitstransfer <<<< -transfertype upload -Authentication "Basic" -Credential $cred + CategoryInfo:InvalidOperation:(:) [Start-BitsTransfer],Exception + FullyQualifiedErrorId:StartBitsTransferCOMException,Microsoft.BackgroundIntelligentTransfer.Management.NewBits TransferCommand

我们确实想利用我们尝试将文件传输到的位端点。我们还有其他方法可以解决这个问题吗(除了先将文件复制到其他地方,除非我们可以一次复制一个片段并传输它)?

答案1

我遇到了和你一样的问题。解决这个问题的唯一方法是通过 http 使用位。我使用的是位紧凑型服务器

bits compact 服务器通过 wmi 进行管理。以下代码可以为文件创建 url:

## Get BITS Compact Server WMI Class
$bcs = [wmiclass] "root\Microsoft\bits:Bitscompactserverurlgroup"

## Create URLGroup
$bcs.CreateUrlGroup("http://+:80/Demo/")

## Get created URLGroups object
$urlgroup = Get-WmiObject -Namespace "root\Microsoft\bits" -Class Bitscompactserverurlgroup" -Filter "urlgroup='http://+:80/Demo/'"

## Host a file. The file has to be present and accessible"
$urlgroup.CreateUrl("file.dat", "F:\shadow\bits1\file.dat", "")

(代码来自http://blogs.msdn.com/b/wmi/archive/2009/08/18/bits-compact-server-wmi-provider.aspx

现在您可以使用下载文件

Start-BitsTransfer -Source "http://localhost/demo/file.dat" -Destination j:\ 

相关内容