给 Windows 加个 虚拟磁盘挂载服务,让 MBP 支持 D盘

来自:互联网
时间:2020-05-07
阅读:

新入一台 MBP,硬盘 256G 的仅用 MacOS 有点浪费,使用 Bootcamp 安装了 新版 Win10。用来做 日常的开发。

装好系统,又发现新问题了。Windows 2008 IIS 中的 PHP 设置,在 web.config 设置的,PHP安装在D盘,而通过 Bootcamp 安装好系统 只能有 一个 分区。

尝试分区时 发现 了 VHD,创建虚拟磁盘 后 实现了 Macbook Pro 通过 Bootcamp  增加多个分区的功能。

具体操作方法如下:

1、找到 磁盘管理,右键创建 VHD

给 Windows 加个 虚拟磁盘挂载服务,让 MBP 支持 D盘

2、选择 存放位置,磁盘大小。虚拟格式选择 VHD,虚拟磁盘类型选择 固定大小。动态扩展会产品大量碎片,影响性能。

给 Windows 加个 虚拟磁盘挂载服务,让 MBP 支持 D盘

3、等待创建 完毕,选择 固定大小会有点慢。可以看到 创建了 对应的虚拟磁盘文件。

给 Windows 加个 虚拟磁盘挂载服务,让 MBP 支持 D盘

4、创建完毕后,就可以像 正常的磁盘一样分区了。

给 Windows 加个 虚拟磁盘挂载服务,让 MBP 支持 D盘

5、分区完毕后,即可 看到新增加的 磁盘(比如:D盘)

给 Windows 加个 虚拟磁盘挂载服务,让 MBP 支持 D盘

6、重装系统或备份时,可以 分离VHD,保存到 移动硬盘 备份。

给 Windows 加个 虚拟磁盘挂载服务,让 MBP 支持 D盘

这样还有个缺点,重启系统后,需要重新挂载(数据不会丢失)。百度搜索后,发现可以通过diskpart.exe挂载。

给 Windows 加个 虚拟磁盘挂载服务,让 MBP 支持 D盘

之前配置 windows 下 Nginx 用到了 winsw.exe,我用winsw.exe 配置了一个 vdisk-service-mqycn 的服务,可以在Windows系统启动时自动运行,支持多个虚拟磁盘。点击下载

使用方法非常简单,已经建好 Data.vhd 和 Web.vhd 的磁盘模板, 解压后放到:C:disk,右键以管理员身份执行,即可自动安装到系统服务。每次开机自动运行。也可以参考 上面的步骤 1-6,手工创建更多 虚拟磁盘,点启动 虚拟磁盘自动挂载服务,会自动加载 C:diskvdisk 目录下的所有虚拟磁盘。

给 Windows 加个 虚拟磁盘挂载服务,让 MBP 支持 D盘

如果 不想安装服务,也可以 通过 mAIn.cmd 手工 挂载 和 卸载。

给 Windows 加个 虚拟磁盘挂载服务,让 MBP 支持 D盘

核心的批处理脚本如下:

@echo off

set temp_file=C:disklogconfig.txt

if "%1"=="" goto exit
if "%1"=="service" goto main2
if "%1"=="mount" goto main
if "%1"=="unmount" goto main
if "%1"=="config" goto config

:main2
call %0 unmount
call %0 mount
goto exit

:main
cd %~dp0
if "%2"=="mount" (
  echo 挂载虚拟磁盘中...
) else (
  echo 卸载虚拟磁盘中...
)
echo.>%temp_file%
for /r %%d in (vdisk*.vhd) do call %0 config %1 %%d
echo exit>>%temp_file%
diskpart /s %temp_file% %2>nul
del %temp_file%
echo 执行完毕
goto exit

:config
echo 发现 %3 ...
echo select vdisk file=%3>>%temp_file%
if "%2"=="mount" (
  echo attach vdisk>>%temp_file%
) else (
  echo detach vdisk>>%temp_file%
)
echo.>>%temp_file%
goto exit

:exit
返回顶部
顶部