¿Cómo cambio los permisos predeterminados para medios USB montados automáticamente?

9

tl; dr:

¿Cómo hago para que los dispositivos USB de montaje automático gnome tengan permisos para que todos en el grupo puedan acceder a ellos en lugar de solo un usuario que haya iniciado sesión en el momento en que se conecta el almacenamiento USB?

(Aquí se llama al grupo confusy los usuarios narury confusambos están en ese grupo. Solo narurse inició sesión, en el momento de la conexión USB, por lo que solo se narurpuede acceder al dispositivo USB, incluso después de una sudo chmod g+rw. ¿Cómo cambio eso?)


Detalles:

Ejecuto un servidor de medios en mi casa. Está conectado a un proyector como solo monitor. De vez en cuando me gusta conectar una unidad USB para copiar cosas del servidor a dicha unidad. El disco se monta automáticamente con las habituales travesuras de gnomos . Obviamente no quiero encender el proyector (me toma un tiempo y no es bueno con la lámpara). Así que inicio sesión en el servidor a través de ssh y hago la copia a través del terminal desde otra PC.

El problema es que la unidad USB se monta bajo un usuario diferente al usuario con el que inicio sesión mediante ssh. Mi usuario ssh no tiene los derechos para abrir el punto de montaje elegido por gnome aunque esté en el mismo grupo. Para aclaraciones, vea esta sesión de terminal:

confus@conserve:/media$ id
uid=1000(confus) gid=1000(confus) groups=4(adm),8(mail),20(dialout),24(cdrom),46(plugdev),113(lpadmin),114(sambashare),122(admin),126(debian-transmission),135(debian-tor),1000(confus)

confus@conserve:/media$ ll
total 28
lrwxrwxrwx  1 root   root      6 Mar  8  2009 cdrom -> cdrom0
drwx------  1 narur  confus 4096 Oct  8 16:53 contemplate     # <-- USB drive
drwxr-xr-x  2 root   root   4096 May  3  2010 iso
drwxr-xr-x  2 confus confus 4096 Dec  8  2009 usb1

confus@conserve:/media$ sudo chmod -R ug+rwX 4009-D44F/       # <-- Doesn't do anything
[sudo] password for confus: 

confus@conserve:/media$ ll
total 28
lrwxrwxrwx  1 root   root      6 Mar  8  2009 cdrom -> cdrom0
drwx------  1 narur  confus 4096 Oct  8 16:53 contemplate    # <-- No change after chmod
drwxr-xr-x  2 root   root   4096 May  3  2010 iso
drwxr-xr-x  2 confus confus 4096 Dec  8  2009 usb1

Mi usuario ssh está " confus" mientras el disco está montado para el usuario " narur". Obviamente, un simple chmodno funciona ya que es un punto de montaje. El problema existe para cada dispositivo de almacenamiento USB.

Sé que podría escribir una regla de udev y sé que existen soluciones basadas en dispositivos. Pero debería haber una solución más fácil para este problema, que es nativa de gvfs.

Actualizar:

Nada ha cambiado desde 2009. Esto es vergonzoso. Debería haber una solución fácil para este problema al menos.

confundir
fuente
No es la respuesta completa, pero estás buscando autofs. Hay un manual / descripción decente aquí: wiki.debian.org/AutoFs . La opción de montaje GID es lo que estás buscando.
RobotHumans
Si no me equivoco, esa también es una solución por dispositivo, ¿no? Uno tiene que configurar cada dispositivo individual. Quiero que mi solución se aplique a todas las unidades montadas automáticamente, ya que varios propietarios pueden querer copiar archivos en sus respectivas unidades.
con-f-use
Por lo general, sería por dispositivo. Puede usar reglas difusas de udev para ejecutar scripts de montaje si desea que sea genérico.
RobotHumans
Entonces, no hay necesidad de autofs entonces ... ;-) Todavía prefiero una solución inherente a gvfs o gnome. Parece que hay muchos informes de errores silenciosos sobre esto, pero nada cambia desde 2009
con-f-use
1
Esto es una limitación con udisks v1, para cualquier persona que venga aquí, se agregaron los nuevos udisks2 (Ubuntu 13.04 o posterior) ID_FS_USAGEy UDISKS_FILESYSTEM_SHAREDeso debería resolver el problema del montaje de volúmenes compartidos. Referencia: askubuntu.com/a/276670/26246
user.dz

Respuestas:

3

Supongo que tu unidad USB está formateada VFAT/FAT32. Este formato de archivo no admite permisos de ejecución, por lo que chmod +xfalla.

[Editar] Ok, jugué un poco y busqué en la red. Muchas 'soluciones' sugieren que debería cambiar /etc/fstab. Esto me parece torpe, ¿qué haces? cambia fstabcada vez que te encuentras con una nueva unidad flash USB?

Mi solución:

$ sudo vi /etc/udev/rules.d/90-usb-disks.rules

Agrega las líneas:

# UDEV Rules to change the permission of USB disks

#

KERNEL=="sd*[0-9]", ATTR{removable}=="1", ENV{ID_BUS}=="usb", MODE="0022"

$ sudo /etc/init.d/udev restart

Luego intente insertar una unidad usb. Probablemente haya un atributo que pueda verificar para asegurarse de que sea una unidad con formato FAT si desea ser más específico.

Sarthak Goel
fuente