Force see drive letter as local disk

0

Please note: even if I am mentioning macOS in this question the issue is not related to it.

Some background

My computer has two operating systems: macOS 10.12.6 Sierra and Windows 10.

Disk drives are organized this way:

  • A Samsung 960 PRO 512 M.2 PCIe GB SSD which only has a Windows NTFS partion (and obviously ESP, boot partition, recovery etc.) on it. I use it with Microsoft Windows 10 in UEFI mode.
  • A 2TB Seagate Barracuda traditional, spinning hard drive, which contains the following:
    • An NTFS partition that I can access from Windows natively and from macOS via Paragon. It contains all of my user data (pictures, presentations, documents, videos, Steam games etc.)
    • An HFS+ macOS "Extended Journaled" partition which essentially is my macOS / partion. The drive also has an ESP partition for booting macOS along with the Recovery partition of this OS.

When I am booted from Windows, the SSD is Disk C:\ and the data HDD is on D:\; meanwhile, on macOS, both are mounted under /Volumes with their names. Additionally, the macOS volume which does not get mounted on Windows is the root drive.

Since I need macOS for web and vector design yet I sometimes need to quickly access Windows to use some programs which are not available on Mac, I set up a Parallels Desktop VM to start Windows from the SSD in a virtual environment and I additionally mapped the data HDD partition location (/Volumes/myhddname) to a virtual "VM Shared Folder" network share which appears on Windows as a network share located on the same letter (D:) as when it is actually mounted natively. I had to do this because unfortunately Parallels won't let me give Windows direct access over the SATA HDD partition, probably due to the drive also containing macOS root.

This means I have a nearly seamless system: when I need performance and/or want to use some graphics-intensive apps/games on Windows I just boot from the SSD and use the Hard Drive normally. When I need to use macOS and I wish to run some Windows apps I can very conveniently run macOS natively and use the Windows VM in it, with full access to the same drives and data (both the SSD and the HDD) without even breaking links and shortcut files between drives (network share and native HDD on Windows are mounted as the same drive letter regardless of how I am booted).

Now to the matter at hand

When I said I have a nearly seamless system, I did so because of an issue that I have recently encountered with several Windows apps. Since Windows recognizes D:\ as a network drive, it treats it as one, even when it's actually not! In fact, when I boot Windows natively, not via the VM, the Computer is physically connected to the Drive (via SATA) so it should detect my Hard Disk as such and put it alongside the C: drive, but instead it sees it as a disconnected network drive, even though it lets me browse it, copy files from and to it, Steam can run games perfectly from it...

my drive on native Windows

When I use some media apps though, including VLC and the crappy UWP media Windows 10 app, they both spit out errors involving failure of downloading a file: they think it's a server, so what they do is use some specific media server streaming features instead of doing a simple playback from disk.

How do I tell Windows that mine is not a network drive but instead a local, SATA drive?

'Cause even Disk Management seems to get it. Windows Disk Management does it right too

Manchineel

Posted 2017-10-29T18:45:08.787

Reputation: 479

I'm not sure that the two D: disks above relate to the same disk. I don't know Parallels, but can't you include in the VM directly the physical and non-network D:? – harrymc – 2017-10-29T19:03:37.763

@harrymc Well this is the problem: I cannot. Parallels won't let me add an extra partition that is located on the same drive as macOS. The "two" D: actually represent the same drive except in one case it's just the physical HDD partition, in the other, it's a virtual network share created by the VM software – Manchineel – 2017-10-29T19:12:05.643

Answers

0

You may try to add the network drive as a local folder via a junction created with the mklink command. This might trick Windows applications into considering it as part of the C: disk.

In Windows, start a Command Prompt (cmd) that is Run as administrator and enter this command:

mklink /D C:\localname \\server\share\foldername\

If this works, I wouldn't suggest running chkdsk on C: without undoing it first.

harrymc

Posted 2017-10-29T18:45:08.787

Reputation: 306 093

>

  • Can I link it to a letter instead of a path on C: 2. If I do this will I be able to have the drive appear as local on the same location in both cases (network, local)
  • < – Manchineel – 2017-10-30T13:38:29.027