Mac中安装Windows虚拟机给小米手机刷Root

编程知识 更新时间:2023-04-17 02:15:13

文章目录

  • 背景
  • 小米刷机
    • 1)小米手机刷机流程
    • 2)注意的问题
  • VirtualBox识别USB、U盘等问题
    • 1) VirtualBox安装虚拟机
    • 2) 虚拟机无法识别USB
      • 1) Host机(宿主机)需要安装USB扩展包-VirtualBox Extension Pack;
      • 2)在主机的端口=》USB设备指定正确的识别设备。
      • 3)虚拟机是否能自动安装驱动来识别对应版本的USB.
        • 问题 Failed to attach the USB device error: VERR_PDM_NO_USB_PORTS
  • VirtualBox文件传输
    • 法1 共享主机与虚机的粘贴板- 核心:VBox Guest Additions扩展程序
    • 法2 共享目录
  • 总结 VirtualBox蕴含的设计思想

背景

笔者因为想研究西安一码通小程序背后的接口,所以需要抓包。抓包就需要给手机安装证书,而且是安装【系统证书】。又因为是小米手机,无法直接把证书移动到系统目录下,因而需要刷机取得ROOT权限后方可安装系统证书,这样才能解决抓包工具显示的HTTPS的Path是UNKNOWN的问题。

通过这篇文章,可以了解这些知识:

  • 小米手机刷机流程和注意点
  • Mac安装虚拟机-使用VirtualBox
  • Mac下Windows虚拟机和USB连接问题
  • 虚拟机背后的思想

小米刷机

1)小米手机刷机流程

手机USB连接电脑,手机进入FAST BOOT状态 ==》
申请解锁小米手机 =》
下载安装包(截止博客发文,小米官方解锁工具仅支持Windows)    ==》 
小米账号登录解锁 ==》
后续暂省略

因为小米只支持Windows来解锁手机,笔者是Mac,又因为疫情不方便借电脑,所以想到的方案是:可不可以通过虚拟机来解锁?——实践证明是可以的。

具体步骤:参考官网:

解锁官网:http://www.miui/unlock/index.html

BL问题:http://cache.baiducontent/c?m=16TW8Fw1gxSDwRFArW2bgWBrkJsty4rf6r7jdiLpd5BsSJn0OhMQhFI6Y7kLopU5yCOYJMO6U_TfYsh0y5AcU3x6M3MpdE548xxVMsFZOv6nWRhh9cuw7sSH_yDED_yVKpnQXi_8lu-40-sPiEMq3ftGXZcUXSS3SqvT5Gv2HKC1G_VDsTY3bkXpdW47-8VQnTnLMAkV3wiUQL-6KvOONiQvId78BlWcRtgFzuP2S7pI9ix3-Z6AFiRqF6fXpJUyW8r-cIAmCk0qKcJC9cd4RWWt3EU8EoDr03ZtpD3nBYzf5KUlr_ECwVkmUnI8dsFQqF1g16Dvc6VCgmh06oFwJrDzEhpMNsslF9xSiWwCo3y&p=aa63c54ad5c346fa0ab8c7710f5689&newp=8b2a970e968202ff57ee94795a41cf231610db2151d1d701298ffe0cc4241a1a1a3aecbe25251000d2c17e6d0baa4d5fe0f637763d0034f1f689df08d2ecce7e64c86677&s=cfcd208495d565ef&user=baidu&fm=sc&query=%C4%FA%B5%C4%D5%CB%BA%C5%D3%EB%C9%E8%B1%B8%B5%C4%B0%F3%B6%A8%CA%B1%BC%E4%CC%AB%B6%CC%2C%C7%EB52%B8%F6%D0%A1%CA%B1%BA%F3%D4%D9%CA%D4%2C&qid=8a1760c400009ed8&p1=5

结论:虽然过程折腾,肯定不如直接借用Windows电脑来解锁,不过“虽然浪费了不少时间”,也有别的收获。

2)注意的问题

1) 解锁工具提示“您的账号跟设备的绑定时间太短, 请 X 个小时后再试,等待期间请经常使用该设备。
详细解释请见上方的:BL问题快照链接。

2)手机和Mac连接需要一个USB- USB-TypeC接口转换头。
大家购买的时候可以买多个接口的,一步到位。
比如:接口的接口支持:HDMI、VGA、USB3.0、USB2.0等。

3)其他问题
待52h之后方能解锁操作。

VirtualBox识别USB、U盘等问题

1) VirtualBox安装虚拟机

之所以没选用VMware,是因为发现网上大多数建议Mac下用VirtualBox,说好用。

VirtualBox安装Windows过程不多介绍,网上内容很多。这里罗列核心流程

下载Windows镜像(.iso)  ==>
新建虚拟机 ==》
一直下一步即可(分配内存、分配空间),其他都使用默认值 ==》 
指定镜像==》
启动。

注意:

1)虚拟机创建好之后需要指定镜像文件.iso,指定方式如下。
.vdi是创建虚拟机时候自动创建的,不必理会。

2) 镜像文件要正确
镜像文件有问题,会导致启动失败,直接halt住,启动后会报错:

fatal: No bootable medium found! System halted

​​此时,不要犹豫,不要纠结,果断更换镜像。

笔者用的是Windows镜像,正确的Windows镜像应该这样的:

cn_windows_7_ultimate_with_sp1_x64_dvd_u_677408.iso
cn_windows_10_multiple_editions_x64_dvd_6848463.iso

推荐镜像下载链接

下载地址:https://msdn.itellyou/

从官网下载的是这样的,VirtualBox安装会有问题。

#以下镜像VirtualBox启动会直接halted住。
Windows10_x64.iso
GHOST_WIN10_X86.iso

