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.