On Wed, 18 Feb 2015 17:11:33 -0500 Jes Sorensen <Jes.Sorensen@xxxxxxxxxx> wrote: > NeilBrown <neilb@xxxxxxx> writes: > > On Wed, 18 Feb 2015 13:12:09 -0500 Jes Sorensen <Jes.Sorensen@xxxxxxxxxx> > > wrote: > > > >> Jes.Sorensen@xxxxxxxxxx writes: > >> > From: Jes Sorensen <Jes.Sorensen@xxxxxxxxxx> > >> > > >> > I have received some issues for when creating an array using a > >> > /dev/mdX name, the matching symlink in /dev/md/X isn't > >> > created. Whereas if you create /dev/md/X, /dev/mdX is created > >> > automatically. > >> > > >> > I was trying to see if there was a better way of dealing with this, > >> > but I couldn't find one. If you have suggestions for a better solution > >> > I am all ears. > >> > > >> > Thoughts? > >> > >> Hi Neil, > >> > >> Any thoughts on this one? > > > > Thanks for the reminder.... > > > > I'm not sure that I really see the problem. > > > > "I ask it to create /dev/mdX and it doesn't create /dev/md/X". > > > > Well ... no. You didn't ask it to. If you want it to create /dev/md/X, > > then ... ask it to. > > > > /dev/mdX is the canonical name. It always gets created. > > /dev/md/X is a convenient alias. It gets created if requested. > > > > Is there really a problem here worth solving? > > > > Maybe I missed something. > > I have had complaints in Fedora from the installer people that they rely > on the /dev/md/ name being created when they create a new device. It is > also inconsistent because /dev/md/<X> will be created if you run > 'mdadm -As' later on. If they rely on the /dev/md/ name being created, then surely they should ask for it to be created. Is it really harder to run "mdadm -C /dev/md/0" than "mdadm -C /dev/md0" ?? If you create an array as "/dev/md0", then after subsequent "mdadm -As" /dev/md0 will exist. If you create an array as "/dev/md/0", then after subsequent mdadm -As", /dev/md/0 will exist. The fact that something unasked for also exists is a bonus. > > I don't see it as a major issue, but I can see why it is frustrating for > some and I think there is something to be said for being consistent in > behavior. I think the behaviour is perfectly consistent. It just follows rules that are slightly less trivial that some people appear to want. However.... If you changed mp = map_by_uuid(&map, info->uuid); if (mp && mp->path && strncmp(mp->path, "/dev/md/", 8) == 0) { printf("MD_DEVNAME="); print_escape(mp->path+8); putchar('\n'); } in Detail.c so that when mp->path were "/dev/md0", MD_DEVNAME became "0", then you should get the result that you are after, and I probably wouldn't object to the patch. NeilBrown
Attachment:
pgpOqcghA6hQW.pgp
Description: OpenPGP digital signature