建议用Windows10,而不是Windows7。

2) 虚拟机无法识别USB

其实,1)选定正确的Windows版本,比如Windows10(截止博客发布时间)
2)选定正确的镜像
这两步做对了,无法识别USB的问题基本就避过了很多“坑”。

根据网上观点,要想正确识别USB,需要:

1) Host(宿主机)需要安装USB扩展包-
     VirtualBox Extension Pack2)在【主机的端口=》USB设备】指定正确的识别设备。
3)虚拟机是否能自动安装驱动来识别对应版本的USB.
    若不能,需要手动安装USB驱动。比如:Windows7是无法识别USB3.0的,
    安装了低版本的USB3.0驱动,还是识别不了;安装高版本的USB3.0驱动,
    又提示OS不支持。所以笔者果断更换了Windows10Windows10会自动识别USB3.0
    并且自动更新驱动,非常丝滑。
  

1) Host机(宿主机)需要安装USB扩展包-VirtualBox Extension Pack;

大多数人这一步都没问题。

安装好后的效果是什么呢?

2)在主机的端口=》USB设备指定正确的识别设备。

    可能部分人这一步有疑惑,到底该怎么配?是配一个通用的筛选器?还是配置精准的识别到的设备?(就是你插在主机的U盘、或者USB)
 结论: 笔者发现直接添加一个空的筛选器没效果,需要精准的添加对应的设备。

配置如下:

如果设备识别出来了,会自动在你指定具体设备列表中展现出来:比如这里的Sansung Flash Drive——笔者的U盘。如果没有出现,那说明设备坏了,首先要确保主机能够识别这些设备,然后在看虚拟机能否同步识别到主机的设备。

3)虚拟机是否能自动安装驱动来识别对应版本的USB.

特别要关注虚拟机顶部的tips提示和桌面右下角设备识别情况。

问题 Failed to attach the USB device error: VERR_PDM_NO_USB_PORTS

ailed to create a proxy device for the usb device. (error: VERR_PDM_NO_USB_PORTS)

1、确定端口那里指定了正确的【USB设备筛选器】
1)要明确自己的设备到底是USB2.0还是USB3.0.
上面的这个错,表明这里配置是正确的,如果没有这个错,什么动静都没有就有必要检查下。可以用个U盘先试一下。正确的情况是主机和虚拟机都能正确看到U盘(Windows10系统里,无需在主机中强制退出U盘)

2) 明确虚拟机系统版本,尽量用较新的版本

      结论:最新的系统会在设备连接主机时候,虚拟机一旦检查到会自动更新驱动,省略手动下载驱动的麻烦。
      所以尽量安装比较新的操作系统

笔者最开始安装的是Windows7,按照网上说的手动下载USB3.0驱动,安装后没效果,依旧无法识别。
更换思维,下载不同版本的驱动,发现新一点的USB3.0驱动在W7下无法安装,所以更换思维,把虚拟机更换为W10,设备连接后驱动就自动识别了!

VirtualBox文件传输

详细参考此篇即可:
Virtualbox中如何实现主机与虚机(Ubuntu 14.04)之间传输文件

法1 共享主机与虚机的粘贴板- 核心:VBox Guest Additions扩展程序

参考:
如何安装Virtual Box的VBox Guest Additions扩展程序

注意,这个扩展是.iso,在虚拟机里面直接打开,会发现里面直接就是可执行文件,有支持Win的exe,有支持Mac的pkg.

验证安装好了?
发现在虚拟机里面Ctrl+C 在主机里面就可以Command +V 了!
同时还发现设置==》 存储 这里之前的系统.iso被替换了。

法2 共享目录

暂无需求,就没去尝试。
如果需要,可以在网盘中直接传输文件,不也方便?

总结 VirtualBox蕴含的设计思想

    VirtualBoxVmware类似,都是虚拟机管理软件。由此联想到了容器——DockerDocker就是使这个过程更加快!更强!

   他们要解决的问题都是快速创建一个虚拟的系统,这个系统要和宿主机隔离并且又能相互通信。我们不妨从具体的点来对比一下
维度虚拟机Docker
隔离HOST和GUEST之间完全隔离,互不影响类似
创建方式GUI方式,从下载镜像到创建到启动,至少10min非常快 docker pull imageName 启动:docker run -it --name=containerName -p 8091:8090
网络Windows虚拟机网路自动就是通的待研究
文件共享需要安装这扩展包,那扩展包之后方能互相传输文件docker cp a.txt containerName:/etc/a.txt
其他待发现待发现

一句话,用Docker真的非常爽。安装MySQL、Nginx、Redis真的是分钟级的,而且迁移系统非常方便。如果没有Docker,都用传统方式安装各种软件,真是非常非常大的工作量,可以试想一下,如果是大数据,那么多集群,那么多软件,运维工作多么繁重啊。

不过,我们能从中体会到的就是这种容器一步步简化虚拟机的思想:
考虑宿主机和主机如何隔离?网络如何通信?文件如何共享?如何使这一切都变得更快!

好了,今天就分享到这吧。再会。

更多推荐

Mac中安装Windows虚拟机给小米手机刷Root

本文发布于:2023-04-13 16:28:00,感谢您对本站的认可!
本文链接:https://www.elefans.com/category/jswz/3ce99f3de3eaa3ad0e75212712cd26ef.html
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
本文标签:小米   虚拟机   手机   Mac   Windows

发布评论

评论列表 (有 0 条评论)
草根站长

>www.elefans.com

编程频道|电子爱好者 - 技术资讯及电子产品介绍!

  • 73168文章数
  • 14阅读数
  • 0评论数