¿Cómo habilito ubicar y poner en cola la base de datos a construir?

37

En una nueva instancia de Ubuntu 10.4, intenté usar el locatecomando solo para recibir el error

locate: can not stat () `/var/lib/mlocate/mlocate.db': No such file or directory

de usar este comando en otros sistemas, supongo que esto significa que la base de datos aún no se ha creado (es una instalación nueva). Creo que se supone que se ejecute a diario, pero ¿cómo lo pondría en cola para que se ejecute de inmediato?

Además, ¿cómo se determina la "ejecución diaria"? Si tengo una caja que solo enciendo por una hora a la vez, ¿la base de datos alguna vez se construirá sola?

cwd
fuente

Respuestas:

58

El trabajo cron se define en /etc/cron.daily/mlocate.

Para ejecutarlo de inmediato:

sudo updatedb

o mejor

sudo ionice -c3 updatedb

Esto es mejor porque updatedbestá configurado en la clase de programación de E / S inactiva , para que no perturbe (desde el punto de vista de E / S) otras aplicaciones. Desde la ionicepágina del manual:

  -c class
          The scheduling class. 0 for none, 1 for real time, 2 for 
          best-effort, 3 for idle.

  ........................

  Idle   A program running with idle io priority will only get disk time
         when no other  program  has  asked  for disk io for a defined 
         grace period. The impact of idle io processes on normal system 
         activity should be zero. This scheduling class does not take a 
         priority argument. Presently, this scheduling class is permitted 
         for an ordinary user (since kernel 2.6.25).
enzotib
fuente
Gracias. ¿Por qué es mejor el segundo?
cwd
@cwd: ver respuesta actualizada.
enzotib