diff --git a/systemd/install_mapd_systemd.sh b/systemd/install_mapd_systemd.sh index dbf46f5ff0..c4573b0232 100755 --- a/systemd/install_mapd_systemd.sh +++ b/systemd/install_mapd_systemd.sh @@ -1,4 +1,4 @@ -#!/bin/bash +#!/usr/bin/env bash declare -A descs declare -A vars @@ -12,9 +12,9 @@ descs["MAPD_STORAGE"]="MapD data and configuration storage directory" vars["MAPD_STORAGE"]=${MAPD_STORAGE:="/var/lib/mapd"} descs["MAPD_USER"]="user MapD will be run as" -vars["MAPD_USER"]=${MAPD_USER:=$(id --user --name)} +vars["MAPD_USER"]=${MAPD_USER:=$(whoami)} descs["MAPD_GROUP"]="group MapD will be run as" -vars["MAPD_GROUP"]=${MAPD_GROUP:=$(id --group --name)} +vars["MAPD_GROUP"]=${MAPD_GROUP:=$(groups $(whoami) | cut -d' ' -f1)} for v in MAPD_PATH MAPD_STORAGE MAPD_USER MAPD_GROUP ; do echo "$v: ${descs["$v"]}" @@ -32,7 +32,10 @@ done vars["MAPD_DATA"]=${MAPD_DATA:="${vars['MAPD_STORAGE']}/data"} sudo mkdir -p "${vars['MAPD_DATA']}" sudo mkdir -p "${vars['MAPD_STORAGE']}" -if [ -f mapd-sds.conf.in ]; then + +SYSTEM_PATH=${vars["MAPD_PATH"]}/systemd + +if [ -f $SYSTEMD_PATH/mapd-sds.conf.in ]; then sudo mkdir -p "${vars['MAPD_STORAGE']}/sds" fi @@ -45,18 +48,18 @@ sudo chown -R ${vars['MAPD_USER']}:${vars['MAPD_GROUP']} "${vars['MAPD_STORAGE'] for f in mapd_server mapd_server@ mapd_sd_server mapd_sd_server@ mapd_web_server mapd_web_server@ ; do - if [ -f $f.service.in ]; then + if [ -f $SYSTEMD_PATH/$f.service.in ]; then sed -e "s#@MAPD_PATH@#${vars['MAPD_PATH']}#g" \ -e "s#@MAPD_STORAGE@#${vars['MAPD_STORAGE']}#g" \ -e "s#@MAPD_DATA@#${vars['MAPD_DATA']}#g" \ -e "s#@MAPD_USER@#${vars['MAPD_USER']}#g" \ -e "s#@MAPD_GROUP@#${vars['MAPD_GROUP']}#g" \ - $f.service.in > $MAPD_TMP/$f.service + $SYSTEMD_PATH/$f.service.in > $MAPD_TMP/$f.service sudo cp $MAPD_TMP/$f.service /lib/systemd/system/ fi done -if [ -f mapd_xorg.service ]; then - sudo cp mapd_xorg.service /lib/systemd/system/ +if [ -f $SYSTEMD_PATH/mapd_xorg.service ]; then + sudo cp $SYSTEMD_PATH/mapd_xorg.service /lib/systemd/system/ fi sed -e "s#@MAPD_PATH@#${vars['MAPD_PATH']}#g" \ @@ -64,14 +67,14 @@ sed -e "s#@MAPD_PATH@#${vars['MAPD_PATH']}#g" \ -e "s#@MAPD_DATA@#${vars['MAPD_DATA']}#g" \ -e "s#@MAPD_USER@#${vars['MAPD_USER']}#g" \ -e "s#@MAPD_GROUP@#${vars['MAPD_GROUP']}#g" \ - mapd.conf.in > $MAPD_TMP/mapd.conf -if [ -f mapd-sds.conf.in ]; then + $SYSTEMD_PATH/mapd.conf.in > $MAPD_TMP/mapd.conf +if [ -f $SYSTEMD_PATH/mapd-sds.conf.in ]; then sed -e "s#@MAPD_PATH@#${vars['MAPD_PATH']}#g" \ -e "s#@MAPD_STORAGE@#${vars['MAPD_STORAGE']}#g" \ -e "s#@MAPD_DATA@#${vars['MAPD_DATA']}#g" \ -e "s#@MAPD_USER@#${vars['MAPD_USER']}#g" \ -e "s#@MAPD_GROUP@#${vars['MAPD_GROUP']}#g" \ - mapd-sds.conf.in > $MAPD_TMP/mapd-sds.conf + $SYSTEMD_PATH/mapd-sds.conf.in > $MAPD_TMP/mapd-sds.conf sudo cp $MAPD_TMP/mapd-sds.conf ${vars['MAPD_STORAGE']} sudo chown ${vars['MAPD_USER']}:${vars['MAPD_GROUP']} "${vars['MAPD_STORAGE']}/mapd-sds.conf" fi