У меня есть ISO-образ (в данном случае ISO-образ MS Office), который я хотел бы смонтировать.
Я хотел бы использовать Powershell и указать букву диска во время монтирования, чтобы я мог использовать команды сценариев для файлов на смонтированном ISO (диске), после чего я хотел бы размонтировать ISO.
Как это может быть сделано?
Предыстория: я бы хотел выполнить установку MS Office по сценарию с использованием образа ISO.
Следующие команды Powershell подключат указанный ISO-образ к указанной букве диска. В Mountvol требует повышения прав, поэтому запустите Powershell как администратор:
# ISO image - replace with path to ISO to be mounted
$isoImg = "D:\en_visio_professional_2019_x86_x64_dvd_3b951cef.iso"
# Drive letter - use desired drive letter
$driveLetter = "Y:"
# Mount the ISO, without having a drive letter auto-assigned
$diskImg = Mount-DiskImage -ImagePath $isoImg -NoDriveLetter
# Get mounted ISO volume
$volInfo = $diskImg | Get-Volume
# Mount volume with specified drive letter (requires Administrator access)
mountvol $driveLetter $volInfo.UniqueId
#
#
# Do work (e.g. MS Office installation - omitted for brevity)
#
#
# Unmount drive
DisMount-DiskImage -ImagePath $isoImg
Справочная информация: это была полезная ссылка: https://www.derekseaman.com/2010/04/change-volume-drive-letter-with.html
Я не мог заставить вышеуказанное работать (Powershell 5 на WS2016), это не удалось ...
mountvol $driveLetter $volInfo.UniqueId
... Несмотря на то, что запущен как администратор.
Но это сработало
Get-WmiObject -Class Win32_volume -Filter 'DriveType=5' |
Select-Object -First 1 |
Set-WmiInstance -Arguments @{DriveLetter='Z:'}