¿Establecer permisos heredados en iLifeAssetManagement?

1

Tengo una segunda cuenta de usuario en mi máquina que solo se usa para la sincronización de iCloud para el ID de Apple de mi esposa. Con el fin de consolidar las fotos de photostream, voy a configurar un proceso para sacar nuevas fotos de su carpeta de photostream e importarlas a mi biblioteca iPhoto.

Pero primero, tengo que modificar los permisos para poder ver sus fotos desde mi cuenta de usuario. Me las arreglé para establecer los permisos para que el usuario "todos" vea las fotos desde mi cuenta de usuario, y eso funciona para las fotos existentes. Pero cuando llegan nuevas fotos, se establecen donde solo su cuenta puede verlas.

Esto es lo que estoy usando. Esperemos que alguien pueda decirme lo que me falta. :-)

sudo chmod -R +a "everyone allow read,write,execute,append,readattr,readextattr,readsecurity,writesecurity,file_inherit,directory_inherit" '/Users/Wife/Library/Application Support/iLifeAssetManagement/assets/sub'

Gracias.

    
pregunta WalterGr 30.10.2012 - 19:56

2 respuestas

1

Intentaría evitar los ACL: son complicados y a menudo se comportan de manera inesperada.

Si fuera usted, intentaría mantener el permiso estándar de UNIX , siguiendo estas pautas:

  1. Crear un grupo de usuarios (por ejemplo, MeAndWife )
  2. Asegúrese de que los usuarios Me y Wife sean los únicos y los miembros de MeAndWife
  3. Cambie la propiedad del grupo de sub directorio a MeAndWife por algo como chgrp -hR MeAndWife '/Users/Wife/Library/Application Support/iLifeAssetManagement/assets/sub'
  4. Conceda a los miembros del grupo propietario los mismos permisos que se otorgan al usuario propietario: esto se puede obtener de varias formas, pero una que me gusta es ejecutar find '/Users/Wife/Library/Application Support/iLifeAssetManagement/assets/sub' -group MeAndWife -and -perm -u=r -and -not -perm -g=r -exec chmod -h g+r {} \; [esto básicamente indica: buscar archivos / carpetas con el grupo propietario MeAndWife , para el cual el usuario propietario tiene permiso de lectura, pero los miembros del grupo propietario no lo tienen; y otorgar permisos de lectura a los miembros del grupo propietario. Por supuesto, debe repetir este paso para los permisos de escritura y ejecución (simplemente reemplace -u=r y -g=r con, respectivamente, -u=w y -g=w para escritura, -u=x y -g=x para ejecutar).
  5. Finalmente, creo que si desea poder navegar al directorio sub desde su cuenta, debe hacer que todos puedan acceder a su directorio sub . . Eso significa que, ejecute chmod o+x '/Users/Wife/Library' , chmod o+x '/Users/Wife/Library/Application Support' , chmod '/Users/Wife/Library/Application Support/iLifeAssetManagement' y chmod o+x '/Users/Wife/Library/Application Support/iLifeAssetManagement/assets'

Eso debería hacer el trabajo: los nuevos archivos en sub deberían heredar la propiedad del grupo ( MeAndWife ) y los permisos (igual que el usuario propietario). Si descubre que ese no es el caso, podría usar launchd junto con un script muy simple para arreglar los permisos de los archivos periódicamente (por ejemplo, cada hora).

    
respondido por el vastunghia 17.11.2012 - 10:01
-1

No estoy seguro de si en OSX se supone que debes indicar explícitamente list , search para los directorios. En sentido estricto, read/write/execute/append no se aplica a directorios, solo a archivos.

  

bmike : Esto parece incorrecto y no es una respuesta. Por supuesto, los permisos afectan a los directorios y los directorios son solo un tipo de archivos. ¿Puedes mejorar esto o simplemente debería eliminarse?

@ bmike : por supuesto, los permisos estándar de UNIX se aplican tanto a los archivos como a los directorios de manera independiente. Pero los ACL no lo hacen. Simplemente eche un vistazo a man chmod : luego se dará cuenta de que hay

  • acciones para archivos y directorios ( delete , [read]/[write]&[ext]attr , <read>/<write>&security , chown )
  • acciones para solo directorios ( list , search , add_&[file]/[subdirectory] , delete_child )
  • acciones para solo archivos ( [read]/[write]/[append] , execute ), así como
  • indicador de herencia para solo directorios ( [file]/[directory]&[limit]/[only]&_inherit )

Esto demuestra que la respuesta no es incorrecta.

¿Es esta una respuesta, por cierto? Sí, lo es, ya que sugiere que el usuario no le está dando al directorio la ACE adecuada.

Después de todo, creo que la pregunta del usuario y el comentario de bmike apuntan al hecho de que < em> Los ACL son difíciles y algo mal entendidos . Personalmente, los eliminé por completo y volví a usar los permisos de UNIX estándar siempre que sea posible.

Esto me lleva a sugerirle al usuario un enfoque alternativo, que es lo que haré en una respuesta por separado.

    
respondido por el vastunghia 16.11.2012 - 13:21

Lea otras preguntas en las etiquetas