填坑黑苹果(VMware装MacOS) - 修改 Unlocker 补丁源码版 admin 2023-05-25 09:54:02 篇首语:本文由小编为大家整理,主要介绍了填坑黑苹果(VMware装MacOS) - 修改 Unlocker 补丁源码版相关的知识,希望对你有一定的参考价值。 最近闲的突然想找点事来折腾一下, 于是随着苹果的发布会就盯上自己手上的 iPhone, 也想弄个 Mac 来搞 ios. 于是就有了这个填坑故事.为什么要修改补丁源码:不再苦苦去寻找和下载 drawn.iso 文件, 虽然我会告诉你这里可以下载到官网的;遇到个错误, 既然也是搞 python 的, 那自己当然也要动手动手了.1. 安装前1. 安装环境Windows 10VMware Pro 142. 系统硬件配置内存推荐 16G 以上硬盘预留 40G 以上CPU推荐 i5 8th以上3. 安装 MacOS 必备包VMware Pro 14填壹号坑: Unlocker 的最新版本 v3.0.2 仅支持 VMware 的 12~14 版本(终端输出的, 本人之前用的是15的, 总是报各种错, 所以就发现了这个坑).一定要使用 Pro 版本, Player 版本安装的黑苹果不稳定, 经常会自动重启..VMware pro 14 官网下载地址MacOS 系统镜像 (6G左右大小)cdr [推荐], 懒人安装包, 因为易装, 麻烦少.填贰号坑: 试过使用神马HFSExplorer将dmg 转cdr的工具, 结果那工具不行, 老是弹出 error 框. 于是就搜索下载别人发的 cdr包进行安装dmg, 原始镜像, 没有试过这个格式的安装, 不了解填这个坑ISO, 可以使用 UltraISO 工具将 dmg 格式转为 iso 格式, 然后进行安装, 但是中途遇到了 boot 问题, 于是换用cdr 进行安装MacOS Unlocker for VMware, 简称 Unlocker能够让 VMware 选择 Mac 系统进行安装的补丁Unlocker 在 github 的下载地址windows 选择第一个 unlocker302.zip 进行下载即可2. 安装1. 安装 VMware Pro 14, 并注册此处网络上教程挺多, 安装也不复杂, 过程很顺利注册看个人了, 惯用方式是网上搜索密钥进行注册, 密钥如:ZC5XK-A6E0M-080XQ-04ZZG-YF08D ;ZY5H0-D3Y8K-M89EZ-AYPEG-MYUA8 .2. 安装 Unlocker使用超级管理员运行 cmd.在任务栏的搜索框中, 搜索 cmd, 然后右击使用管理员运行 cmd解压已经下载的 unlocker, 并在 刚才打开的终端中 cd 到目录下执行 win-install.cmd终端报错了看到终端有 Successfully, Finished 等词, 先不要高兴太早, 因为那整句话是否定的.报错内容有:***.*** 文件权限问题哪一个文件的权限出了问题, 就找到它并给它添加权限就可以了.操作步骤: 右击选择属性 --> 选择安全选项卡 --> 点击编辑 --> 选择 Everyone (组或用户名) --> 允许完全控制.没有找到 drawn*.* 文件看了一下终端是访问了 http://*** 链接之后才报的错误, 认为是访问超时了结果重试了几次都不行, 然后打开浏览器进行访问该链接, 结果浏览器返回 not found. 一脸懵逼, 简直坑爹啊填叁号坑: 解决办法 - 修改源码后重新编译打包exe修改文件: gettools.py, 修改后的完整代码放在最后, 有中文注释.思路: 访问问题, 那就修改访问的链接; 由于VMware 服务器识别 UA, 所以伪装 UA.打包exe: 需要 python3.x 环境, 依赖包: requests, PyInstaller; 打包命令 pyinstaller -F gettools.py替换 gettools.exe 文件: 打包 exe 后, 会生成 dist 文件夹, 找到里面的 exe 文件, 替换 unlocker 文件夹中的 gettools.exe 文件补充: 安装依赖包的命令: pip3 install requests; pip3 install PyInstaller; 打包exe 前, 需要打开终端并切换目录到 gettools.py 文件所在目录下.3. 安装 mac运行 VMware 并创建新的虚拟机CD/DVD 处选择 cdr 文件, 然后启动虚拟系统安装虚拟系统过程中出现的问题虚拟系统启动, 虚拟机报错问题:打开 ***.vmx 文本文件, 添加 smc.version = "0" 配置项安装盘问题:选择菜单栏上的实用工具 --> 然后选择 VMware 硬盘 --> 点击抹掉按钮 --> 输入一个英文名称即可安装 VMTools关机mac, 在 CD/DVD 处选择 VMware Pro 安装目录下的 darwn.iso (Unlocker 生成的文件), 我的安装目录是 C:Program Files (x86)VMwareVMware Workstation开机, 打开桌面上的光盘进行安装, 所以 drawn.iso 是用来安装 VMTools 插件的.4. 屏幕大小, 分辨率问题在VMware里装 VMTools 后发现全屏时的分辨率是 950 (HiDPI) 的, 在设置/显示器/缩放中, 点击1920 的死活切换不了打开终端依次输入以下命令:cd /Library/Preferences, 切换目录.plutil -p com.apple.windowserver.plist 查看现在的plist设置, 值应该是 1.sudo plutil -replace DisplayResolutionEnabled -bool "NO" com.apple.windowserver.plist 修改plist 设置为 0.重启生效.gettools.pyfrom __future__ import print_functionimport osimport shutilimport sysimport tarfileimport zipfile# 添加处, 方便伪装 User-Agentimport requests# 添加处def download_drawn(url, path): headers = "User-Agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (Khtml, like Gecko) Chrome/76.0.3809.132 Safari/537.36", resp = requests.get(url, headers=headers, timeout=180) with open(path, "wb") as fp: fp.write(resp.content)def convertpath(path): # OS path separator replacement funciton return path.replace(os.path.sep, "\") # 修改处def main(): # Check minimal Python version is 2.7 if sys.version_info < (2, 7): sys.stderr.write("You need Python 2.7 or later ") sys.exit(1) # Setup url and file paths url = "http://softwareupdate.vmware.com/cds/vmw-desktop/fusion/" dest = os.path.dirname(os.path.abspath(__file__)) # Re-create the tools folder shutil.rmtree(dest + "/tools", True) os.mkdir(dest + "/tools") # 删改处 urlpost15 = url + "11.1.0/13668589" + "/packages/com.vmware.fusion.tools.darwin.zip.tar" urlpre15 = url + "11.1.0/13668589" + "/packages/com.vmware.fusion.tools.darwinPre15.zip.tar" # Download the darwin.iso tgz file print("Retrieving Darwin tools from: " + urlpost15) # 修改处 download_drawn(urlpost15, convertpath(dest + "/tools/com.vmware.fusion.tools.darwin.zip.tar")) # Extract the tar to zip tar = tarfile.open(convertpath(dest + "/tools/com.vmware.fusion.tools.darwin.zip.tar"), "r") tar.extract("com.vmware.fusion.tools.darwin.zip", path=convertpath(dest + "/tools/")) tar.close() # Extract the iso and sig files from zip cdszip = zipfile.ZipFile(convertpath(dest + "/tools/com.vmware.fusion.tools.darwin.zip"), "r") cdszip.extract("payload/darwin.iso", path=convertpath(dest + "/tools/")) cdszip.extract("payload/darwin.iso.sig", path=convertpath(dest + "/tools/")) cdszip.close() # Move the iso and sig files to tools folder shutil.move(convertpath(dest + "/tools/payload/darwin.iso"), convertpath(dest + "/tools/darwin.iso")) shutil.move(convertpath(dest + "/tools/payload/darwin.iso.sig"), convertpath(dest + "/tools/darwin.iso.sig")) # Cleanup working files and folders shutil.rmtree(convertpath(dest + "/tools/payload"), True) os.remove(convertpath(dest + "/tools/com.vmware.fusion.tools.darwin.zip.tar")) os.remove(convertpath(dest + "/tools/com.vmware.fusion.tools.darwin.zip")) # Download the darwinPre15.iso tgz file print("Retrieving DarwinPre15 tools from: " + urlpre15) # 修改处 download_drawn(urlpre15, convertpath(dest + "/tools/com.vmware.fusion.tools.darwinPre15.zip.tar")) # Extract the tar to zip tar = tarfile.open(convertpath(dest + "/tools/com.vmware.fusion.tools.darwinPre15.zip.tar"), "r") tar.extract("com.vmware.fusion.tools.darwinPre15.zip", path=convertpath(dest + "/tools/")) tar.close() # Extract the iso and sig files from zip cdszip = zipfile.ZipFile(convertpath(dest + "/tools/com.vmware.fusion.tools.darwinPre15.zip"), "r") cdszip.extract("payload/darwinPre15.iso", path=convertpath(dest + "/tools/")) cdszip.extract("payload/darwinPre15.iso.sig", path=convertpath(dest + "/tools/")) cdszip.close() # Move the iso and sig files to tools folder shutil.move(convertpath(dest + "/tools/payload/darwinPre15.iso"), convertpath(dest + "/tools/darwinPre15.iso")) shutil.move(convertpath(dest + "/tools/payload/darwinPre15.iso.sig"), convertpath(dest + "/tools/darwinPre15.iso.sig")) # Cleanup working files and folders shutil.rmtree(convertpath(dest + "/tools/payload"), True) os.remove(convertpath(dest + "/tools/com.vmware.fusion.tools.darwinPre15.zip.tar")) os.remove(convertpath(dest + "/tools/com.vmware.fusion.tools.darwinPre15.zip"))if __name__ == "__main__": main()以上是关于填坑黑苹果(VMware装MacOS) - 修改 Unlocker 补丁源码版的主要内容,如果未能解决你的问题,请参考以下文章 vue route query获取参数 uniapp 添加package.json 即可安装依赖使用 您可能还会对下面的文章感兴趣: 相关文章 浏览器打不开网址提示“ERR_CONNECTION_TIMED_OUT”错误代码的解决方法 如何安装ocx控件 VMware的虚拟机为啥ip地址老是自动变化 vbyone和EDP区别 linux/debian到底怎么重启和关机 苹果平板键盘被弄到上方去了,如何调回正常? 机器学习常用距离度量 如何查看kindle型号