通过网络获取挂载iso的驱动器

时间:2017-09-04 21:28:51

标签: windows powershell networking mount

我在通过网络获取已安装的ISO的驱动器时遇到问题。我使用Mount-DiskImage -ImagePath $ISOPATH进行安装。 当我挂载本地存储在磁盘D:\上的ISO文件时,我通过powershell获取卷信息没有问题:Get-DiskImage -ImagePath $ISOPATH | Get-Volume。这就是脚本的样子:

Mount-DiskImage –ImagePath $ISOPATH 

$driveletter = (Get-DiskImage -ImagePath $ISOPATH | get-volume).driveletter + ":"
cd $driveletter\Nanoserver  

上面的代码适用于本地ISO文件。

但是,从网络共享安装ISO文件时,Get-Volume命令不再起作用。它没有看到新安装的驱动器,尽管它可见并可通过Windows资源管理器访问。 命令Get-DiskImage -ImagePath $ISOPATH | Get-Volume不再显示任何信息,而是显示空白结果。 我通过powershell看到这个驱动器的唯一方法是使用Get-PSdrive命令,但是,我很难通过此命令以自动方式获取该字母。 有没有人解决这个问题?

如果需要,我很乐意提供更多信息。 感谢

1 个答案:

答案 0 :(得分:0)

基于之前($vl1)和之后($vl2)比较的解决方法(在生产中未经测试):

$vl1 = @(Get-Volume); 
$disk = Mount-DiskImage -ImagePath "\\172.19.21.47\www\debian-8.8.0-amd64-netinst.iso" -PassThru ; 
$vl2 = @(Get-Volume); 
$dl = @( $vl2 | ? {$vl1 -notcontains $_} )[0].DriveLetter
  • 如果您保证系统中不会同时发生磁盘安装。
  • 安装后可能需要启动 - 睡眠以确保分配驱动器号