Come eseguire il debug della causa di un enorme indice Spotlight?

0

Il mio indice Spotlight (MacBook Air 13, 10.13.6) ha perso il controllo richiedendomi di eliminare e ricostruire almeno due volte al giorno.

Ho circa 70 Gb disponibili sul mio HDD e il database di Spotlight situato in /.Spotlight-V100/ aumenta lentamente fino a occupare interamente lo spazio disponibile.

A quel punto cancellerò l'indice come segue:

#!/bin/bash

sudo mdutil -a -i off
sudo rm -rf /.Spotlight-V100/*
sudo mdutil -a -i on

e permettergli di ricostruire se stesso.

Questo post indica che altri hanno visto questo comportamento, ma non fornisce alcun aiuto nel debug, poiché il poster ha riscontrato un problema con un driver di dispositivo che non ho. Spotlight Massive (fuori controllo a 100 GB +)

Qualche consiglio su come eseguire il debug di questo problema? Ho guardato intorno a Console.app ma non ho trovato un chiaro puntatore a qualcosa che andasse fuori controllo.

Una possibilità è che ci sia un gran numero di processi mdworker creati durante la ricostruzione; Non so se questo è inaspettato ma sembra più grande di quello che altri hanno segnalato.

A questo punto sono fuori di idee su cosa controllare. Mi affido a Spotlight abbastanza accuratamente per la ricerca della posta in Outlook, quindi non posso semplicemente spegnerlo completamente. Grazie!

    
posta James Cronen 10.10.2018 - 18:16
fonte

1 risposta

2

Partendo dal presupposto che si tratti di un file, una cartella o un tipo di file specifico che fa scattare qualche tipo di bug che fa esplodere la dimensione dell'indice, darei un'occhiata ai file reali che Spotlight crea (cioè il database stesso) . Tryk li guarda con qualsiasi editor di testo o persino un editor esadecimale.

Se questo è effettivamente causato da un bug che ha causato l'indicizzazione dello stesso contenuto più e più volte, allora potresti essere in grado di vedere quale file o tipo di file è. Quindi puoi restringere la cartella da escludere da Spotlight.

Un altro metodo che richiede più tempo è semplicemente per tentativi ed errori facendo una sorta di "ricerca binaria", dove si esclude metà delle cartelle dall'indice di Spotlight. Se il problema persiste, il problema è in questa metà, altrimenti è nell'altro. Ripeti la procedura finché non trovi la cartella specifica contenente il file problematico.

Se sei a tuo agio con il Terminale, puoi anche dare un'occhiata a quali file sono effettivamente aperti e letti dai processi di mdworker. Questo potrebbe darti ancora un suggerimento sul motivo per cui l'indice è così grande.

Monitoraggio attività di primo utilizzo come hai già fatto per trovare i processi di mdworker. Prendi nota della colonna "PID" che contiene l'ID del processo.

Apri Terminale ed esegui il seguente comando:

lsof -n -p <pid>

È necessario sostituire con l'ID del processo effettivo. Questo ti darà una lista dei file che sono attualmente in uso da quel processo.

Potresti anche eseguire:

fs_usage -p <pid>

Di nuovo, sostituisci con l'ID del processo effettivo. Questo comando mostrerà gli accessi ai file per quel processo man mano che si verificano. Puoi fermare il display premendo Ctrl-C.

    
risposta data 10.10.2018 - 22:31
fonte

Leggi altre domande sui tag