perp-setup(8) persistent process supervision perp-setup(8) NAME perp-setup - initialize a perp installation SYNOPSIS perp-setup [ basedir ] [ ctldir ] DESCRIPTION perp-setup is a post-installation configuration script intended to automate the setup of a perp system. It is usually run only one-time, after the installation of the perp package. perp-setup configures the base service directory as given by the argu- ment basedir. If the basedir argument is not specified, perp-setup will use the environmental variable PERP_BASE. If PERP_BASE is not set or empty, perp-setup will use a default value for basedir, normally /etc/perp. perp-setup creates the directories basedir and basedir/.boot if they don't already exist. It then installs the standard perpboot(8) scripts rc.log and rc.perp into basedir/.boot, and sets them executable. (If either of these scripts already exists, perp-setup leaves them alone and installs the new versions for review, non-executable, and with a .new extension.) perp-setup then inspects the installation for the existence of basedir/.control. If it does not exist, perp-setup configures basedir/.control as a symlink to the directory given by the argument ctldir. If the ctldir argument is not specified, perp-setup will use the environmental variable PERP_CTL. If PERP_CTL is not set or empty, perp-setup will use a default value for ctrldir, normally /var/run/perp. Note that the perp-setup utility does not itself create the ctldir directory, only the symlink. perp-setup then checks for a sysv-compatible init(8) system by looking for the file /etc/inittab. If present, and if no perpboot(8) entry is found within it, perp-setup appends an inittab(5) entry like the fol- lowing: ## perpboot: PB:12345:respawn:/usr/sbin/perpboot -x /etc/perp Check to see that this entry and the perpboot(8) runscripts are suit- able for your installation. A SIGHUP signal to init(8) will then start the perp system: kill -HUP 1 Otherwise, perp-setup checks for a BSD-type init(8) system by looking for the file /etc/rc.local. If present, and if no perpboot(8) is already found within it, perp-setup appends an entry like the follow- ing: ## perpboot: if [ -x /usr/sbin/perpboot ]; then echo -n ' perpd' /usr/sbin/perpboot -d /etc/perp fi Check to see that this entry and the perpboot(8) runscripts are suit- able for your installation. The perp system will then start after the system is rebooted: shutdown -r now Whether using inittab or rc.local, the administrator should look over the boot scripts and modify them if/as necessary for the specific installation. The default rc.log script installed by perp-setup configures tinylog(8) as the perpd(8) logger. The adminstrator may modify the logger and/or logging options by editing the script directly. The rc.log script also tries to run tinylog(8) as an unprivileged user with runuid(8). The adminstrator will need to add a ``tinylog'' user/group account to the system to enable this feature. FILES /etc/perp/ The default base operating directory for perpd(8). /etc/perp/.boot/ Directory containing the startup scripts used by perpboot. /etc/perp/.boot/rc.log Control script used by perpboot to start a logger for perpd(8). /etc/perp/.boot/rc.perp Control script used by perpboot to start up perpd(8). /etc/perp/.control [--> /var/run/perp] Directory (normally a symlink) for runtime control files. /etc/inittab inittab(5) configuration file for sysv-compatible system. /etc/rc.local init(8) startup script for BSD-compatible system. ENVIRONMENT DESTDIR If this variable is defined and non-empty, perp-setup prepends basedir with this value before making directories and installing files. Implies NO_INIT, that is, perp-setup will skip setting up any system boot scripts inittab or rc.local. May be useful for package builders. NO_INIT If this variable is defined and non-empty, perp-setup skips installation of any perpboot(8) stanzas into the system bootscripts inittab and rc.local. May be useful for package installation scripts, and/or when using other methods (such as an /etc/rc.d script) for starting perpboot(8). PERP_BASE If no basedir argument is given at the command-line on startup, perp-setup checks for a value defined by PERP_BOOT. If this is not defined or empty, perp-setup uses a built-in default, nor- mally /etc/perp. PERP_CTL If no ctldir argument is given at the command-line on startup, perp-setup checks for a value defined by PERP_CTL. If this is not defined or empty, perp-setup uses a built-in default, nor- mall /var/run/perp. AUTHOR Wayne Marshall, http://b0llix.net/perp/ SEE ALSO perp_intro(8), perpboot(8), perpctl(8), perpd(8), perpetrate(5), perphup(8), perpls(8), perpok(8), perpstat(8), sissylog(8), tinylog(8), runuid(8) perp-2.07 January 2013 perp-setup(8)