| #!/bin/sh |
| # This script is called by "systemctl enable/disable" when the given unit is a |
| # SysV init.d script. It needs to call the distribution's mechanism for |
| # enabling/disabling those, such as chkconfig, update-rc.d, or similar. This |
| # can optionally take a --root argument for enabling a SysV init script |
| # in a chroot or similar. |
| set -e |
| |
| usage() { |
| echo "Usage: $0 [--root=path] enable|disable|is-enabled <sysv script name>" >&2 |
| exit 1 |
| } |
| |
| unset ROOT |
| |
| # parse options |
| eval set -- "$(getopt -o r: --long root: -- "$@")" |
| while true; do |
| case "$1" in |
| -r|--root) |
| ROOT="$2" |
| shift 2 ;; |
| --) shift ; break ;; |
| *) usage ;; |
| esac |
| done |
| |
| NAME="$2" |
| [ -n "$NAME" ] || usage |
| |
| case "$1" in |
| enable) |
| # call the command to enable SysV init script $NAME here |
| # (consider optional $ROOT) |
| echo "IMPLEMENT ME: enabling SysV init.d script $NAME" |
| ;; |
| disable) |
| # call the command to disable SysV init script $NAME here |
| # (consider optional $ROOT) |
| echo "IMPLEMENT ME: disabling SysV init.d script $NAME" |
| ;; |
| is-enabled) |
| # exit with 0 if $NAME is enabled, non-zero if it is disabled |
| # (consider optional $ROOT) |
| echo "IMPLEMENT ME: checking SysV init.d script $NAME" |
| ;; |
| *) |
| usage ;; |
| esac |