>>>> My new laptop uses /dev/nvme0n1 instead of /dev/sda which conflicts
>>>> with the script I use to manage about 12 similar laptops running
>>>> Gentoo.  Is there a udev method for renaming the disk that will work
>>>> well with any USB disks that happen to also be attached?
>>>
>>> I'm not certain what you mean by that, but I would guess that you want
>>> the nvme disk to show up as /dev/sda, and the USB disk(s) to show up
>>> as /dev/sd[b-z].
>>>
>>> It is not possible to accomplish this using udev; the kernel owns the
>>> /dev/sdX device namespace, and will sequentially create devices nodes
>>> for SCSI-like block devices using that namespace. There is no way to
>>> change that using a udev rule.
>>
>>
>> Can I rename /dev/sda to /dev/sd[b-z] if it's attached via USB, and
>> then rename /dev/nvme0n1 to /dev/sda if /dev/nvme0n1 exists?
>>
>> Alternatively, can I rename /dev/sda to /dev/sd[b-z] if /dev/sda and
>> /dev/nvme0n1 exist, and then rename /dev/nvme0n1 to /dev/sda if
>> /dev/nvme0n1 exists?
>
> You might technically be able to do it, but I would guess it would
> cause some nasty race conditions between the kernel and udev. It's a
> bad idea.


Is it the conditionals that cause this to be a bad idea?  Because I
believe udev has functionality designed to rename devices exactly like
this.

- Grant

Reply via email to