Acontece que é possível fazer o locate.updatedb indexar outros sistemas de arquivos, incluindo a rede anexada. O problema é que a raiz do sistema de arquivos (e a árvore até o conteúdo que você deseja indexar) deve ser legível pelo usuário / grupo "nobody".
Você estava no caminho certo com /etc/locate.rc
Depois disso, descobri que /usr/libexec/locate.updatedb apenas usa find para construir o índice.
Ele percorre as entradas em /etc/locate.rc FILESYSTEMS (no 10.6, pelo menos, o padrão é apenas hfs se não for configurado).
A página man do find sugere o uso de "sysctl vfs" para descobrir o que é válido em sua máquina. No meu caso:
sysctl vfs|grep mounted
vfs.nfs has 1 mounted instance
vfs.hfs has 3 mounted instances
vfs.autofs has 3 mounted instances
vfs.afpfs has 4 mounted instances
Alguns testes rápidos para validar isso:
prowler:~%% mount |grep Volumes/keen
afp_1I6KyU4igzg00Q0vsj4E2G0H-1.2f0004fb on /Volumes/keen (afpfs, nodev, nosuid, mounted by keen)
prowler:~%% touch /Volumes/keen/test-afpfs
prowler:~%% find /Volumes/keen/ -name test-afpfs -fstype afpfs
prowler:~%% find /Volumes/keen/test-afpfs -name test-afpfs -fstype afpfs
/Volumes/keen/test-afpfs
prowler:~%% find /Volumes/keen/test-afpfs -name test-afpfs -fstype hfs
prowler:~%%
Para o 10.6, pelo menos, o afpfs está correto para um sistema de arquivos montado em AFP.
Agora, para a falha de afpfs.
Quando o OSX (10.6) monta o volume do AFP (montado via um item de login ou Finder - > Go - > conecte ao servidor - os mecanismos OSX tradicionais para AFP), monta-o como legível somente pelo usuário:
prowler:/Volumes/keen%% ls -ld /Volumes/keen
drwx------ 6 keen keen 264 Dec 13 12:45 /Volumes/keen/
e tentando corrigir manualmente isso falha:
prowler:/Volumes/keen%% sudo chmod a+rx /Volumes/keen
prowler:/Volumes/keen%% ls -ld /Volumes/keen
drwx------ 6 keen keen 264 Dec 13 12:52 /Volumes/keen/
Ainda não encontrei uma solução alternativa (não tentei o autofs, já que esse método tende a ser quebrado a cada versão do OSX ...).
Os volumes hfs (e presumivelmente hfs +, etc) que são montados não têm esse problema, nem os volumes NFS montados via Utilitário de Disco - > Montagens NFS (10.6).
prowler:~%% mount |grep nfs
murf:/backups on /Users/keen/backups (nfs, nodev, nosuid, automounted, nobrowse)
prowler:~%% ls -ld /Users/keen/backups
drwxrwxrwx 33 root wheel 2048 Dec 13 03:05 /Users/keen/backups/
Descobri isso ao tentar testar a indexação de localização apenas na montagem afp:
prowler:/Volumes/keen%% grep FILESYSTE /etc/locate.rc
FILESYSTEMS="afpfs"
prowler:/Volumes/keen%% sudo /usr/libexec/locate.updatedbshell-init: error retrieving current directory: getcwd: cannot access parent directories: Permission denied
shell-init: error retrieving current directory: getcwd: cannot access parent directories: Permission denied
shell-init: error retrieving current directory: getcwd: cannot access parent directories: Permission denied
find: .: Permission denied
A execução com $ PWD fora da montagem afp não teve esse erro:
prowler:~%% sudo /usr/libexec/locate.updatedb
prowler:~%%
mas também não teve resultados:
prowler:~%% locate test-afpfs
prowler:~%%
Então a resposta curta como eu encontrei até agora - SIM! Você pode obter localização para indexar volumes de rede no OSX. NÃO, você não pode indexar um volume de rede afp.