查看: 4396|回复: 12

[求助] 关于cmd命令挂载iso问题的请教。

[复制链接]
ldflmh 发表于 2018-12-3 20:48 | 显示全部楼层 |阅读模式
快御云安全
用命令挂载iso文件,可以用以下命令:
powershell.exe "Mount-DiskImage ""Z:\cn_windows_10_enterprise_ltsc_2019_x86_dvd_62156a9a.iso"""
这个挂载没问题,但我想请教一下,能不能指定挂载的盘符?


另外可以用下面的imdisk命令挂载,并指定盘符,但这个必须安装imdisk,如果cmd自己的命令就能实现指定盘符就更好了。
@imdisk -a -f Z:\cn_windows_10_enterprise_ltsc_2019_x64_dvd_d17070a8.iso -m Z:

求教了。。。。。
zsqzsqzsqzsq 发表于 2018-12-3 22:51 | 显示全部楼层
我来回答你。以下脚本在windows 10 18290调试通过:
$ImagePath = "R:\test.iso"
$DriveLetter = "X"
$DriveLetter = $DriveLetter + ':'

$DiskImage = Mount-DiskImage -ImagePath $ImagePath -NoDriveLetter -PassThru -ErrorAction Stop | Get-Volume
$DiskVolume = Get-CimInstance -ClassName Win32_Volume | Where-Object { $_.DeviceID -eq $DiskImage.UniqueId }

Set-CimInstance -Property @{DriveLetter= $DriveLetter } -InputObject $DiskVolume -ErrorAction Stop

pause
Dismount-DiskImage R:\test.iso

2018-12-03_225033.jpg

回复

使用道具 举报

rubycon 发表于 2018-12-3 22:59 | 显示全部楼层
有方便的图形化操作,还需要复杂的命令么?
回复

使用道具 举报

ananhaid 发表于 2018-12-3 23:03 | 显示全部楼层
PowerShell 貌似只能挂载,没找到官方说明能制定挂载的盘符。

另回水王:能命令行批处理的,一定不用图形界面,命令行才是无人值守的王道。
回复

使用道具 举报

ldflmh  楼主| 发表于 2018-12-3 23:09 | 显示全部楼层
rubycon 发表于 2018-12-3 22:59
有方便的图形化操作,还需要复杂的命令么?

要,我现在折腾封装系统玩,双击一下一个cmd文件,分把钟就封装好了,包括了dism++可以优化的项目以及其它一部分优化集成进去(注册表实现),集成补丁,集成net3.5,集成运行库和常用软件,无人应答,系统精简也能实现,但我没精简,只是特别禁用了Defender,关闭了防火墙,并通过注册表关闭了安全维护通知省得老弹窗。
回复

使用道具 举报

ldflmh  楼主| 发表于 2018-12-3 23:12 | 显示全部楼层
ananhaid 发表于 2018-12-3 23:03
PowerShell 貌似只能挂载,没找到官方说明能制定挂载的盘符。

另回水王:能命令行批处理的,一定不用图形 ...

是啊,我现在折腾封装系统玩,双击一下一个cmd文件,分把钟就封装好了,因为我把内存虚拟成硬盘弄了10G出来做处理封装过程的分区。封装包括了dism++可以优化的项目以及其它一部分优化集成进去(注册表实现),集成补丁,集成net3.5,集成运行库和常用软件,无人应答,系统精简也能实现,但我没精简,只是特别禁用了Defender,关闭了防火墙,并通过注册表关闭了安全维护通知省得老弹窗。
回复

使用道具 举报

zsqzsqzsqzsq 发表于 2018-12-3 23:49 | 显示全部楼层
另一脚本:
$ImagePath = "R:\test.iso"
$NewLetter = 'X:'

