boxctl/README.md

152 lines
2.8 KiB
Markdown
Raw Normal View History

2019-09-23 18:13:18 -06:00
BOXCTL(8) - System Manager's Manual
# NAME
**boxctl** - tool to manage remote
OpenBSD
machines
# SYNOPSIS
**boxctl**
\[**-fmnsv**]
2019-09-23 18:13:18 -06:00
\[**-h** *host*]
\[**-u** *user*]
# DESCRIPTION
**boxctl**
is a
ksh(1)
script designed to help manage
OpenBSD
machines.
It uses only tools contained in
OpenBSD
base.
The options are as follows:
**-h** *host*
> Remote host to be managed.
**-u** *user*
> User to connect to
> *host*
> with.
> Defaults to
> *root*.
**-f**
> Force installation of all packages.
2019-10-15 21:03:47 -06:00
> This skips the 'intelligent' diff mode.
2019-09-23 18:13:18 -06:00
**-m**
> Run maintenance tasks.
> This includes deleting unused dependencies using
> pkg\_delete(1).
> And installing / updating firmware using
> fw\_update(1).
**-n**
> Dry run.
> This will only print the commands that will be run.
**-s**
> Force
> pkg\_add(1)
> to run with '-Dsnap'.
> This is useful when
> OpenBSD
> is in -beta.
2019-09-23 18:13:18 -06:00
**-v**
> Increase verbosity.
> More v's can be specified to increase information output.
> The number of v's are passed to tools used by
> **boxctl**.
# FILES
*$CWD/files*
> Is a ":" delimited index of source file, owner, group, mode and destination.
> Each source will be copied to the specified destination, then chown/chmod will
> be run with the values specified.
> If this file does not exist, no files are copied.
*$CWD/services*
> An optional file that contains a list of services to enable on the remote
> host.
> If a service is already enabled, it will be restarted each run of
> **boxctl**.
*$CWD/groups*
> A ":" delimited list of groups to be added to the remote host.
> Entries should follow a "group:gid" pattern.
*$CWD/users*
2019-10-15 21:03:47 -06:00
> A ":" delimited list of users to be added to the remote host.
> Entries should follow the pattern: "user:uid:gid:comment:home:shell:password".
> The "comment" filed should not contain white space for the time being.
> "password" is expected to be an encrypted string produced via
> encrypt(1).
2019-09-23 18:13:18 -06:00
*$CWD/packages*
> When this file exists,
> **boxctl**
> will install the packages contained therewithin on the remote host.
> A list is cached on the remote host under /etc/packages.
> This list (if it exists) will be compared using
> diff(1)
> and only missing packages will be installed.
> Package names should be listed by their fuzzy names.
> See
> pkg\_info(1)
> for more information on fuzzy names.
*$CWD/commands*
> An optional file that contains a script that will be executed at the end of
> the run.
2019-09-23 18:13:18 -06:00
# SEE ALSO
chmod(1),
diff(1),
encrypt(1),
2019-09-23 18:13:18 -06:00
fw\_update(1),
2019-09-23 18:15:36 -06:00
ksh(1),
2019-09-23 18:13:18 -06:00
pkg\_add(1),
pkg\_delete(1),
pkg\_info(1),
scp(1),
ssh(1),
chown(8),
rcctl(8)
# HISTORY
The first version of
**boxctl**
was released in September of 2019.
# AUTHORS
**boxctl**
was written by
Aaron Bieber <[aaron@bolddaemon.com](mailto:aaron@bolddaemon.com)>.
OpenBSD 6.6 - September 23, 2019