Problema de permisos de Unix con usuarios que pertenecen al mismo grupo que acceden a una carpeta

0

Tengo una carpeta a la que realmente me gustaría permitir el acceso de otro usuario en esta máquina. Estoy usando mt-daapdpara servir a la música a la red, así que me gustaría para que el mt-daapdusuario pueda acceder a mi directorio de música, /home/rfkrocktk/Music. El usuario maestro es rfkrocktkobviamente. Intenté establecer todos mis permisos correctamente en el directorio, pero el mt-daapdusuario no puede acceder a los archivos.

He creado un grupo llamado media-usersy ha añadido tanto rfkrocktky mt-daapdal mismo con el fin de dar mt-daapdpermiso para leer simplemente todos los archivos en ese directorio y subdirectorios.

Si ejecuto ida cada uno de mis usuarios, esto es lo que se muestra:

$ id rfkrocktk
> uid=1000(rfkrocktk) gid=1000(rfkrocktk) groups=1000(rfkrocktk),4(adm),20(dialout),24(cdrom),29(audio),46(plugdev),104(lpadmin),115(admin),120(sambashare),124(vboxusers),1001(jupiter),2002(media-users)

$ id mt-daapd
> uid=123(mt-daapd) gid=65534(nogroup) groups=65534(nogroup),2002(media-users)

Definitivamente parece que ambos usuarios son parte del media-usersgrupo, entonces, ¿qué podría estar saliendo mal?

Si ejecuto ls -len el directorio de música real para ver sus permisos, aquí está el resultado:

drwxr-Sr-- 201 rfkrocktk media-users 12288 2011-01-13 12:26 Music

Si ejecuto ls -len el directorio de Música para obtener sus hijos, aquí está la salida:

drwxr-Sr--  3 rfkrocktk media-users 4096 2010-12-20 15:31 2DBoy
drwxr-Sr--  3 rfkrocktk media-users 4096 2010-05-25 12:50 ABBA
drwxr-Sr--  3 rfkrocktk media-users 4096 2009-12-28 15:19 Access Denied
drwxr-Sr-- 10 rfkrocktk media-users 4096 2009-12-28 15:19 AC-DC
drwxr-Sr--  3 rfkrocktk media-users 4096 2009-12-28 15:19 Aerosmith
drwxr-Sr--  3 rfkrocktk media-users 4096 2010-06-04 10:45 A Flock of Seagulls
drwxr-Sr--  4 rfkrocktk media-users 4096 2010-05-28 18:13 Alestorm
drwxr-Sr--  3 rfkrocktk media-users 4096 2010-06-22 23:29 Amon Amarth
drwxr-Sr--  5 rfkrocktk media-users 4096 2009-12-28 15:19 Anberlin
...

A partir de esto, parece que debería poder acceder a las carpetas mt-daapd, pero no puedo. La ejecución sudo -i -u mt-daapd ls -l /home/rfkrocktk/Musicno muestra nada, lo que me indica que, por cualquier motivo, mt-daapdno tiene acceso para leer la carpeta. ¿Qué estoy haciendo mal?


EDITAR

Un problema que tenía era la bandera "S". Debe ser "s", de modo que los permisos de ejecución para el grupo también existan en los archivos y carpetas. Además, la invocación de sudo -i -u mt-daapd ls -l /home/rfkrocktk/Musicfue incorrecta. Debería ser sudo -u mt-daapd ls -l /home/rfkrocktk/Musicen su lugar. Evidentemente, el -iparámetro mata al stdout.

Naftuli Kay
fuente

Respuestas:

4

Falta el permiso de ejecución en el directorio. chmod g + x dir.

Otros usuarios también tienen acceso de lectura pero no ejecutan. Si usa chmod o + g dir, entonces no necesita molestar con los grupos porque todos podrán leerlo.

psusi
fuente
Eso lo solucionó! Ahora, ¿podría explicar por qué necesito permisos de ejecución? Supongo que ser capaz de leer sería lo suficientemente bueno. TAMBIÉN : Uno de los problemas que tuve fue en mi invocación para enumerar el directorio como mt-daapd. Necesitaba omitir el -iparámetro ya que esto mata toda la salida. Por lo tanto, es mejor usar algo como esto: sudo -u mt-daapd ls -l /home/rfkrocktk/Music. ¡Gracias por la ayuda!
Naftuli Kay
2
Necesita ejecutar permiso para atravesar un directorio y acceder a su contenido. El permiso de lectura le permite leer el directorio, también conocido como. enumerar sus contenidos. A veces desea permitir que las personas accedan a un archivo que saben que está allí, pero no enumerar qué archivos están allí.
psusi