updatedb(1) on Solnix vs Linux and the BSDs

updatedb is not in the Solnix base system; install pkgs.solnix.findutils to get the GNU updatedb. It is configured with command-line options and environment variables. FreeBSD's locate.updatedb takes no options and is configured through /etc/locate.rc.

What Solnix runs

Not installed by default: add pkgs.solnix.findutils. The page documents the GNU version of updatedb, which builds the databases read by GNU locate. No other illumos variants are shipped. The page says the default database file is system-dependent and names only the Debian GNU/Linux default, /var/cache/locate/locatedb.

Differences

Compared withTopicWhat differs
FreeBSDhow it is configuredSolnix (GNU) updatedb is configured with options such as --localpaths, --prunepaths, --prunefs and --output, plus matching environment variables. FreeBSD locate.updatedb has no options in its synopsis; its manual says /etc/locate.rc controls the database contents.
Source: Solnix updatedb(1) SYNOPSIS, OPTIONS; FreeBSD updatedb(8) SYNOPSIS, DESCRIPTION
FreeBSDcommand name and pathOn Solnix the command is updatedb, from pkgs.solnix.findutils. On FreeBSD the program is locate.updatedb in /usr/libexec, which is not a normal PATH directory. The FreeBSD page is named updatedb(8) but its NAME line says locate.updatedb.
Source: Solnix updatedb(1) NAME, SYNOPSIS; FreeBSD updatedb(8) NAME, SYNOPSIS
FreeBSDconfiguration file and environmentFreeBSD reads its configuration from /etc/locate.rc, and LOCATE_CONFIG gives the path to that file. The Solnix page documents no configuration file and no LOCATE_CONFIG. It uses FINDOPTIONS, NETPATHS, PRUNEPATHS, PRUNEFS, LOCALUSER and NETUSER.
Source: FreeBSD updatedb(8) DESCRIPTION, ENVIRONMENT; Solnix updatedb(1) OPTIONS
FreeBSDschedulingFreeBSD's manual says locate.updatedb is typically run weekly by /etc/periodic/weekly/310.locate. The Solnix page does not say how often updatedb runs or name any scheduler; the database is only as fresh as your last run.
Source: FreeBSD updatedb(8) DESCRIPTION; Solnix updatedb(1) DESCRIPTION
FreeBSDdefault scan scopeSolnix updatedb scans / by default (--localpaths) and prunes /tmp /usr/tmp /var/tmp /afs and filesystem types nfs, NFS and proc. The FreeBSD page does not state its defaults.
Source: Solnix updatedb(1) --localpaths, --prunepaths, --prunefs; FreeBSD updatedb(8) DESCRIPTION
FreeBSDdatabase formatSolnix updatedb writes LOCATE02 by default, and --dbformat can select the slocate format (marked security level 1). The FreeBSD page does not describe a database format or a way to choose one.
Source: Solnix updatedb(1) --dbformat; FreeBSD updatedb(8) DESCRIPTION
FreeBSDnetwork paths and running as another userSolnix updatedb can index network directories separately (--netpaths) and search them as another user via su(1): --netuser defaults to daemon, and --localuser sets the user for local paths. The FreeBSD page documents nothing like this.
Source: Solnix updatedb(1) --netpaths, --netuser, --localuser; FreeBSD updatedb(8)
FreeBSDfilenames with newlinesSolnix updatedb handles filenames containing newlines only if the system sort has a working -z option. The page suggests locate --null if such names may be needed. The FreeBSD page says nothing about newlines.
Source: Solnix updatedb(1) BUGS; FreeBSD updatedb(8)
Linuxsame programThe Solnix page documents the GNU findutils updatedb. No Linux counterpart page is in the bundle, so no Linux differences can be stated from these texts. The Solnix page does name a Debian GNU/Linux default database path.
Source: Solnix updatedb(1) DESCRIPTION, --output

Standards

  • POSIX: updatedb is not a POSIX.1-2024 utility.
  • Solnix: The page states no standards conformance or interface stability.
  • FreeBSD: The FreeBSD page has no STANDARDS section. It cites Woods, James A., “Finding Files Fast”, ;login, 8:1, pp. 8-10, 1983.

Writing portable scripts

  • Do not rely on updatedb options in portable scripts. FreeBSD locate.updatedb takes none and is configured through /etc/locate.rc.
  • Do not assume updatedb is on PATH or that the database is current; on Solnix it needs pkgs.solnix.findutils and a scheduled run.

Every difference here is taken from the manual pages linked above: Solnix's published page, Linux (man-pages and the GNU and util-linux manuals), FreeBSD, OpenBSD and NetBSD. Each row names its source. Where a manual is silent, this page is too. Compiled 2026-10-26. Found a mistake? Mail hackers@lists.solnix.io.