[PATCH] Cygwin: Add /dev/disk/by-drive and /dev/disk/by-uuid symlinks

Christian Franke Christian.Franke@t-online.de
Thu Nov 16 11:50:49 GMT 2023


Corinna Vinschen wrote:
> Hi Christian,
>
> On Nov 15 18:23, Christian Franke wrote:
>> This is the next (and possibly last for now) extension to the /dev/disk
>> directory. Limited to disk related entries which allowed a straightforward
>> extension of the existing code.
>>
>> My original idea was to add also other drive letters and volume GUIDs. Too
>> complex for now.
>>
>> Interestingly the volume GUID (by-uuid) for partitions on MBR disks is
>> sometimes identical to the partition "GUID" (by-partuuid), sometimes (always
>> for C:?) not. With GPT disks, both GUIDs are possibly always identical.
> That looks great, but in terms of by-uuid, I'm not sure it's the
> right thing to do.  On Linux I have a vfat partition (/boot/efi).
> The uuid in /dev/disk/by-uuid is the volume serial number, just
> with an extra dash, i.e.
>
>    057A-B3A7 -> ../../sda1
>
> That's what you get for FAT/FAT32/exFAT.

What is the best way to retrieve a FAT* serial? There is 
GetVolumeInformation{ByHandleW}(), but this may not work with the NT 
Layer pathnames / handles used here. In Cygwin tree, 
GetVolumeInformation only appears in cygcheck.cc and very old ChangeLogs.


> I also tried an NTFS partition and the output looks like this:
>
>    0FD4F62866CFBF09 -> ../../sdc1
>
> This is the 64 bit volume serial number as returned by
> DeviceIoControl(FSCTL_GET_NTFS_VOLUME_DATA)(*).
>
> Wouldn't that be what we want to see, too?

Hmm...... yes. Should both information be provided in by-uuid or only 
the serial numbers? In the latter case, should we add e.g. by-voluuid 
for the volume GUIDs ?

Christian



More information about the Cygwin-patches mailing list