FS-8369 Fixes
- Don't check OS, current patch should be compatible with Debian and RHEL derivatives and ArchLinux - Make useradd the tool to add the usera nd group to work on all
This commit is contained in:
parent
757fa94239
commit
389d24da14
|
@ -55,10 +55,10 @@ install:
|
||||||
@echo " + Install/Re-install default config: +"
|
@echo " + Install/Re-install default config: +"
|
||||||
@echo " + ---------------------------------- +"
|
@echo " + ---------------------------------- +"
|
||||||
@echo " + $(MK) samples +"
|
@echo " + $(MK) samples +"
|
||||||
if KNOWN_INIT
|
if SYSTEMD_INIT
|
||||||
@echo " + +"
|
@echo " + +"
|
||||||
@echo " + Install startup scripts: +"
|
@echo " + Install systemd startup scripts: +"
|
||||||
@echo " + ------------------------ +"
|
@echo " + -------------------------------- +"
|
||||||
@echo " + +"
|
@echo " + +"
|
||||||
@echo " + build/startup/install_systemd.sh +"
|
@echo " + build/startup/install_systemd.sh +"
|
||||||
endif
|
endif
|
||||||
|
|
|
@ -5,11 +5,12 @@ After=syslog.target network.target local-fs.target
|
||||||
[Service]
|
[Service]
|
||||||
; service
|
; service
|
||||||
Type=forking
|
Type=forking
|
||||||
PIDFile=@rundir@/freeswitch.pid
|
PIDFile=@runtimedir@/freeswitch.pid
|
||||||
PermissionsStartOnly=true
|
PermissionsStartOnly=true
|
||||||
Environment="DAEMON_OPTS=-nonat"
|
Environment="DAEMON_OPTS=-nonat"
|
||||||
EnvironmentFile=-/etc/@environmentfilelocation@/freeswitch
|
EnvironmentFile=-/etc/sysconfig/freeswitch
|
||||||
ExecStart=@bindir@/freeswitch -u freeswitch -g freeswitch -ncwait -rp ${DAEMON_OPTS}
|
EnvironmentFile=-/etc/default/freeswitch
|
||||||
|
ExecStart=@bindir_expanded@/freeswitch -u freeswitch -g freeswitch -ncwait -rp ${DAEMON_OPTS}
|
||||||
TimeoutSec=20s
|
TimeoutSec=20s
|
||||||
Restart=on-failure
|
Restart=on-failure
|
||||||
; exec
|
; exec
|
||||||
|
|
|
@ -1,9 +1,8 @@
|
||||||
#!/bin/bash
|
#!/bin/bash
|
||||||
# @DISTRO@ installer
|
|
||||||
# Niek Vlessert
|
# Niek Vlessert
|
||||||
|
|
||||||
USER=`whoami`
|
USER=`whoami`
|
||||||
DISTRO=@DISTRO@
|
DISTRO=$(source /etc/os-release && echo $PRETTY_NAME)
|
||||||
if [ $USER != "root" ] ; then
|
if [ $USER != "root" ] ; then
|
||||||
SUDO=`which sudo | awk -F"/" '{print $NF}'`
|
SUDO=`which sudo | awk -F"/" '{print $NF}'`
|
||||||
if [ -z $SUDO ] ; then
|
if [ -z $SUDO ] ; then
|
||||||
|
@ -20,36 +19,34 @@ if [ $USER != "root" ] ; then
|
||||||
fi
|
fi
|
||||||
|
|
||||||
echo
|
echo
|
||||||
echo "This will do several things on your @DISTRO@ installation:"
|
echo "This will do several things on your $DISTRO installation:"
|
||||||
echo "- Create user freeswitch and add it to group freeswitch"
|
echo "- Create user freeswitch and add it to group freeswitch"
|
||||||
FSPATH=@prefix@
|
FSPATH=@prefix@
|
||||||
if [[ $FSPATH == *"freeswitch"* ]]
|
if [[ $FSPATH == *"freeswitch"* ]]
|
||||||
then
|
then
|
||||||
echo "- Set permissions on @prefix@ and files in @bindir_expanded@"
|
echo "- Set permissions on @prefix@ and files in @bindir_expanded@"
|
||||||
fi
|
fi
|
||||||
echo "- Install systemd unit file"
|
echo "- Install systemd unit file and other required files"
|
||||||
echo "- Install /etc/@environmentfilelocation@/freeswitch"
|
|
||||||
echo
|
echo
|
||||||
read -p "Do you want to continue? (y/n) " -n 1 -r
|
read -p "Do you want to continue? (y/n) " -n 1 -r
|
||||||
if [[ $REPLY =~ ^[yY]$ ]]
|
if [[ $REPLY =~ ^[yY]$ ]]
|
||||||
then
|
then
|
||||||
echo
|
echo
|
||||||
echo "Installing..."
|
echo "Installing..."
|
||||||
$SUDO groupadd freeswitch
|
$SUDO useradd -d @confdir@ -r -U -s /bin/false -c "FreeSWITCH open source softswitch" freeswitch
|
||||||
if DISTRO="debian8"; then
|
|
||||||
$SUDO adduser --disabled-password --quiet --system --home @confdir@ --gecos "FreeSWITCH open source softswitch" --ingroup freeswitch freeswitch
|
|
||||||
elif DISTRO="centos7"; then
|
|
||||||
$SUDO adduser --system --home @confdir@ -c "FreeSWITCH open source softswitch" -g freeswitch freeswitch
|
|
||||||
fi
|
|
||||||
if [[ $FSPATH == *"freeswitch"* ]]
|
if [[ $FSPATH == *"freeswitch"* ]]
|
||||||
then
|
then
|
||||||
$SUDO chown -R freeswitch:freeswitch @prefix@
|
$SUDO chown -R freeswitch:freeswitch @prefix@
|
||||||
$SUDO chmod -R ug=rwX,o= @prefix@
|
$SUDO chmod -R ug=rwX,o= @prefix@
|
||||||
$SUDO chmod -R u=rwx,g=rx @bindir_expanded@/*
|
$SUDO chmod -R u=rwx,g=rx @bindir_expanded@/*
|
||||||
fi
|
fi
|
||||||
$SUDO cp init/freeswitch.service /etc/systemd/system/
|
$SUDO cp build/startup/freeswitch.service /etc/systemd/system/
|
||||||
$SUDO cp init/freeswitch.tmpfile /etc/tmpfiles.d/freeswitch.conf
|
$SUDO cp build/startup/freeswitch.tmpfile /etc/tmpfiles.d/freeswitch.conf
|
||||||
$SUDO cp init/freeswitch.default /etc/@environmentfilelocation@/freeswitch
|
if [ -d /etc/sysconfig ]; then
|
||||||
|
$SUDO cp build/startup/freeswitch.default /etc/sysconfig/freeswitch
|
||||||
|
else
|
||||||
|
$SUDO cp build/startup/freeswitch.default /etc/default/freeswitch
|
||||||
|
fi
|
||||||
$SUDO systemd-tmpfiles --clean --create
|
$SUDO systemd-tmpfiles --clean --create
|
||||||
$SUDO systemctl daemon-reload
|
$SUDO systemctl daemon-reload
|
||||||
echo
|
echo
|
||||||
|
|
25
configure.ac
25
configure.ac
|
@ -773,33 +773,14 @@ case "$host" in
|
||||||
;;
|
;;
|
||||||
*linux*)
|
*linux*)
|
||||||
APR_ADDTO([PLATFORM_CORE_LIBS], [-ldl -lcrypt -lrt])
|
APR_ADDTO([PLATFORM_CORE_LIBS], [-ldl -lcrypt -lrt])
|
||||||
if test -f /etc/os-release; then
|
systemdinit=false
|
||||||
DISTRO="$(source /etc/os-release && echo $ID$VERSION_ID)"
|
|
||||||
case "$DISTRO" in
|
|
||||||
*debian8*)
|
|
||||||
environmentfilelocation="default"
|
|
||||||
;;&
|
|
||||||
*centos7*)
|
|
||||||
environmentfilelocation="sysconfig"
|
|
||||||
;;&
|
|
||||||
*debian8*|*centos7*)
|
|
||||||
knowninit=false
|
|
||||||
if test -d /run/systemd/system; then
|
if test -d /run/systemd/system; then
|
||||||
knowninit=true
|
systemdinit=true
|
||||||
AC_SUBST(DISTRO)
|
|
||||||
AC_SUBST(rundir)
|
|
||||||
AC_SUBST(environmentfilelocation)
|
|
||||||
AC_SUBST(bindir_expanded)
|
AC_SUBST(bindir_expanded)
|
||||||
AC_CONFIG_FILES([build/startup/install_systemd.sh], [chmod +x build/startup/install_systemd.sh])
|
AC_CONFIG_FILES([build/startup/install_systemd.sh], [chmod +x build/startup/install_systemd.sh])
|
||||||
AC_CONFIG_FILES([build/startup/freeswitch.service])
|
AC_CONFIG_FILES([build/startup/freeswitch.service])
|
||||||
fi
|
fi
|
||||||
;;
|
AM_CONDITIONAL([SYSTEMD_INIT], [test x$systemdinit = xtrue])
|
||||||
*)
|
|
||||||
knowninit=false
|
|
||||||
;;
|
|
||||||
esac
|
|
||||||
fi
|
|
||||||
AM_CONDITIONAL([KNOWN_INIT], [test x$knowninit = xtrue])
|
|
||||||
;;
|
;;
|
||||||
esac
|
esac
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue