Cómo hacer que los archivos de índice de Spotlight se compartan en AFP

1

Estoy compartiendo una carpeta local en un servidor Mac Mini 10.8.5 a través de AFP. El recurso compartido está configurado para permitir que un determinado grupo de usuarios escriba en él. Cuando los usuarios de este grupo colocan archivos en el directorio, son propiedad de ese usuario. El problema es que el proyector no indexará estos archivos. Si I chown uno de los archivos para el usuario administrador local, se indexa inmediatamente por medio de un foco.

# Observe the initial file ownerships:
$ ls -el /Shared/mds-test-doc.pdf
-rw-r--r--+ 1 otheruser  wheel  36279 May  7 15:23 /Shared/mds-test-doc.pdf
 0: group:somegroup inherited allow read,write,execute,append,readattr,writeattr,readextattr,writeextattr,readsecurity
# Observe that mdfind doesn't see it (or any other files containing a period
# character within that directory)
$ mdfind -count -onlyin /Shared '.'
0
# Change the file's owner to adminuser:
$ sudo chown adminuser /Shared/mds-test-doc.pdf
# Sanity check the new ownerships:
$ ls -el /Shared/mds-test-doc.pdf
-rw-r--r--+ 1 adminuser  wheel  36279 May  7 15:23 /Shared/mds-test-doc.pdf
 0: group:somegroup inherited allow read,write,execute,append,readattr,writeattr,readextattr,writeextattr,readsecurity
# Now mdfind sees it:
$ mdfind -count -onlyin /Shared '.'
1
# Remove the -count to confirm it's the expected file:
$ mdfind -onlyin /Shared '.'
/Shared/mds-test-doc.pdf

Así que, como puede ver, el hecho de volver a ser propietario de los archivos permite que se indexen (al instante puedo agregar). Obviamente, una solución sería simplemente poseer recursivamente todos los contenidos de la carpeta. Muchas soluciones web que he encontrado sugieren hacer esto o hacer que las herramientas de reparación de permisos de disco lo hagan por usted . Tal solución no es ideal porque:

  1. los archivos se supone que son propiedad de otheruser
  2. un recursivo chown solo corrige los archivos en ese momento , por lo que debería ejecutarse periódicamente (launchd / cron job) para mantener los archivos actualizados e indexados

¿Hay una mejor manera de arreglar esto? Tal vez me esté perdiendo un servidor o la configuración de foco en algún lugar?

    
pregunta joxl 07.05.2014 - 21:59

1 respuesta

2

Encontré (lo que parece ser) una buena solución después de perder el tiempo y observar que otro recurso AFP que está funcionando correctamente. Resulta que la carpeta de trabajo tiene ACL para permitir la indexación de Spotlight:

$ ls -led /Shared\ Items/Public/
drwxrwxr-x+ 19 root  admin  646 May  6 12:47 /Shared Items/Public/
 0: user:_spotlight inherited allow list,search,file_inherit,directory_inherit

Los nuevos directorios creados dentro de un directorio con esta ACL también lo heredarán. Los archivos creados dentro del directorio heredan una ACL similar: user:_spotlight inherited allow read,execute . Resulta que, al aplicar el allow list,search,file_inherit,directory_inherit ACL a un archivo normal, el archivo obtiene el ACL simplificado ( allow read,execute ). Así que mi solución fue agregar el inherit ACL recursivamente al directorio compartido:

$ chmod -R +a 'user:_spotlight allow list,search,file_inherit,directory_inherit' /Shared

Esta solución funcionó perfectamente. Ahora, todo el contenido de mi contenido compartido aparece en las búsquedas destacadas, independientemente de quién sea el propietario.

    
respondido por el joxl 10.05.2014 - 01:54

Lea otras preguntas en las etiquetas