夜雨聆风学习资料网

ARTICLE · 1355539

如何虚拟一个分区出来:软件需要D盘,但电脑只有1个C盘,又不想麻烦进PE重划分区,怎么办?

如何虚拟一个分区出来:软件需要D盘,但电脑只有1个C盘,又不想麻烦进PE重划分区,怎么办?
我最近在工作中遇到一个问题。公司的一台电脑上面只有一个C盘,没有其他的分区。后来有一些特殊需求,一个软件生成的文件会自动存储在D盘,也不能改文件路径,妈的。
那么我就需要一个D盘。
这个时候我想到以前看到过是可以用一个目录虚拟出来一个分区。就是想不起来具体的命令了。(对了,这个是Windows系统,Linux没有所谓的C盘、D盘,Linux的分区都是挂在一个目录下,想怎么挂怎么挂。)
Windows的命令很少记,我一般都现查,AI启动:

方案一:subst —— 快捷,无需管理员权限

subst就是把你 C 盘的一个普通文件夹“借”出去当一个盘符,写进去的文件实际就在那个文件夹里。

cmd命令如下:

mkdir C:\DDrive    #在C盘创建一个文件夹,用于映射D盘subst D: C:\DDrive   #执行映射操作 

然后在“此电脑”里会多出一个 D 盘,dir D:\能正常读写就说明生效了。往 D 盘丢个文件,再去看C:\DDrive,文件就在里面。

subst默认重启就没了。两种持久化方式,一个是做成开机启动脚本,一个是修改注册表。我一般不直接操作注册表,所以推荐设置开机启动。

把subst D: C:\DDrive写成mount.bat,放在shell:startup 目录(启动文件夹)。缺点是要在用户登录后才执行,而且只在当前账户里有效。

方案二:VHD 虚拟硬盘 —— 最稳,软件基本察觉不到

系统自带功能,虚拟出来的是一个真正的磁盘(有独立卷标、卷序列号、NTFS 权限、容量显示),兼容性远好于 subst。

第一步:创建

    1、Win+X  → 磁盘管理

    2、菜单操作→创建 VHD

    3、位置填C:\VHD\data.vhdx,大小填比如20 GB,格式选VHDX,类型选动态扩展

    4、创建后磁盘会显示为“未初始化”→ 右键初始化(GPT)→ 右键未分配空间 → 新建简单卷 → 分配盘符D→ 格式 NTFS

第二步:设置开机自动挂载

    1、新建C:\VHD\mount.txt 脚本:

select vdisk file="C:\VHD\data.vhdx"attach vdisk
    2、任务计划程序→ 创建任务:
        常规:勾选不管用户是否登录都要运行+使用最高权限运行
        触发器:计算机启动时(再加一个“用户登录时”更保险)
      操作:启动程序 diskpart.exe,参数 /s C:\VHD\mount.txt(也可以用 PowerShell 一行:Mount-DiskImage -ImagePath C:\VHD\data.vhdx)

最后,我选择的方式二,因为那个软件对于subst映射出来的磁盘无法访问。

回首页,搜索你想要的文档

在首页搜索框输入关键词,快速定位资料

文库首页搜索指引 立即搜索

相关学习资料