Eu tenho alguns diretórios montados a partir de um servidor de compartilhamento samba (meu armazenamento LAN) e gostaria de executar o updateb neles. Eu uso para executar com sucesso esse comando para fazer isso:
updatedb -l 0 -o ~/.myDbFile.db -U /mnt/myCustomDirectory/
abaixo /mnt/myCustomDirectory/
estão compartilhamentos de samba montados individualmente, como:
/mnt/myCustomDirectory/Music
/mnt/myCustomDirectory/Video
/mnt/myCustomDirectory/Backup
e assim por diante.
Após uma nova instalação do Linux Mint 19.2 mais recente (igual ao Ubuntu 18.04), o arquivo .myDbFile.db
fica vazio e nada é indexado.
Se, em vez disso, eu executar o comando em um único compartilhamento, o dbFile será indexado:
updatedb -l 0 -o ~/.myDbFile_Music.db -U /mnt/myCustomDirectory/Music
Alguma ideia de por que o primeiro comando não funciona recursivamente em pastas únicas?
Responder1
Aqui está a solução que descobri no final.
Para atualizadob, faço um loop nos diretórios únicos montados e crio um arquivo db específico:
alias updatedb_lanserver='cd /mnt/myCustomDirectory; for folder in *; do updatedb -l 0 -o ~/.lan_server_$folder.db -U $folder; done'
Para pesquisar todos esses arquivos db de uma vez, criei uma função bash:
locate_lanserver() { for dbfile in ~/.lan_server*.db; do locate -d $dbfile -i $1; done }
agora posso simplesmente usar a função para pesquisar algo:
locate_lanserver text_to_be_searched