---
name: "updatedb"
section: "1"
platform: "linux"
package: "findutils"
version: "4.2.28-1etch1"
release: "Debian 4.0 (Etch)"
platforms: ["linux"]
url: "https://new.carta.tech/updatedb"
---

# updatedb(1)

update a file name database

## 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)](/locate/1.md). Databases can not be concatenated together.

The file name database format changed starting with GNU **find** and **locate** version 4.0 to allow machines with different byte orderings to share the databases.  The new GNU **locate** can read both the old and new database formats. However, old versions of **locate** and **find** produce incorrect results if given a new-format database.

## 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)](/su/1.md). 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)](/su/1.md). Default is **daemon**. You can also use the environment variable **NETUSER** to set this user.

- **--old-format**

  Create the database in the old format instead of the new one.

- **--version**

  Print the version number of **updatedb** and exit.

- *--help*

  Print a summary of the options to **updatedb** and exit.

## SEE ALSO

[**find**(1)](/find/1.md), [**locate**(1)](/locate/1.md), [**locatedb**(5)](/locatedb/5.md), [**xargs**(1)](/xargs/1.md) **Finding Files** (on-line in Info, or printed)

## 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.

The best way to report a bug is to use the form at http://savannah.gnu.org/bugs/?group=findutils.   The reason for this is that you will then be able to track progress in fixing the problem.   Other comments about [**updatedb**(1)](/updatedb/1.md) and about the findutils package in general can be sent to the  *bug-findutils* mailing list.  To join the list, send email to  *bug-findutils-request@gnu.org*.
