Browse Source

fix service command, eliminate all uses of killall since it might be missing

Adam Ierymenko 10 years ago
parent
commit
638ae153cc
2 changed files with 17 additions and 14 deletions
  1. 6 2
      ext/installfiles/linux/install.tmpl.sh
  2. 11 12
      ext/installfiles/linux/uninstall.sh

+ 6 - 2
ext/installfiles/linux/install.tmpl.sh

@@ -1,6 +1,6 @@
 #!/bin/bash
 #!/bin/bash
 
 
-export PATH=/bin:/usr/bin:/sbin:/usr/sbin
+export PATH=/bin:/usr/bin:/sbin:/usr/sbin:/usr/local/bin:/usr/local/sbin
 shopt -s expand_aliases
 shopt -s expand_aliases
 
 
 dryRun=0
 dryRun=0
@@ -139,7 +139,11 @@ else
 		fi
 		fi
 	fi
 	fi
 
 
-	service zerotier-one restart &
+	if [ -f /sbin/service -o -f /usr/sbin/service ]; then
+		service zerotier-one restart &
+	else
+		/etc/init.d/zerotier-one restart &
+	fi
 fi
 fi
 
 
 sleep 1
 sleep 1

+ 11 - 12
ext/installfiles/linux/uninstall.sh

@@ -23,25 +23,24 @@ if [ -e /bin/systemctl -o -e /usr/bin/systemctl -o -e /usr/local/bin/systemctl -
 	fi
 	fi
 fi
 fi
 
 
-echo
-
-echo "This will uninstall ZeroTier One, hit CTRL+C to abort."
-echo "Waiting 5 seconds..."
-sleep 5
-
 echo "Killing any running zerotier-one service..."
 echo "Killing any running zerotier-one service..."
 if [ -n "$SYSTEMDUNITDIR" -a -d "$SYSTEMDUNITDIR" ]; then
 if [ -n "$SYSTEMDUNITDIR" -a -d "$SYSTEMDUNITDIR" ]; then
 	systemctl stop zerotier-one
 	systemctl stop zerotier-one
 	systemctl disable zerotier-one
 	systemctl disable zerotier-one
 else
 else
 	if [ -f /sbin/service -o -f /usr/sbin/service -o -f /bin/service -o -f /usr/bin/service ]; then
 	if [ -f /sbin/service -o -f /usr/sbin/service -o -f /bin/service -o -f /usr/bin/service ]; then
-		service stop zerotier-one
+		service zerotier-one stop
 	fi
 	fi
 fi
 fi
+
 sleep 1
 sleep 1
-killall -q -TERM zerotier-one
-sleep 1
-killall -q -KILL zerotier-one
+if [ -f /var/lib/zerotier-one/zerotier-one.pid ]; then
+	kill -TERM `cat /var/lib/zerotier-one/zerotier-one.pid`
+	sleep 1
+fi
+if [ -f /var/lib/zerotier-one/zerotier-one.pid ]; then
+	kill -KILL `cat /var/lib/zerotier-one/zerotier-one.pid`
+fi
 
 
 if [ -f /etc/init.d/zerotier-one ]; then
 if [ -f /etc/init.d/zerotier-one ]; then
 	echo "Removing SysV init items..."
 	echo "Removing SysV init items..."
@@ -60,11 +59,11 @@ fi
 echo "Erasing binary and support files..."
 echo "Erasing binary and support files..."
 if [ -d /var/lib/zerotier-one ]; then
 if [ -d /var/lib/zerotier-one ]; then
 	cd /var/lib/zerotier-one
 	cd /var/lib/zerotier-one
-	rm -rf zerotier-one *.persist identity.public *.log *.pid *.sh updates.d networks.d iddb.d
+	rm -rf zerotier-one *.persist identity.public *.log *.pid *.sh updates.d networks.d iddb.d root-topology
 fi
 fi
 
 
 echo "Erasing anything installed into system bin directories..."
 echo "Erasing anything installed into system bin directories..."
-rm -f /usr/local/bin/zerotier-cli /usr/bin/zerotier-cli
+rm -f /usr/local/bin/zerotier-cli /usr/bin/zerotier-cli /usr/local/bin/zerotier-idtool /usr/bin/zerotier-idtool
 
 
 echo "Done."
 echo "Done."
 echo
 echo