Comment 2 for bug 1735839

Revision history for this message
Scott Moser (smoser) wrote : Re: feature request: /dev/by-dname symlinks based on GUID patition table UUIDs

The issue with us provding /dev/disk/by-dname/ links based on content inside the disk is that the content can move. Ultimately when we added 'by-dname' links, we were intending it to be "disk name". Ie, the user would provide a name for the disk in maas and then could assume that /dev/disk/by-dname/<name> would point to that disk.

The implementation, however, ended up relying on contents of the disk.

The problem with this approach is that the contents can move.

Consider:
 a.) user boots system with disks named 'blue' and 'red' and 'boot'. Red is initially provisioned as empty.
 b.) user moves data from 'blue' to 'red'. exactly how doesn't matter, but consider 'dd if=/dev/disk/by-dname/blue of=/dev/disk/by-dname/red'. and then wipes /dev/disk/by-dname/blue.
 c.) user reboots
 d.) user formats /dev/disk/by-dname/blue to put new data on it.

If the data *on* blue was used to identify it, the user will have just destroyed their data, as /dev/disk/by-dname/blue will point to the 'red' disk.

What we decided was that to work our way out of this issue, we should/would provide a /dev/disk/by-<something> that would *only* consider serial numbers or wwid as basis for its names.