Come rendere condivisi i file indice di Spotlight su AFP

1

Sto condividendo una cartella locale su un Mac Mini server 10.8.5 tramite AFP. La condivisione è impostata per consentire a un determinato gruppo di utenti di scriverle. Quando gli utenti in questo gruppo inseriscono file nella directory, sono di proprietà dell'utente. Il problema è che riflettori non indicizzeranno questi file. Se I chown uno dei file per l'utente amministratore locale, viene immediatamente indicizzato da spotlight.

# 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

Quindi, come puoi vedere, solo riproprio dei file consente loro di essere indicizzati (all'istante potrei aggiungere). Ovviamente una correzione sarebbe semplicemente ricorsivamente proprietaria di tutti i contenuti della cartella. Molte soluzioni web che ho trovato suggeriscono di fare questo o facendo in modo che gli strumenti di autorizzazione dei dischi di riparazione lo facciano per te . Tale soluzione non è l'ideale perché:

  1. i file supposti appartengono a otheruser
  2. un% ricorsivochown corregge solo i file quel momento , quindi dovrebbe essere eseguito periodicamente (launchd / cron job) per mantenere i file aggiornati e indicizzati

C'è un modo migliore per risolvere questo? Forse mi manca un server o un'impostazione spotlight da qualche parte?

    
posta joxl 07.05.2014 - 21:59
fonte

1 risposta

2

Ho trovato (quella che sembra essere) una buona soluzione dopo aver fatto casino e aver osservato un'altra condivisione AFP che è funziona correttamente. Risulta che la cartella di lavoro ha ACL per consentire l'indicizzazione di 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

Anche le nuove directory create all'interno di una directory con questo ACL lo erediteranno. I file creati all'interno della directory ereditano un ACL simile: user:_spotlight inherited allow read,execute . Come risulta, applicando il allow list,search,file_inherit,directory_inherit ACL a un file normale si ottiene il file ottenendo l'ACL semplificato ( allow read,execute ). Quindi la mia soluzione era di aggiungere ricorsivamente il inherit ACL alla directory condivisa:

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

Questa soluzione ha funzionato perfettamente. Ora tutto il mio contenuto di condivisione viene visualizzato nelle ricerche di Spotlight indipendentemente da chi li possiede.

    
risposta data 10.05.2014 - 01:54
fonte

Leggi altre domande sui tag