⚠️ Note: All these operations require Administrator privileges.
First, attach the disk and assign it a drive letter, then run mountvol
.
Your drive mappings (drive letter and volume id1) will be listed at the bottom, take note of them.
Remove the drive’s letter using mountvol
, e.g. for drive Q:\
:
mountvol Q: /p
Using /p
will actually dismount the device. On older Windows versions, you only have /d
, which only unassigns the drive letter, but keeps the volume mounted.
Now we can make the volume read-only2 and remount it:
- Run
diskpart
- Enter
list volume
- Enter
select volume X
(where X is the correct volume number from the previous command) - Enter
att vol set readonly
- Enter
detail vol
and ensure the read-only bit is set3
- Enter
Reassign when needed, using the volume ID printed by mountvol
:
mountvol Q: \\?\Volume{1be3da43-6602-11e0-b9e6-f11e1c50f5b5}
You can also mount the volume on an empty folder (Unix style) using the same tools4:
mkdir C:\fs\backup-disk
mountvol C:\fs\backup-disk \\?\Volume{1be3da43-6602-11e0-b9e6-f11e1c50f5b5}
-
The volume GUID is tied to that specific volume, and persists after reboots. It has to, in order for persistent drive letter assignments and filesystem mounts to work. But unfortunately it’s local to the machine. ↩
-
To remove the readonly flag, select the volume in diskpart and enter
att vol clear readonly
. ↩ -
Those attributes are persistent and stored on the partition, so this is a bit different from the “read-only mount” notion on Linux (ie. simply putting the hard drive back in the original enclosure won’t make the partition read-write, and Windows won’t be able to boot on it). ↩
-
One might even be able to directly use the volume ID in your backup scripts, without having to mount it anywhere. For example,
\\?\Volume{1be3da43-6602-11e0-b9e6-f11e1c50f5b5}\projects
instead ofQ:\projects
. ↩