Installing Findutils-4.1

Estimated build time:           0.10 SBU
Estimated required disk space:  3 MB

Installing Findutils

This package requires its patch to be applied before you can install it. Make sure it's unpacked before running the installation commands.

Install Findutils by running the following commands:

patch -Np1 -i ../findutils-4.1.patch &&
./configure --prefix=/usr &&
make libexecdir=/usr/bin &&
make libexecdir=/usr/bin install

FHS compliance notes

By default, the location of the updatedb database is in /usr/var. If you would rather be FHS compliant, you may wish to use another location. The following commands use the database file /var/lib/misc/locatedb which is FHS compliant.

patch -Np1 -i ../findutils-4.1.patch &&
./configure --prefix=/usr &&
make localstatedir=/var/lib/misc libexecdir=/usr/bin &&
make localstatedir=/var/lib/misc libexecdir=/usr/bin install

Command explanations

patch -Np1 -i ../findutils-4.1.patch: This patch is to fix some compilation errors by avoiding a variable conflict and changing some bad syntax.

Contents of Findutils

Last checked against version 4.1.

Program Files

bigram, code, find, frcode, locate, updatedb and xargs

Descriptions

bigram

bigram is used together with code to produce older-style locate databases. To learn more about these last three programs, read the locatedb.5 manual page.

code

code is the ancestor of frcode. It was used in older-style locate databases.

find

The find program searches for files in a directory hierarchy which match a certain criteria. If no criteria is given, it lists all files in the current directory and its subdirectories.

frcode

frcode is called by updatedb to compress the list of file names using front-compression, which reduces the database size by a factor of 4 to 5.

locate

locate scans a database which contains all files and directories on a filesystem. This program lists the files and directories in this database matching a certain criteria. If a user is looking for a file this program will scan the database and tell him exactly where the files he requested are located. This only makes sense if the locate database is fairly up-to-date, else it will provide out-of-date information.

updatedb

The updatedb program updates the locate database. It scans the entire file system (including other file systems that are currently mounted unless it is told not to do so) and puts every directory and file it finds into the database that's used by the locate program, which retrieves this information. It's good practice to update this database once a day to have it up-to-date whenever it is needed.

xargs

The xargs command applies a command to a list of files. If there is a need to perform the same command on multiple files, a list can be created that names all those files (one per line) and xargs can perform that command on those files.

Findutils Installation Dependencies

Last checked against version 4.1.

Bash: sh
Binutils: ar, as, ld, ranlib
Diffutils: cmp
Fileutils: chmod, cp, install, mv, rm
Grep: egrep, grep
Gcc: cc1, collect2, cpp0, gcc
Make: make
Patch: patch
Sed: sed
Sh-utils: basename, date, echo, hostname
Textutils: cat, tr