Rendi ogni giorno locator.updatedb su Snow Leopard senza hacking / System / Library?

4

In Snow Leopard, il database locate viene aggiornato una volta alla settimana da un lavoro di avvio, /System/Library/LaunchDaemons/com.apple.locate.plist . Mi piacerebbe eseguire l'updater quotidianamente, ma AFAIK è considerato un pessimo modulo per modificare qualsiasi cosa in /System .

Qual è il modo migliore per cambiare il suo StartCalendarInterval in modo che venga eseguito una volta al giorno?

    
posta Aaron Davies 29.07.2011 - 20:50
fonte

2 risposte

6

Per come la capisco, quel lavoro launchd della cartella System non fa altro che eseguire /usr/libexec/locate.updatedb stesso.

Quindi semplicemente crea il tuo lavoro di avvio eseguendo /usr/libexec/locate.updatedb che viene eseguito una volta al giorno.

Come nota a margine, ecco una risposta Super User che consiglia di utilizzare mdfind -name <filename> anziché locate in modo da poter utilizzare il database Spotlight che viene continuamente aggiornato.

E questo Chiedi una risposta diversa ha più informazioni sulla creazione di lavori avviati se hai bisogno di ulteriore aiuto.

    
risposta data 29.07.2011 - 20:58
fonte
0

Il problema con "locate" e con Spotlight è che non esegue la ricerca di tutti i file. Era possibile aggirare questo problema aggiornando il file updatedb come root, che avvertiva che si trattava di un potenziale buco di sicurezza (cioè chiunque avesse accesso in lettura al database poteva ottenere un elenco di tutti i file in $ HOME di qualsiasi utente) ma dal momento che la maggior parte degli utenti Mac è l'unico utente sui loro computer, non è stata una grande preoccupazione.

Alla fine sono diventato così stufo che ho scritto il mio script che:

  • crea un indice in testo semplice di ogni file, collegamento e directory
  • cerca quell'indice utilizzando egrep
  • offerta per limitare le ricerche a $ HOME o alla directory corrente se vengono forniti determinati argomenti
  • se non viene trovato nulla nell'indice, offerta di aggiornare l'indice o ricerca con mdfind

Puoi scaricare lo script qui [link Dropbox]. Dovrebbe essere abbastanza facile capire come funziona solo leggendolo.

    
risposta data 06.09.2011 - 05:33
fonte

Leggi altre domande sui tag