Diferença entre localizar e mlocate

7

Eu queria instalar o comando locate , que está disponível em sudo apt-get install mlocate .

No entanto, eu executei pela primeira vez sudo apt-get install locate que parece ter instalado outra coisa.

Digitar o comando locate <package> , no entanto, parece chamar mlocate .

Qual é o pacote locate e pode (deve) ser removido com segurança?

    
por Winterflags 30.03.2016 / 19:03

2 respostas

16

O pacote localizar é a implementação de localize em GNU findutils . O pacote mlocate é outra implementação do mesmo conceito chamado mlocate . Eles implementam a mesma funcionalidade básica: pesquisa rápida de nomes de arquivos com base em um índice que é (normalmente) reconstruído todas as noites. Eles diferem em algumas das suas funcionalidades além do uso básico. Em particular, o GNU locate constrói apenas um índice de arquivos legíveis pelo mundo (a menos que você o execute a partir de sua conta), enquanto o mlocate constrói um índice de todos os arquivos, mas apenas permite que o usuário chamando os arquivos que ele pode acessar. Isso torna o mlocate mais útil na maioria das circunstâncias, mas inutilizável em algumas instalações incomuns onde não é executado pelo administrador do sistema (porque mlocate tem que ser setuid root ) e um risco de segurança.

No Debian e nos derivativos, se você instalar ambos, locate executará a implementação mlocate , e você precisará executar locate.findutils para executar a implementação GNU. Isso é gerenciado por meio das alternativas . Se você instalou os dois, os dois passarão tempo reconstruindo o respectivo índice, mas, além disso, não entrarão em conflito entre si.

    
por 31.03.2016 / 02:46
4

mlocate é uma nova implementação de localização. Depois de instalar o mlocate

will change the /usr/bin/locate binary to point to mlocate via the alternatives mechanism.

É por isso que você obtém o comportamento de mlocate se você instalar nessa ordem.

Detalhes podem ser encontrados aqui

    
por 30.03.2016 / 19:41

Tags