问题背景

每次用windows to go在mac上跑,使用bootcamp装好驱动后D盘总是消失。在磁盘管理里重新设置盘符之后可以正常使用,但是重启之后又没了。对于习惯尽可能把软件装在D盘里的我来说很不方便,所以在查阅资料后找到了解决方法。

吐槽

网上很多使用diskpart的教程要么就是过期的,要么就是不知道哪里搞来的假教程,什么set id之类的全是假的,我搜索了好久,每次不是提示:

DISKPART> set id=07 override

指定的类型的格式不正确。
有关此命令类型的详细信息,请使用 HELP SET 命令

就是

DISKPART> set 07 override

为此命令指定的参数无效。
有关此命令类型的详细信息,请使用 HELP SETID 命令

还有设置注册表之类的,我对直接修改注册表向来是比较抵触的,因为随便修改底层的、自己完全不了解的东西是需要冒着极大的风险的,而且看着网上残次不齐抄来抄去的同一篇教程总是很不放心。

结论

  • win+R 开启 cmd
  • 命令提示符中输入 diskpart 将得到一个新的命令行窗口(此步骤可能需要获得管理员权限)
  • 使用 list disk 显示磁盘列表
DISKPART> list disk

  磁盘 ###  状态           大小     可用     Dyn  Gpt
  --------  -------------  -------  -------  ---  ---
  磁盘 0    联机              233 GB      0 B        *
* 磁盘 1    联机              472 GB      0 B        *
  • 使用 select disk 选择需要的磁盘
DISKPART> select disk 1

磁盘 1 现在是所选磁盘。
  • 使用list volume显示分卷列表
DISKPART> list volume

  卷 ###      LTR  标签         FS     类型        大小     状态       信息
  ----------  ---  -----------  -----  ----------  -------  ---------  --------
  卷     0         EFI          FAT32  磁盘分区         300 MB  正常         已隐藏
  卷     1     C                NTFS   磁盘分区         200 GB  正常         启动
  卷     2     D                exFAT  磁盘分区         271 GB  正常
  卷     3                      FAT32  磁盘分区         350 MB  正常         系统
  • 使用select volume选择分卷列表
DISKPART> select volume 2

卷 2 是所选卷。
  • 使用detail volume显示分卷信息
DISKPART> detail volume

  磁盘 ###  状态           大小     可用     Dyn  Gpt
  --------  -------------  -------  -------  ---  ---
* 磁盘 1    联机              472 GB      0 B        *

只读                   : 否
隐藏                   : 否
没有默认驱动器号       : 否
卷影副本               : 否
脱机                : 否
BitLocker 已加密       : 否
可安装            : 是

卷容量                 :  271 GB
卷可用空间             :   84 GB
  • 使用attribute volume set hidden来隐藏分卷,此时可以看到D盘(在我这里是D盘)在计算机中消失
DISKPART> attribute volume set hidden

卷属性设置成功。
  • 使用attribute volume clear hidden来显示分卷,此时可以看到D盘重新显示
DISKPART> attribute volume clear hidden

卷属性清除成功。

更进一步

  1. 顺便提一句,只读属性使用readonly字段设置,设置了只读之后除格式化外任何修改磁盘的操作会提示该卷被写保护。
  2. diskpart还可以进行磁盘管理中可做的对磁盘的任何操作,比如分卷、扩展等,功能还更多(我怀疑自带的磁盘管理底层用的就是diskpark)

又是吐槽

windows的命令行提示真的做的和屎一样,可设置的属性字段各种help的都不提示,可能对于英文用户来说这些属性可能是显而易见用英文标识的,但对于中文用户还要在不同的同义词中去猜程序具体使用的是哪一个。如果不能像 attribute volume set 隐藏 这样使用中文来输入命令,要么就加上英文字段,要么就干脆不要翻译,反正一般人也不会用这些命令。

标签: none

仅有一条评论

  1. Windows自带的磁盘管理底层确实用的就是diskpark,可以在事件查看器中看到磁盘管理调用diskpart时的日志。
    diskpart应该是Windows内核提供的服务(猜测),当diskpart工作时使用的并不是diskpart进程而是system(还是猜测,进行一些io操作时可以在任务管理器中看到System进程的高占用)

添加新评论