想要把dmg格式转成iso格式,然后能在虚拟机上用,最起码新版的macOS镜像是不能用UltraISO,dmg2iso这种软件了,你直接转放到VMware里绝对读不出来,办法就是,在Mac系统中转换为cdr,然后再转成iso,愿意折腾的可以试试。
目录
1.准备Mac环境
不论你是用的Mac物理机,还是Mac虚拟机,首先要准备好一个Mac系统环境,对于没有Mac虚拟机ISO镜像的用户,这其实就是个非常尴尬的循环依赖,你想制作Mac虚拟机ISO的前提是你得有Mac环境,所以如果嫌麻烦还是网上找转换好的ISO吧。
另外Mac环境的硬盘格式,不能是APFS,必须是macOS扩展,APFS下转换会出bug。
AMD的CPU安装Mac虚拟机,如果硬盘格式用macOS扩展,可能会出bug,所以还是建议找找网上的现成ISO。
2.下载dmg文件
极限苹果论坛可以下载dmg,ISO也有,不过发布会慢一些
macOS系统下载 | 极限苹果-Mac论坛-提供Mac软件和macOS苹果系统镜像下载苹果电脑macOS各版本系统镜像下载https://www.applex.net/pages/macos/
另外如果你已经有Mac环境,可以在苹果应用商店下载最新dmg镜像
3.放入Mac系统中
用虚拟机的,可以用VMTools,物理机直接下载就好了
4.安装dmg到虚拟磁盘的准备工作
双击dmg文件,将文件复制到桌面,其实哪都行,你只要知道路径就行,最好还是放到个人用户路径下。
拖拽到桌面
最好把名字改了,改成没有空格的,方面以后敲命令
打开终端
5.安装dmg到虚拟磁盘的核心工作
终端创建文件夹,这里的第一个/User是指User文件夹,第二个/user,是因为我Mac里的用户叫user,你要改成自己的名字,下面不再重复说明
mkdir -p /Users/user/ISO/Volumes
mkdir -p /Users/user/ISO/tmp
创建cdr.dmg文件,16500m是指cdr.dmg的容量为16500M,原则上不能小于16410M,我这里取整,你要大一点也行,但是不能更小了,要不然可能写不下数据。
hdiutil create -o /Users/user/ISO/tmp/Sequoia.cdr -size 16500m -layout SPUD -fs HFS+J
挂载cdr.dmg文件,到虚拟光驱
hdiutil attach /Users/user/ISO/tmp/Sequoia.cdr.dmg -noverify -nobrowse -mountpoint /Users/user/ISO/Volumes/Sequoia
下面是最重要的,创建安装镜像到dmg
如果Mac系统磁盘用了APFS,会报错,磁盘格式只能是macOS扩展
必须用sudo提高权限
sudo /Users/user/Desktop/Sequoia.app/Contents/Resources/createinstallmedia --volume /Users/user/ISO/Volumes/Sequoia --nointeraction
推出虚拟光驱
把虚拟光驱cdr.dmg文件数据导出为cdr格式,必须先推出虚拟光驱,要不然会提示繁忙
hdiutil convert /Users/user/ISO/tmp/Sequoia.cdr.dmg -format UDTO -o /Users/user/ISO/tmp/Sequoia.iso
6.导出镜像
进入目录,把cdr文件复制出来,SSH,VMTools都行
把cdr的后缀去掉,只保留iso
这个iso文件就可以用于虚拟机安装macOS了,至此dmg转iso完成。