En mi /dev
carpeta, me gustaría que los siguientes archivos sean legibles y escribibles por el usuario:
/dev/ttyUSB0
/dev/gpib0
¿Cómo hago esto sin usar chgrp
? Puedo editar /etc/udev/rules.d
pero no sé la sintaxis.
permissions
devices
udev
Equipo
fuente
fuente
Respuestas:
Cómo se estructuran las reglas de udev
Para los dispositivos que caen en el subsistema tty, puede configurar su grupo de la siguiente manera:
Tenga en cuenta que, al igual que en la programación común,
==
es una prueba de igualdad, mientras que=
es una tarea. Por lo tanto, la declaración anterior se traduce como "siSUBSYSTEM=="tty"
luego se asignaGROUP="dialout"
. Una declaración puede tener múltiples pruebas, que se agrupan, y múltiples asignaciones.Si desea cambiar los permisos de lectura-escritura-ejecución, asigne MODE en lugar de GROUP donde MODE sigue la notación octal Unix habitual, por ejemplo,
MODE="0660"
otorga al propietario y al grupo permisos de lectura-escritura.man udev
Tiene todos los detalles.Puede encontrar muchos ejemplos de tales reglas en
/lib/udev/rules.d/91-permissions.rules
Cómo agregar una regla udev a su sistema
Una vez que se haya decidido cuál quiere que sea su regla, es bastante simple agregarla. En un sistema derivado de Debian, vaya al directorio
/etc/udev/rules.d
y cree un archivo. Los archivos se ejecutan en orden de clasificación. Por lo tanto, para hacer que su archivo de reglas sea el último en leer, anulando las anteriores, intente con un nombre como99-instruments.rules
. Luego ponga sus reglas en ese archivo, una por línea. (Si es necesario, las líneas se pueden extender colocando una barra diagonal inversa al final de la línea, al igual que en el shell).Entonces, si desea cambiar el grupo y los permisos en los dispositivos tty, su archivo
/etc/udev/rules.d/99-instruments.rules
podría consistir en una sola línea:Para asegurarse de que su nuevo archivo tenga los permisos habituales:
Después de haber creado su archivo, udevd puede leerlo automáticamente. Si no, puede forzarlo a volver a leer sus archivos con:
Más información sobre cómo udev clasifica los dispositivos
Si desea obtener un control más preciso sobre qué dispositivos responden a qué reglas, puede obtener más información sobre cómo udev ve sus dispositivos examinando / sys /. En este momento, no tengo acceso a una máquina con ttyUSB o HPIB, así que hagamos un ejemplo de disco sda. Correr:
Esto proporciona mucha información similar a la siguiente:
Todas estas líneas tienen la forma adecuada para usar como
if
cláusulas en las reglas. Entonces, por ejemplo, para cambiar la propiedad en todos los dispositivos de bloque que están marcados como no extraíbles, usaríamos la regla:Con información de
udevadm
, uno puede desarrollar reglas que pueden apuntar específicamente a los dispositivos de interés.fuente
Creo que sugeriría que la regla sea un poco más restrictiva que la de John. Por ejemplo, cree un archivo como
/etc/udev/rules.d/99-tty-dialout.rules
:Puede usar
udevadm
para determinar dispositivosSUBSYSTEM==
yKERNEL==
valores. Por ejemplo:fuente