Debian README for GNU locate/updatedb. The database is updated daily by running /etc/cron.daily/locate. Customizations can be made by either editing this file directly (Since it is a dpkg-conffile changes will be preserved.) or by generating /etc/updatedb.findutils.cron.local which will be sourced by the cronjob before running updatedb. The cronjob by default runs with nice level 10 and with IONICE_CLASS 3 (idle). Using IONICE_CLASS is a trade-off between locate database consistency and friendliness to other processes. The nicer we are, the less impact we have on system performance when updating the database, because we generally spread our usage out more. Spreading the usage out a bit more means that updating the database takes longer and the result is a slightly less consistent view of the filesystem. Since it is not possible to get a perfectly consistent view anyway, using IONICE_CLASS=3 is normally reasonable. ------------------------------- Questions and examples -------------------------------- My systems slows down everyday at bootup, how can I stop the daily updatedb-invocations? * Generate a new file /etc/updatedb.findutils.cron.local that consists of the single line "exit 0" (without the quotes). * Uninstall locate. * Edit /etc/cron.daily/locate. It is a dpkg conffile and your changes won't be overwritten. Q: How can I stop /etc/cron.daily/locate from using ionice? A: add UPDATDB_NO_IONICE=yes to /etc/updatedb.findutils.cron.local Examples: * Run weekly instead of daily: Add this to the head of /etc/cron.daily/locate #---------- if [ -d /var/cache/locate ] ; then # locatedb is younger than 7 days [ -n "`find /var/cache/locate -name locatedb -mtime -7`" ] && exit 0 fi #---------- To run every other day on would use "2" instead of "7". * Disable updatedb completely: Either delete /etc/cron.daily/locate or add "exit 0" as the second line of /etc/cron.daily/locate * On a laptop only update the locate database if running on AC-power: Add "on_ac_power || exit 0" as the second line of /etc/cron.daily/locate. If you are using anacron for running cron.daily there is no need for changing /etc/cron.daily/locate, anacron will by default not execute the jobs when the system is running on battery. * Some people wish to have updatedb only include mount points which are automatically mounted by "mount -a", which mounts devices listed in /etc/fstab. The following lines may be added to /etc/cron.daily/locate (or to a newly generated /etc/updatedb.findutils.cron.local) to exclude non-automatic mount points from updatedb. # mount points not to be scanned (regexp matching lines into /etc/fstab) EXCLUDE_MOINT_POINTS=noauto EXCLUDE_PATH=`awk "/^#/ {next}; /$EXCLUDE_MOINT_POINTS/ {print \\$2}" < /etc/fstab | tr '\012' ' '` PRUNEPATHS="$PRUNEPATHS $EXCLUDE_PATH" This suggestion is due to Eric Delaunay