locate
usa um banco de dados chamado locatedb
. Normalmente é atualizado por tarefas agendadas do sistema. Se o banco de dados não tiver sido atualizado, ele mostrará arquivos / diretórios inexistentes ou novos. você pode forçar uma atualização com o comando updatedb
. Veja este link entre outros.
Manpage de locate
diz claramente -
locate reads one or more databases prepared by updatedb and writes
file names matching at least one of the PATTERNs to standard output,
one per line.
By default, locate does not check whether files found in database still
exist; locate can never report files created after the most recent
update of the relevant database.