Provided by: utrans_0.7-1_all 

NAME
utrans - convert systemd units to generic unix equivalents
SYNOPSIS
utrans [-b [=]<BACKEND>[,<BACKEND>]] [-f <TYPE>] [-h] [-v] <UNIT> <OUTPUT_DIR>
OPTIONS
The following commandline options are supported:- -b <BACKEND> load the specified backend(s). Can be a comma separated list. See BACKENDS below for further details. -f <TYPE> force; valid types are: overwrite: allow overwriting existing output files -h open manpage -v show version
DESCRIPTION
utrans translates systemd services, sockets and timers to corresponding generic UNIX configuration and scripting as used in alternative settings that exclude systemd. <UNIT> is the pathname for the unit file to translate. • Service units are converted to openrc-run(8) service scripts. • Socket units are converted either to an xinetd(8) configuration or an openrc-run(8) script using socket-activate(1), depending on the requirements of the socket. • Timer units are converted to a crontab(5) fragment mapping systemd.time(7) events to a cron(8)-compatible expressions.
USAGE
utrans accepts two arguments: the systemd.unit(5) file (<UNIT>) and the output directory (<OUTPUT_DIR>). The systemd.unit(5) file which can be one of systemd.service(5), systemd.socket(5) or systemd.timer(5). The script will create files in the following output subdirectories of <OUTPUT_DIR> depending on the unit type: ┌─────────┬─────────────────────────────────────────────────────────────────────────────────────────────┐ │ Unit │ Output │ ├─────────┼─────────────────────────────────────────────────────────────────────────────────────────────┤ │ Service │ An openrc-run(8) script is created in init.d and a complementary file is created in conf.d │ │ │ if needed, for sourcing additional additional environment variables. │ ├─────────┼─────────────────────────────────────────────────────────────────────────────────────────────┤ │ Socket │ Depending upon the socket's configuration, an xinetd(8) configuration fragment is created │ │ │ in xinetd.d, or an openrc-run(8) script is created in init.d to start the service with │ │ │ socket-activate(1), . │ ├─────────┼─────────────────────────────────────────────────────────────────────────────────────────────┤ │ Timer │ A separate crontab(5) fragment is created into cron.d for each timer unit. │ └─────────┴─────────────────────────────────────────────────────────────────────────────────────────────┘ When the unit translation requires other units, then these are searched in the paths defined in the environment variable $SYSTEMD_UNIT_PATH, or in /usr/lib/system/system:/lib/systemd/system by default.
BACKENDS
Backends are used for producing different output for different settings. utrans finds and sources backend script fragments from the $UTRANS_DATA_DIR/backends directory or from /usr/share/utrans/backends by default. If the backend is prefixed with =, the default backends are not loaded. The following backends are available: ┌─────────┬─────────┬───────────────────────────────────────────────────────────────────────────────────┐ │ Backend │ Unit │ Notes │ ├─────────┼─────────┼───────────────────────────────────────────────────────────────────────────────────┤ │ openrc │ Service │ Loaded by default │ ├─────────┼─────────┼───────────────────────────────────────────────────────────────────────────────────┤ │ xinetd │ Socket │ Loaded by default │ ├─────────┼─────────┼───────────────────────────────────────────────────────────────────────────────────┤ │ cron │ Timer │ Loaded by default │ ├─────────┼─────────┼───────────────────────────────────────────────────────────────────────────────────┤ │ inetd │ Socket │ Only supports ListenStream and ListenDatagram using update-inetd(8) │ ├─────────┼─────────┼───────────────────────────────────────────────────────────────────────────────────┤ │ lsb │ Service │ Alpha quality support for scripts with LSB-style insserv(8) headers │ └─────────┴─────────┴───────────────────────────────────────────────────────────────────────────────────┘ Contributions of other backends are welcome: see backends/README for further details.
LIMITATIONS
The following are known cases of poor or variant functionality: • Some special Executable Prefixes are ignored after warning. • Unescaping specifiers doesn't distinguish context: if you require a filesystem path, start the instance with '-'. Patches are welcome at https://git.devuan.org/LeePen/unit-translator!
SEE ALSO
utrans-rc(1), openrc(8), socket-activate(1)
COPYRIGHT
BSD-2-Clause License https://opensource.org/licenses/BSD-2-Clause Copyright (c) 2020, K Gopal Krishna. Copyright (c) 2023-2024, Mark Hindley
AUTHORS
K Gopal Krishna <mail@kayg.org> under the guidance of Benda Xu <heroxbd@gentoo.org>, Adam Borowski <kilobyte@angband.pl> and Mo Zhou <lumin@debian.org>. This project was a part of Google Summer of Code, 2020. Mark Hindley <mark@hindley.org.uk> Version 0.7 2024-09-09 UTRANS(1)