NAME
cvsd-buildroot - create a chrooted directory structure for use in cvsd.
SYNOPSIS
cvsd-buildroot DIRECTORY
DESCRIPTION
cvsd-buildroot creates and populates a directory that can be used as a
chroot jail for running cvsd (see cvsd(8) ) in.
This script should be run as the root user since the creation of
devices and the changing of ownership and permissions require this.
The script gives warnings about files that it’s not expecting.
cvsd-buildroot creates the following directory structure:
/bin This directory is populated with the cvs binary that is found on
the system.
/lib This directory is populated with all the libraries that are
required for running programs in the /bin directory as well as
some predefined required libraries that are present on the
system.
/dev Here null and zero devices are created.
/etc In this directory a passwd file is created that is used for
matching user id’s with usernames. The root and cvsd user are
added to this file if they’re not there yet. The passwd file is
checked for consistency with the system /etc/passwd to prevent
mistakes. The passwd file is also populated with users
referenced in the repository directories. Note that no password
data from /etc/passwd or any other file is stored in the
generated passwd file, all password entries are set to ‘x’.
/usr Here symbolic links are placed to /bin and /lib for some common
library and binary directories found on the system. This is
done for systems that have hard-coded paths for libraries.
/libexec and /usr/libexec
Symbolic links for these directories are created if they are
present on the system.
/tmp This directory is cleaned out on systems that have tmpreaper.
After the directories are created and populated ownership and rights
are set to a reasonable value (root:root,umask=022).
OPTIONS
cvsd-buildroot takes one argument, namely a directory in which the
chroot jail will be created. The directory should be specified with an
absolute path.
NOTES
Creating a chroot environment is a terribly non-portable thing to do
and therefore you may experience problems with missing libraries and
system files. For more information see the FAQ and the README. If you
have to install libraries or perform actions not covered by
cvsd-buildroot please report your findings to
<arthur@arthurdejong.org>.
Rerunning cvsd-buildroot after you have created your repository is
advised since the repositories are checked for references to userid’s
and lockfile directories.
SEE ALSO
cvsd(8)
README
FAQ
AUTHOR
Arthur de Jong <arthur@arthurdejong.org>.