Permissions of usb hub and its children
Hello!
I am trying to change the permissions of my usb hub with the follwing udev rule:
SUBSYSTEM="usb", DEVPATH="/devices/pci0000:00/0000:00:02.1/usb1/1-3", OWNER="fabi", MODE="600
Doing so I hoped that all usb devices that will be connected to that hub would receive the same permissions but obviously it doesn't work. Is there any possibility to achieve this goal using udev?
Unfortunately, I can not write appropriate udev rules for every device that is connected to that hub ...
Fabian Steiner
-------------------------------------------------------------------------
Using Tomcat but need to do more? Need to support web services, security? Get stuff done quickly with pre-integrated technology to make your job easier Download IBM WebSphere Application Server v.1.0.1 based on Apache Geronimo
http://sel.as-us.falkag.net/sel?cmd=lnk&kid0709&bid&3057&dat1642
_______________________________________________
Linux-hotplug-devel mailing list http://linux-hotplug.sourceforge.net
[email protected]
https://lists.sourceforge.net/lists/listinfo/linux-hotplug-devel
Quoted 7 lines · Fabian Steiner
Hello!
I am trying to change the permissions of my usb hub with the follwing udev rule:
SUBSYSTEM="usb", DEVPATH="/devices/pci0000:00/0000:00:02.1/usb1/1-3", OWNER="fabi", MODE="600
What are you trying to change here? The permissions of the usb hub in usbfs?
Quoted 2 lines
Doing so I hoped that all usb devices that will be connected to that hub would receive the same permissions but obviously it doesn't work.
No, hub permissions do not propagate down to the devices, sorry.
Quoted 1 line
Is there any possibility to achieve this goal using udev?
Yes, use much the same rule as above :)
thanks,
greg k-h
-------------------------------------------------------------------------
Using Tomcat but need to do more? Need to support web services, security? Get stuff done quickly with pre-integrated technology to make your job easier Download IBM WebSphere Application Server v.1.0.1 based on Apache Geronimo
http://sel.as-us.falkag.net/sel?cmd=lnk&kid0709&bid&3057&dat1642
_______________________________________________
Linux-hotplug-devel mailing list http://linux-hotplug.sourceforge.net
[email protected]
https://lists.sourceforge.net/lists/listinfo/linux-hotplug-devel
Quoted 11 lines · Greg KH
Quoted 7 lines · Fabian Steiner
Hello!
I am trying to change the permissions of my usb hub with the follwing udev rule:
SUBSYSTEM="usb", DEVPATH="/devices/pci0000:00/0000:00:02.1/usb1/1-3", OWNER="fabi", MODE="600
What are you trying to change here? The permissions of the usb hub in usbfs?
Yes, my intension was to assign proper permissions to the usb hub so that all devices that are connected to that hub get the same permissions.
Quoted 8 lines
Quoted 2 lines
Doing so I hoped that all usb devices that will be connected to that hub would receive the same permissions but obviously it doesn't work.
No, hub permissions do not propagate down to the devices, sorry.
Quoted 1 line
Is there any possibility to achieve this goal using udev?
Yes, use much the same rule as above :)
What does the rule have to look like then? ;-) The main problem is that I don't know what kind of devices are plugged in the hub. So the udev rule has to match quite a lot of devices (block devices, scanner, mouse, etc.).
Having a more closer look at different manpages and howtos I have found a solution that is almost suitable:
SUBSYSTEM="*", ENV{PHYSDEVPATH}="/devices/pci0000:00/0000:00:02.1/usb1/1-3*", OWNER:="fabi", MODE:="600"
I am not quite sure whether this rule will fulfill all of my requirements but so far it looks good. I.e. I don't know for sure whether ENV{PHYSDEVPATH} is set for all devices and whether it contains a sysfs address. Perhaps you could give me a hint :-)
Thanks,
Fabian STeiner
-------------------------------------------------------------------------
Using Tomcat but need to do more? Need to support web services, security? Get stuff done quickly with pre-integrated technology to make your job easier Download IBM WebSphere Application Server v.1.0.1 based on Apache Geronimo
http://sel.as-us.falkag.net/sel?cmd=lnk&kid0709&bid&3057&dat1642
_______________________________________________
Linux-hotplug-devel mailing list http://linux-hotplug.sourceforge.net
[email protected]
https://lists.sourceforge.net/lists/listinfo/linux-hotplug-devel
Quoted 7 lines · Fabian Steiner
Quoted 6 lines · Greg KH
Quoted 5 lines · Fabian Steiner
Hello!
I am trying to change the permissions of my usb hub with the follwing udev rule:
Quoted 8 lines
Quoted 5 lines
Quoted 2 lines
SUBSYSTEM="usb", DEVPATH="/devices/pci0000:00/0000:00:02.1/usb1/1-3", OWNER="fabi", MODE="600
What are you trying to change here? The permissions of the usb hub in usbfs?
Yes, my intension was to assign proper permissions to the usb hub so that all devices that are connected to that hub get the same permissions.
Ah, multi-user type setup?
Quoted 17 lines
Quoted 8 lines
Quoted 2 lines
Doing so I hoped that all usb devices that will be connected to that hub would receive the same permissions but obviously it doesn't work.
No, hub permissions do not propagate down to the devices, sorry.
Quoted 1 line
Is there any possibility to achieve this goal using udev?
Yes, use much the same rule as above :)
What does the rule have to look like then? ;-) The main problem is that I don't know what kind of devices are plugged in the hub. So the udev rule has to match quite a lot of devices (block devices, scanner, mouse, etc.).
Having a more closer look at different manpages and howtos I have found a solution that is almost suitable:
Quoted 8 lines
SUBSYSTEM="*", ENV{PHYSDEVPATH}="/devices/pci0000:00/0000:00:02.1/usb1/1-3*", OWNER:="fabi", MODE:="600"
I am not quite sure whether this rule will fulfill all of my requirements but so far it looks good. I.e. I don't know for sure whether ENV{PHYSDEVPATH} is set for all devices and whether it contains a sysfs address. Perhaps you could give me a hint :-)
Yes, that should work. But remember, "usb1" the next time you boot might not be the same root hub you thought it was last time. That all depends on PCI bus numbering (which can change, but rarely), and USB host controller driver loading order (which changes often due to the phase of the moon and such.)
So be careful about that.
good luck,
greg k-h
-------------------------------------------------------------------------
Using Tomcat but need to do more? Need to support web services, security? Get stuff done quickly with pre-integrated technology to make your job easier Download IBM WebSphere Application Server v.1.0.1 based on Apache Geronimo
http://sel.as-us.falkag.net/sel?cmd=lnk&kid0709&bid&3057&dat1642
_______________________________________________
Linux-hotplug-devel mailing list http://linux-hotplug.sourceforge.net
[email protected]
https://lists.sourceforge.net/lists/listinfo/linux-hotplug-devel
Quoted 45 lines · Greg KH
Quoted 7 lines · Fabian Steiner
Quoted 6 lines · Greg KH
Quoted 5 lines · Fabian Steiner
Hello!
I am trying to change the permissions of my usb hub with the follwing udev rule:
Quoted 8 lines
Quoted 5 lines
Quoted 2 lines
SUBSYSTEM="usb", DEVPATH="/devices/pci0000:00/0000:00:02.1/usb1/1-3", OWNER="fabi", MODE="600
What are you trying to change here? The permissions of the usb hub in usbfs?
Yes, my intension was to assign proper permissions to the usb hub so that all devices that are connected to that hub get the same permissions.
Ah, multi-user type setup?
Quoted 17 lines
Quoted 8 lines
Quoted 2 lines
Doing so I hoped that all usb devices that will be connected to that hub would receive the same permissions but obviously it doesn't work.
No, hub permissions do not propagate down to the devices, sorry.
Quoted 1 line
Is there any possibility to achieve this goal using udev?
Yes, use much the same rule as above :)
What does the rule have to look like then? ;-) The main problem is that I don't know what kind of devices are plugged in the hub. So the udev rule has to match quite a lot of devices (block devices, scanner, mouse, etc.).
Having a more closer look at different manpages and howtos I have found a solution that is almost suitable:
Quoted 8 lines
SUBSYSTEM="*", ENV{PHYSDEVPATH}="/devices/pci0000:00/0000:00:02.1/usb1/1-3*", OWNER:="fabi", MODE:="600"
I am not quite sure whether this rule will fulfill all of my requirements but so far it looks good. I.e. I don't know for sure whether ENV{PHYSDEVPATH} is set for all devices and whether it contains a sysfs address. Perhaps you could give me a hint :-)
Quoted 5 lines
Yes, that should work. But remember, "usb1" the next time you boot might not be the same root hub you thought it was last time. That all depends on PCI bus numbering (which can change, but rarely), and USB host controller driver loading order (which changes often due to the phase of the moon and such.)
PHYSDEV* values are deprecated and will go away some day. You better match on the BUS="usb" and ID="1-3*" if you really want that. In short you can't really solve that problem proper, in a setup which changes dynamically and you can connect and disconnect everything while the system is running. Only unique device properties like usb serial numbers could solve that, but such devices are rare.
Or you do this for every class of device at the individual device level. But for a device-level permissions-setup, udev is the completely wrong infrastructure and you would need to plug into HAL, which can classify devices properly. The kernel or udev will never have this kind of information, needed to do this at the device level.
Kay
-------------------------------------------------------------------------
Using Tomcat but need to do more? Need to support web services, security? Get stuff done quickly with pre-integrated technology to make your job easier Download IBM WebSphere Application Server v.1.0.1 based on Apache Geronimo
http://sel.as-us.falkag.net/sel?cmd=lnk&kid0709&bid&3057&dat1642
_______________________________________________
Linux-hotplug-devel mailing list http://linux-hotplug.sourceforge.net
[email protected]
https://lists.sourceforge.net/lists/listinfo/linux-hotplug-devel
Quoted 8 lines · Greg KH
Quoted 7 lines · Fabian Steiner
Quoted 6 lines · Greg KH
Quoted 5 lines · Fabian Steiner
Hello!
I am trying to change the permissions of my usb hub with the follwing udev rule:
Quoted 8 lines
Quoted 6 lines
Quoted 4 lines
Quoted 2 lines
SUBSYSTEM="usb", DEVPATH="/devices/pci0000:00/0000:00:02.1/usb1/1-3", OWNER="fabi", MODE="600
What are you trying to change here? The permissions of the usb hub in usbfs?
Yes, my intension was to assign proper permissions to the usb hub so that all devices that are connected to that hub get the same permissions.
Ah, multi-user type setup?
Exactly :-) As there is no solution for this so far, we tried to do it on our own, but as you can see we are not that successful since there are quite a lot of different aspects to think of.
Our current solution is based on a simple python script which is executed whenever a user logins (by using the PostLogin mechanism of GDM). It then reads the environment variables $DISPLAY and $USER which are set by GDM properly and tries to find out whether a usb hub was assigned to that particular display. This is done manually by using a config file.
If someone is interested, I will publish the script.
Quoted 5 lines
Quoted 4 lines
I am not quite sure whether this rule will fulfill all of my requirements but so far it looks good. I.e. I don't know for sure whether ENV{PHYSDEVPATH} is set for all devices and whether it contains a sysfs address. Perhaps you could give me a hint :-)
Quoted 7 lines
Yes, that should work. But remember, "usb1" the next time you boot might not be the same root hub you thought it was last time. That all depends on PCI bus numbering (which can change, but rarely), and USB host controller driver loading order (which changes often due to the phase of the moon and such.)
So be careful about that.
Oh, I wasn't aware of that so far. I will probably have to rethink the whole thing, I suppose ... Of course, the system should work under all circumstances and not when the moon wants it to ;-)
Quoted 4 lines
good luck,
greg k-h
Thank you,
Fabian STeiner
-------------------------------------------------------------------------
Using Tomcat but need to do more? Need to support web services, security? Get stuff done quickly with pre-integrated technology to make your job easier Download IBM WebSphere Application Server v.1.0.1 based on Apache Geronimo
http://sel.as-us.falkag.net/sel?cmd=lnk&kid0709&bid&3057&dat1642
_______________________________________________
Linux-hotplug-devel mailing list http://linux-hotplug.sourceforge.net
[email protected]
https://lists.sourceforge.net/lists/listinfo/linux-hotplug-devel