Por que o /var/lib/mlocate.db tem quase 800 MB?

17

Posso fazer algo sobre isso? Estou ficando sem espaço em disco.

evencoil
fonte
Pode parecer uma pergunta estranha, mas: Como você encontra o tamanho do arquivo?
ulidtko
O banco de dados pode ser armazenado como um arquivo esparso e, portanto, o uso real do disco pode diferir significativamente daquele relatado por lse du.
ulidtko

Respostas:

28

Em um dos meus sistemas que atua como um servidor de backup, o mlocate.db atingiu 9 GB. A solução foi excluir os diretórios de backup da localização, pois eu não precisava pesquisá-los.

Eu fiz isso adicionando o diretório de backup PRUNEPATHSem /etc/updatedb.conf.

A execução sudo updatedbreduziu para 1,6 MB (e economiza uma quantidade enorme de tempo indexando todos esses arquivos).

user76225
fonte
Perfeito, obrigado. Apenas passou de 800MB para 100MB, mas o mais importante, o comando updatedb pode terminar muito rapidamente agora, enquanto que antes estava tomando dias. (Note, no entanto, que ele só funciona quando o computador não está na bateria, e ele usa baixa prioridade IO, de acordo com o script em /etc/cron.daily/mlocate.)
mlissner
Uau, 9 GB até 1,6 MB!
WinEunuuchs2Unix
9

Se você tiver muitos arquivos em sua máquina, considere remover alguns caminhos do banco de dados. Você pode fazer isso no /etc/updatedb.conf em PRUNEPATHS. Você também pode remover sistemas de arquivos (como nfs, se desejar).

Zach Bethel
fonte
2

800MB soa muito bem. Meu /var/lib/mlocate/mlocate.db tem apenas 8 MB (nova instalação na data de lançamento 10.04). Você pode excluí-lo com segurança, se executar sudo updatedb, ele será recriado.

Lekensteyn
fonte
obrigado, isso funcionou. Depois de executar o sudo updatedb, agora é 620MB. edit: oops eu li isso errado. 620MB significaria não funcionou (eu pensei que eu li KB na minha saída do arquivo).
evencoil
Quantos arquivos você tem? Qual é o seu tamanho do disco?
precisa saber é o seguinte
11
Será que é realmente grande? Tamanho em MB: 'du -m /var/lib/mlocate/mlocate.db'
Além disso tanto due lster uma -hbandeira `: -H, --human-readable`print sizes in human readable format (e.g., 1K 234M 2G)
Belacqua
É realmente tão grande ... Eu tenho muitos arquivos muito pequenos (relacionados a alguns dados) em vários discos rígidos, então talvez seja por isso. edit: Eu também manter muitos backups ... Existe uma maneira de excluir diretórios do indexador? Provavelmente, a indexação desses backups é o grande problema.
evencoil
-1

É um banco de dados de todos os arquivos em seu diretório raiz. É usado pelo utilitário de localização. se você excluir este arquivo, a localização não funcionará mais.

binW
fonte
é realmente suposto ser tão grande?
evencoil
Não deve ser tão grande. Muito provavelmente você tem muitos arquivos em seu diretório home. Você pode apagá-lo e, em seguida, deixar o update correr novamente.
user4124
se eu apagá-lo ele será recriado automaticamente em algum momento?
evencoil
ele será recriado quando você executar o comando "updatedb"
#
parece também ser recriado como uma tarefa diária?
evencoil