Skip to content
Snippets Groups Projects

title: The 66 Suite: 66 author: Eric Vidal eric@obarun.org

66

Software

obarun.org

66

Tool to control the state of the system and service manager.

Interface

66 [ -h ] [ -z ] [ -v verbosity ] [ -l live ] [ -T timeout ] [ -t tree ] start|stop|reload|restart|free|reconfigure|enable|disable|configure|status|resolve|state|remove|signal|tree|parse|scandir|boot|poweroff|reboot|halt|version [<command options> or subcommand <subcommand options>] service...|tree

Invocation of 66 can be made as root or regular account.

Options

These options are available all commands except the -t options. In such cases, the help of the specific command provides clarification.

  • -h: prints this help.

  • -z: use color.

  • -v verbosity: increases/decreases the verbosity of the command.

    • 0: only print error messages.
    • 1: also, print informative messages. This is the default.
    • 2: also, print warning messages.
    • 3: also, print tracing messages.
    • 4: also, print function name and line code of the messages.
    • 5: also, display the sequence of the current process function by function.
  • -l live: changes the supervision directory of service to live. By default this will be %%livedir%%. The default can also be changed at compile time by passing the --livedir= option to ./configure. An existing absolute path is expected and should be within a writable and executable filesystem - likely a RAM filesystem—see scandir command.

  • -T timeout: specifies a general timeout (in milliseconds) passed to command. By default the timeout is set to 0 (infinite).

  • -t tree: use tree as tree to use.

Commands

  • start: bring up services.
  • stop: bring down services.
  • reload: send a SIGHUP signal to services.
  • restart: bring down then bring up services.
  • free: bring down services and remove it from scandir.
  • reconfigure: bring down, unsupervise, parse it again and bring up service.
  • enable: activate services for the next boot.
  • disable: deactivate services for the next boot.
  • configure: manage service environment variables.
  • status: display service information.
  • resolve: display the service's resolve file contents.
  • state: display service's state file contents.
  • remove: remove service and cleanup all files belong to it within the system.
  • signal: send a signal to services.
  • tree: manage or see information of trees.
  • parse: parse the service frontend file.
  • scandir: manage scandir.
  • boot: boot the system.
  • poweroff: poweroff the system.
  • reboot: reboot the system.
  • halt: halt the system.
  • version: display 66 version.

Exit codes

  • 0 success
  • 100 wrong usage
  • 111 system call failed

Furthermore, all commands receive the same exit code.

Instanced service

An instanced service name from a service template can be passed as service argument where the name of the service must end with a @ (commercial at).—see frontend service file.

(!) The name of the template must be declared first immediately followed by the instance name.

For example, to enable a intanced service, you can do:

66 enable foo@foobar

Handling dependencies

Any dependency or required-by dependency of a service or a tree chain will be automatically resolved. Manually defining chains of interdependencies is unnecessary.

For instance, during the stop command, if the FooA service has a declared required-by dependency on FooB, FooB will be considered and automatically stopped first when FooA is stopped. This process will run recursively until all required-by dependencies are stopped.

This applies to all 66 commands when it's necessary.