Entendendo a indexação do Mac OS X usando “mdutil -E -i off /”

2

Duas perguntas sobre mdutil e indexação:

  • Qual é a opção -E ? Parece-me que significa algo como "reindex" no entanto, o seguinte comando bash não faz sentido para mim mdutil -E -i off / .
  • Você pode executar mdutil em alguma pasta arbitrária em seu sistema e ele indexará recursivamente todas as subpastas e nada mais em seu sistema?

Eu tenho a ideia geral sobre mdutil , mas estou um pouco confuso com o man mdutil explicação de -E .

    
por user2522073 04.09.2015 / 01:32

1 resposta

3

Como página man do mdutil estados; ênfase ousada é minha:

The mdutil command is useful for managing the metadata stores for mounted volumes.

Então, quando você pergunta:

Can you run mdutil on some arbitrary folder in your system and it will index recursively all subfolders, and nothing else on your system?

Não, uma vez que mdutil não é uma ferramenta de armazenamento de metadados baseada em pasta, mas uma ferramenta de armazenamento de metadados baseada em volume .

Então você diz:

What is the -E option? It seems to me that it means something like "reindex" however the following bash command does not make sense to me mdutil -E -i off /.

A opção -E na página man é descrita como:

This flag will cause each local store for the volumes indicated to be erased. The stores will be rebuilt if appropriate.

Portanto, a opção -E simplesmente apaga um repositório de metadados em um volume especificado. E no caso deste exemplo:

mdutil -E -i off /

Esse comando apagará (por meio da opção -E ) o repositório de metadados no volume montado na raiz ( / ) e, em seguida, definirá o status de indexação (via a opção -i off ) no volume montado na raiz ( / ) também.

Sua confusão pode vir do fato de que / não parece como um nome de volume explícito, mas sim um caminho. Mas esse / indica o volume raiz do sistema operacional inicializado no qual você está executando o comando.

Por exemplo, vamos ver a saída de ls -la /Volumes/ em um sistema Mac OS X de exemplo. Pode parecer algo assim:

drwxrwxrwt@  7 root  admin   238 Sep  3 19:48 .
drwxr-xr-x  29 root  wheel  1054 Sep  3 01:40 ..
-rw-r--r--@  1 jack  admin  6148 May 18 18:57 .DS_Store
lrwxr-xr-x   1 root  admin     1 Sep  3 10:17 Hard Drive -> /

Observe como Hard Drive não é realmente um volume montado "real", mas sim um link simbólico para o volume / montado no sistema de arquivos. O verdadeiro nome do volume montado é / .

Portanto, sabendo que / e Hard Drive apontam para o mesmo volume montado, esse comando usa o nome completo /Volumes/ :

mdutil -E -i off /Volumes/Hard\ Drive/

É efetivamente o mesmo comando que este no mesmo sistema Mac OS X:

mdutil -E -i off /
    
por 04.09.2015 / 01:59