Os arquivos de seu disco rígido externo não são indexados porque updatedb está configurado para não indexar nada em /media , que é onde o armazenamento externo é normalmente montado. Essa configuração está configurada no arquivo /etc/updatedb.conf . Especificamente, a entrada /media na linha PRUNEPATHS .
Algumas ideias sobre como você pode tornar updatedb para indexar sua unidade externa:
1. Monte a unidade externa unter /mnt .
Se o seu disco rígido externo deve ser montado permanentemente , sugiro configurá-lo para que ele seja montado em /mnt em vez de /media . Isso geralmente pode ser feito editando /etc/fstab . Procure por "fstab" para aprender sobre isso. Você precisará dos direitos de sudo para editar /etc/fstab .
2. Crie um banco de dados dedicado para seu disco rígido externo e consulte-o sob demanda.
O comando a seguir criará um banco de dados dedicado:
updatedb -l 0 -o ~/.externalharddisk.db -U /media/externalharddisk
Isso criará o banco de dados no arquivo oculto .externalharddisk.db em sua casa. Você não precisa de sudo para esse comando. Execute o mesmo comando novamente para manter o banco de dados atualizado. Cuidado: se você executar esse comando enquanto o disco rígido externo não estiver montado, updatedb pensará que os arquivos foram excluídos e esvaziarão o banco de dados.
Você pode configurar um script para automatizar essa tarefa. Procure por "cronjob" para aprender como fazer isso. Nota: você pode configurar um cronjob do usuário como usuário. Você não precisa de direitos sudo para configurar um cronjob de usuário.
O seguinte comando consultará o banco de dados:
locate -d ~/.externalharddisk.db searchterm
Você também pode consultar o banco de dados dedicado e o banco de dados padrão ao mesmo tempo:
locate -d ~/.externalharddisk.db: searchterm
Os dois pontos no final seguidos por nada significa também pesquisar no banco de dados padrão.
Você pode criar um alias para facilitar o uso. Coloque a seguinte linha no seu .bashrc :
alias locate-external='locate -d ~/.externalharddisk.db:'
Agora você pode usar locate para pesquisar apenas o banco de dados padrão e locate-external para pesquisar também em seu disco rígido externo.
3. Remova /media de PRUNEPATHS
Observação: não recomendo isso ! Isso é por causa da maneira como updatedb funciona. Se updatedb for executado enquanto o disco rígido externo for removido, todas as entradas que apontarem para o disco rígido externo serão removidas do banco de dados. Se updatedb for executado enquanto o disco rígido externo estiver conectado, as entradas que apontam para o disco rígido externo serão adicionadas novamente. Como updatedb está sendo executado regularmente em segundo plano, você nunca pode ter certeza se os arquivos do disco rígido externo estão atualmente indexados ou não.
Além disso: se você remover /media de PRUNEPATHS , esse comportamento também será aplicado a qualquer outro armazenamento externo que você tenha montado enquanto updatedb estiver atualizando o banco de dados.