$mountResult = Mount-DiskImage -ImagePath $ImagePath -NoDriveLetter -PassThru -ErrorAction Stop | Get-Volume
$filter = $mountResult.UniqueId
$filter=$filter.Replace('\','\\')
$drive = Get-WmiObject -Class win32_volume -Filter "DeviceID = '$filter'"
$drive.DriveLetter = $NewLetter
$drive.put()

pause
Dismount-DiskImage R:\test.iso

2018-12-03_234942.jpg
回复

使用道具 举报

zsqzsqzsqzsq 发表于 2018-12-3 23:51 | 显示全部楼层
以上脚本参考了以下资料:
https://www.powershellgallery.com/packages/PSMag/1.0/Content/DSCResources%5CDiskImage%5CDiskImage.psm1
https://www.powershellmagazine.com/2014/10/15/dsc-resource-for-mounting-and-dismounting-iso-images/
https://social.technet.microsoft.com/Forums/de-DE/57103aa2-2bdc-426c-ac86-e989243dd7c9/powershell-mountdiskimage-iso-file-laufwerksbuchstabe
回复

使用道具 举报

ldflmh  楼主| 发表于 2018-12-4 00:03 来自手机 | 显示全部楼层
zsqzsqzsqzsq 发表于 2018-12-3 23:49
另一脚本:
$ImagePath = "R:\test.iso"
$NewLetter = 'X:'

非常感谢,大神就是大神,明天我就试试,另外Reg文件不能通过命令行直接集成到挂载着的镜像里去吧?dism++能导入进去,我就在幻想命令行也能
回复

使用道具 举报

zsqzsqzsqzsq 发表于 2018-12-4 00:24 | 显示全部楼层
可以。这是我破解primo ramdisk时间限制的脚本,供参考:
REG LOAD HKLM\1 "%~d0\Windows\System32\config\SYSTEM" 1>nul &&(echo 加载注册表成功!)
REG RESTORE HKLM\1\ControlSet001\services\eventlog\System\RxDeliveryStamp "%~dp0reg.hiv" 1>nul &&(echo 恢复时间限制加密数据成功!)
REG QUERY HKLM\1\ControlSet001\services\FancyRd\DriveMap 1>nul 2>nul &&(REG DELETE HKLM\1\ControlSet001\services\FancyRd\DriveMap /f 1>nul &&(echo 删除DriveMap注册表键成功!))
REG QUERY HKLM\1\ControlSet001\services\FancyRd\Parameters /v data2 1>nul 2>nul &&(REG DELETE HKLM\1\ControlSet001\services\FancyRd\Parameters /v data2 /f 1>nul &&(echo 删除data2注册表键值成功!))
REG QUERY HKLM\1\ControlSet001\services\FancyCcV\SectorMap 1>nul 2>nul &&(REG DELETE HKLM\1\ControlSet001\services\FancyCcV\SectorMap /f 1>nul &&(echo 删除SectorMap注册表键成功!))
REG QUERY HKLM\1\ControlSet001\services\FancyCcV\Parameters /v data2 1>nul 2>nul &&(REG DELETE HKLM\1\ControlSet001\services\FancyCcV\Parameters /v data2 /f 1>nul &&(echo 删除data2注册表键值成功!))
REG QUERY HKLM\1\ControlSet001\services\FancyCcV\Parameters /v Session 1>nul 2>nul &&(REG DELETE HKLM\1\ControlSet001\services\FancyCcV\Parameters /v Session /f 1>nul &&(echo 删除Session注册表键值成功!))
REG UNLOAD HKLM\1  1>nul &&(echo 卸载注册表成功!)
回复

使用道具 举报

ananhaid 发表于 2018-12-4 00:50 来自手机 | 显示全部楼层
ldflmh 发表于 2018-12-4 00:03
非常感谢,大神就是大神,明天我就试试,另外Reg文件不能通过命令行直接集成到挂载着的镜像里去吧?dism+ ...

reg load 具体很多网上都有,就不细说了。
回复

使用道具 举报

ldflmh  楼主| 发表于 2018-12-4 07:42 | 显示全部楼层
zsqzsqzsqzsq 发表于 2018-12-4 00:24
可以。这是我破解primo ramdisk时间限制的脚本,供参考:
REG LOAD HKLM\1 "%~d0\Windows\System32\config ...

谢谢,脱机镜像只能修改写入HKLM的注册表项,HKCR的还是得系统部署过程中写入吧?没找到脱机镜像哪个文件可以写入KHCR项,说实话,我纯小白,见笑了
回复

使用道具 举报

zsqzsqzsqzsq 发表于 2018-12-4 19:56 | 显示全部楼层
没用到,没有测试过了,不敢贸然回答。提供一个链接供参考:
http://smallvoid.com/article/winnt-offline-registry-edit.html

[HKEY_LOCAL_MACHINE \SYSTEM] (%windir%/system32/config/system)
[HKEY_LOCAL_MACHINE \SOFTWARE] (%windir%/system32/config/software)
[HKEY_USERS \.Default] (%windir%/system32/config/default)
[HKEY_CURRENT_USER] (%userprofile%/ntuser.dat)
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

小黑屋手机版联系我们

Copyright © 2005-2025 PCBeta. All rights reserved.

Powered by Discuz!  CDN加速及安全服务由「快御」提供

请勿发布违反中华人民共和国法律法规的言论,会员观点不代表远景论坛官方立场。

远景在线 ( 苏ICP备17027154号 )|远景论坛 |Win11论坛 |Win10论坛 |Win8论坛 |Win7论坛 |WP论坛 |Office论坛

GMT+8, 2025-4-4 10:45

快速回复 返回顶部 返回列表