mirror of
https://github.com/mvp/uhubctl.git
synced 2026-05-17 00:16:13 +03:00
Fix udev rules to support Linux kernels 6.8+
Linux kernels before had devpath containing `usbN-portM`. Newer kernels just use `port` symlink instead, which breaks our udev rules. Changing glob from `*-port*` to `*port*` makes it work for both old and new kernels. Closes issues #608, #609.
This commit is contained in:
@@ -250,7 +250,7 @@ Then, add udev rules like below to file `/etc/udev/rules.d/52-usb.rules`
|
||||
SUBSYSTEM=="usb", DRIVER=="usb", MODE="0666", ATTR{idVendor}=="2001"
|
||||
# Linux 6.0 or later (its ok to have this block present for older Linux kernels):
|
||||
SUBSYSTEM=="usb", DRIVER=="usb", \
|
||||
RUN="/bin/sh -c \"chmod -f 666 $sys$devpath/*-port*/disable || true\""
|
||||
RUN="/bin/sh -c \"chmod -f 666 $sys$devpath/*port*/disable || true\""
|
||||
|
||||
Note that for USB3 hubs, some hubs use different vendor ID for USB2 vs USB3 components of the same chip,
|
||||
and both need permissions to make uhubctl work properly.
|
||||
@@ -264,8 +264,8 @@ If you don't like wide open mode `0666`, you can restrict access by group like t
|
||||
SUBSYSTEM=="usb", DRIVER=="usb", MODE="0664", GROUP="dialout"
|
||||
# Linux 6.0 or later (its ok to have this block present for older Linux kernels):
|
||||
SUBSYSTEM=="usb", DRIVER=="usb", \
|
||||
RUN+="/bin/sh -c \"chown -f root:dialout $sys$devpath/*-port*/disable || true\"" \
|
||||
RUN+="/bin/sh -c \"chmod -f 660 $sys$devpath/*-port*/disable || true\""
|
||||
RUN+="/bin/sh -c \"chown -f root:dialout $sys$devpath/*port*/disable || true\"" \
|
||||
RUN+="/bin/sh -c \"chmod -f 660 $sys$devpath/*port*/disable || true\""
|
||||
|
||||
and then add permitted users to `dialout` group:
|
||||
|
||||
|
||||
@@ -20,5 +20,5 @@ SUBSYSTEM=="usb", DRIVER=="usb", MODE="0664", GROUP="dialout"
|
||||
|
||||
# This is for Linux 6.0 or later (ok to keep this block present for older Linux kernels):
|
||||
SUBSYSTEM=="usb", DRIVER=="usb", \
|
||||
RUN+="/bin/sh -c \"chown -f root:dialout $sys$devpath/*-port*/disable || true\"" \
|
||||
RUN+="/bin/sh -c \"chmod -f 660 $sys$devpath/*-port*/disable || true\""
|
||||
RUN+="/bin/sh -c \"chown -f root:dialout $sys$devpath/*port*/disable || true\"" \
|
||||
RUN+="/bin/sh -c \"chmod -f 660 $sys$devpath/*port*/disable || true\""
|
||||
|
||||
Reference in New Issue
Block a user