前言
相信拥有M芯片的Mac现在性能都过剩,不免就想到用mac做其他服务比如说虚拟机跑飞牛os。但是现在有个痛点,就是市面上Mac的虚拟机软件(UTM, Parallel和VMware)都只支持USB3.0的协议。然而能满足用户的大量的存储需求,往往需要用到雷电接口(Thunderbolt 3/4/5)的固态硬盘盒或者机械硬盘柜组RAID,可是虚拟机并不支持雷电设备直通。又由于苹果设备本身存储空间贵,很多人在Mac虚拟机上面装上飞牛之后,由于本机的内存也都只有不到1TB,再加上平时使用的软件等等,没有太多的存储空间可以分配给飞牛NAS。
本贴是给大家带来让在Mac虚拟机环境下安装飞牛,并且让飞牛识别到你外接的雷电硬盘/硬盘盒/硬盘柜。本质上是通过Raw disk再通过虚拟硬盘映射的方式将硬盘添加给虚拟机。


准备工作:
-
下载并且安装好Vmware(目前我知道的只有VMware支持 RAW Disk)
-
下载好飞牛os官方镜像(我的是苹果M系列芯片,所以下载了ARM版本)
-
准备好你的外接硬盘。
========================================================
所有的准备工作就只有这么多,剩下来大家跟我一步一步操作
在Vmware上面安装飞牛已经有很多人都会了,这里不再赘述。如果有需要可以在网上随便找视频,一搜一大把。
第一步:
在打开VMware进入飞牛系统之前,我们需要先把外接硬盘插入mac上面并且确定通过终端指令:diskutil list 能够识别到外接硬盘如下图, disk4就是我们要添加到虚拟机的外接硬盘(我的是雷电硬盘盒配上三星2tb Nvme SSD)。然后 我们需要先卸载这个硬盘(Unmount)。!注意,不是弹出硬盘,是卸载硬盘。具体写在步骤可以通过终端输入diskutil unmountDisk disk4,或者打开“磁盘工具”,选择已经识别到的硬盘点击右上角的Unmount 如下图(我这里是已经卸载了,所以现在按钮是装载,如果你们已经识别这里应该是卸载)。


第二步
现在我们可以打开VMware,来对已经安装好的飞牛os虚拟机进行设置。首先我们需要在飞牛os虚拟机上面创建一个新的虚拟硬盘文件。如下图所示, 右键你创建好的飞牛虚拟机,选择‘设置’,在弹框里选择右上角“添加设备”,选择“新的硬盘”然后点击右下“添加”。接着设置虚拟硬盘文件的命名,位置以及大小。(位置可以保持默认位置,但前提是你在访达里面可以找得到。硬盘大小无所谓,因为我们后面会用文件覆盖这个文件的)。如果你是含有多个硬盘的硬盘柜,里面装了多于一块硬盘的情况下要分别创建不同的硬盘文件并且区分命名(比如 external disk1.vmdk, external disk2.vmdk..等等)

在VMware Library选择你的飞牛OS虚拟机,右键->设置。

选择右上角“添加设备”

选择创建“新的硬盘”

这个弹窗里面要设置硬盘文件的名称,位置,以及硬盘大小。

命名,并且保存

这个时候,设置里面就已经有2个硬盘了。
第三步
创建 Raw Disk 映射。按照如下命令再检查一遍硬盘是否已经卸载了。
先 unmount 磁盘 (不是 eject!)
/usr/sbin/diskutil unmountDisk disk4(这里是你的硬盘编号,如果你有多个硬盘需要重复操作把所有的硬盘都卸载)
创建 Raw Disk VMDK
sudo "/Applications/VMware Fusion.app/Contents/Library/vmware-rawdiskCreator" create /dev/disk4 fullDevice ~/DiskName.vmdk lsilogic
(注意,这一步需要系统权限,后面需要输入密码然后回车才会执行。这里的DiskName.vmdk就是你创建的虚拟硬盘映射文件,后面我们需要用这个文件里面的内容替换掉我们之前在VMware虚拟机里面创建的文件)
第四步
现在我们来替换文件,一般VMware默认的硬盘信息文件会储存在~/Virtual Machines.localized/[VM名].vmwarevm/ 这个目录。先右键访达,选择“去文件夹”然后输入路径,然后你会找到你命名的飞牛虚拟机文件后缀为<你的虚拟机名称>.vmwarevm 如图所示,然后右键这个文件选择“显示打包内容”。这样你就能看到你之前在VMware里面创建的一个或者多个硬盘文件(如图所示),我们需要先备份一下我们创建的文件(其实我也不知道备份了有什么用,但是以防万一,先备份一下)。

右键这个文件,然后选择“显示打包内容”

你就能看到你之前在虚拟机里面创建的一个或者多个硬盘文件。
我是通过改名的方式在每个文件后面加了xxxxx_backup.vmdk这种方式命名的,然后我们需要将我们之前创建的硬盘映射文件改名并且拖入这个文件夹中,注意命名一定要跟之前创建文件的时候要保持一致(也就是对应的xxxxx.vmdk文件名),要不然虚拟机找不到这个文件也就无法发现这个硬盘。
现在我们再去启动虚拟机下的飞牛OS,进入网页端可以看到已经发现了外接硬盘而且我硬盘的两个分区都被识别到了,因为命名的时候我的是external HDD-s001.vmdk 和external HDD-s002.vmdk,并且可以支持创建存储空间如图所示。


好了现在大家可以在mac上面通过虚拟机跑飞牛并且将外接的存储空间用于飞牛nas的存储空间了。
祝大家玩的愉快。>_<
如果有什么说的不准确,还请大家海涵,毕竟小白一枚,研究了挺久也是第一次找到能用的方案。