# updatedb

## NAME



           updatedb - update a file name database
    


## SYNOPSIS



           **updatedb [**_options_**]**
    


## DESCRIPTION



           This manual page documents the GNU version of **updatedb** , which
           updates file name databases used by GNU **locate**.  The file name
           databases contain lists of files that were in particular directory
           trees when the databases were last updated.  The file name of the
           default database is determined when **locate** and **updatedb** are
           configured and installed.  The frequency with which the databases
           are updated and the directories for which they contain entries
           depend on how often **updatedb** is run, and with which arguments.
    
           In networked environments, it often makes sense to build a
           database at the root of each filesystem, containing the entries
           for that filesystem.  **updatedb** is then run for each filesystem on
           the fileserver where that filesystem is on a local disk, to
           prevent thrashing the network.  Users can select which databases
           **locate** searches using an environment variable or command line
           option; see locate(1).  Databases cannot be concatenated together.
    
           The **LOCATE02** database format was introduced in GNU findutils
           version 4.0 in order to allow machines with different byte
           orderings to share the databases.  GNU **locate** can read both the
           old and **LOCATE02** database formats, though support for the old
           pre-4.0 database format will be removed shortly.
    


## OPTIONS



           **--findoptions='**_-option1 -option2..._**'**
                  Global options to pass on to **find**.  The environment
                  variable **FINDOPTIONS** also sets this value.  Default is
                  none.
    
           **--localpaths='**_path1 path2..._**'**
                  Non-network directories to put in the database.  Default is
                  /.
    
           **--netpaths='**_path1 path2..._**'**
                  Network (NFS, AFS, RFS, etc.) directories to put in the
                  database.  The environment variable **NETPATHS** also sets this
                  value.  Default is none.
    
           **--prunepaths='**_path1 path2..._**'**
                  Directories to not put in the database, which would
                  otherwise be.  Remove any trailing slashes from the path
                  names, otherwise **updatedb** won't recognise the paths you
                  want to omit (because it uses them as regular expression
                  patterns).  The environment variable **PRUNEPATHS** also sets
                  this value.  Default is /tmp /usr/tmp /var/tmp /afs.
    
           **--prunefs='**_path..._**'**
                  File systems to not put in the database, which would
                  otherwise be.  Note that files are pruned when a file
                  system is reached; any file system mounted under an
                  undesired file system will be ignored.  The environment
                  variable **PRUNEFS** also sets this value.  Default is _nfs NFS_
                  _proc_.
    
           **--output=**_dbfile_
                  The database file to build.  Default is system-dependent.
                  In Debian GNU/Linux, the default is
                  /var/cache/locate/locatedb.
    
           **--localuser=**_user_
                  The user to search non-network directories as, using su(1).
                  Default is to search the non-network directories as the
                  current user.  You can also use the environment variable
                  **LOCALUSER** to set this user.
    
           **--netuser=**_user_
                  The user to search network directories as, using su(1).
                  Default is **daemon**.  You can also use the environment
                  variable **NETUSER** to set this user.
    
           **--dbformat=F**
                  Create the database in format F.  The default format is
                  called LOCATE02.  Alternatively the **slocate** format is also
                  supported.  When the **slocate** format is in use, the database
                  produced is marked as having security level 1.  If you want
                  to build a system-wide **slocate** database, you may want to
                  run **updatedb** as root.
    
           **--version**
                  Print the version number of **updatedb** and exit.
    
           **--help** Print a summary of the options to **updatedb** and exit.
    


## BUGS



           The **updatedb** program correctly handles filenames containing
           newlines, but only if the system's sort command has a working _-z_
           option.  If you suspect that **locate** may need to return filenames
           containing newlines, consider using its _--null_ option.
    


* * *