[systemd-devel] EXT :Antw: [EXT] Udev Regex

Boyce, Kevin P [US] (AS) Kevin.Boyce at ngc.com
Wed May 6 13:03:11 UTC 2020


Ulrich,

I just noticed that too.  This seems rather restrictive given that one could have a system with many drives, and with GPT it is not unreasonable to have a large number of partitions as well.

There should be a way in udev to write rules that can distinguish between /dev/sda and /dev/sdzfe87.  Matching with sd[a-z]* or even sd* does not provide enough granularity.

What would it take to get this sort of request in to systemd-udev to support perl style regular expressions that can group terms and match multiple instances of a group with '+'?

Kevin

-----Original Message-----
From: Ulrich Windl <Ulrich.Windl at rz.uni-regensburg.de> 
Sent: Wednesday, May 06, 2020 8:41 AM
To: systemd-devel at lists.freedesktop.org; Boyce, Kevin P [US] (AS) <Kevin.Boyce at ngc.com>
Subject: EXT :Antw: [EXT] [systemd-devel] Udev Regex

>>> "Boyce, Kevin P [US] (AS)" <Kevin.Boyce at ngc.com> schrieb am 
>>> 06.05.2020 um
14:15
in Nachricht
<16534_1588767787_5EB2AC2A_16534_16_1_d2c2e1aff05740ea9d1ea3e1325511b2 at XCGVAG30.
orthgrum.com>:
> Good Morning List,
> 
> Does anyone know how complicated of a regular expression can be 
> utilized in

> a udev rule?
> 
> For instance I have a system with a lot of drives (sda through z 
> aren't
> enough) and I want to write a rule that will match the physical block
devices 
> for one rule and then a separate rule for partitions.
> 
> Something like this, however the rules don't seem to fire except when 
> I remove the '+' from the rules:

The man page udev(7) I have lists '[', ']', '|', '*' and '?', but not '+'...

> ACTION=="add", SUBSYSTEM=="block", KERNEL=="sd[a‑z]+",
> SYMLINK+="some_device_%k"
> ACTION=="add", SUBSYSTEM=="block", KERNEL=="sd[a‑z]+[0‑9]+",
> SYMLINK+="some_device_%k"
> 
> I am running systemd version 219‑67.
> 
> Kind Regards,
> Kevin





More information about the systemd-devel mailing list