6 changed files with 22 additions and 119 deletions
@ -0,0 +1,14 @@ |
|||||||
|
description "ZeroTier One upstart startup script" |
||||||
|
|
||||||
|
author "Adam Ierymenko <adam.ierymenko@zerotier.com>" |
||||||
|
|
||||||
|
start on (local-filesystems and net-device-up IFACE!=lo) |
||||||
|
stop on runlevel [!2345] |
||||||
|
|
||||||
|
respawn |
||||||
|
respawn limit 2 300 |
||||||
|
|
||||||
|
#pre-start script |
||||||
|
#end script |
||||||
|
|
||||||
|
exec /usr/sbin/zerotier-one |
||||||
@ -1,113 +0,0 @@ |
|||||||
#!/bin/sh |
|
||||||
# |
|
||||||
# zerotier-one Virtual distributed Ethernet service |
|
||||||
# |
|
||||||
# chkconfig: 2345 11 89 |
|
||||||
# description: ZeroTier One provides public and private distributed ethernet \ |
|
||||||
# networks. See https://www.zerotier.com/ for more information. |
|
||||||
|
|
||||||
### BEGIN INIT INFO |
|
||||||
# Provides: zerotier-one |
|
||||||
# Required-Start: $local_fs $network |
|
||||||
# Required-Stop: $local_fs |
|
||||||
# Default-Start: 2 3 4 5 |
|
||||||
# Default-Stop: 0 1 6 |
|
||||||
# Short-Description: Start ZeroTier One |
|
||||||
# Description: ZeroTier One provides public and private distributed ethernet \ |
|
||||||
# networks. See https://www.zerotier.com/ for more information. |
|
||||||
### END INIT INFO |
|
||||||
|
|
||||||
# |
|
||||||
# This script is written to avoid distro-specific dependencies, so it does not |
|
||||||
# use the rc bash script libraries found on some systems. It should work on |
|
||||||
# just about anything. |
|
||||||
# |
|
||||||
|
|
||||||
zthome=/var/lib/zerotier-one |
|
||||||
|
|
||||||
# Add $zthome to path so we can invoke zerotier-one naked, makes it look |
|
||||||
# better in a ps listing. |
|
||||||
export PATH=/bin:/usr/bin:/sbin:/usr/sbin:$zthome |
|
||||||
|
|
||||||
if [ "`id -u`" -ne 0 ]; then |
|
||||||
echo "Init script must be called as root." |
|
||||||
exit 4 |
|
||||||
fi |
|
||||||
|
|
||||||
if [ ! -f "$zthome/zerotier-one" ]; then |
|
||||||
echo "ZeroTier One is not installed in $zthome." |
|
||||||
exit 5 |
|
||||||
fi |
|
||||||
|
|
||||||
pid=0 |
|
||||||
if [ -f "$zthome/zerotier-one.pid" ]; then |
|
||||||
pid=`cat $zthome/zerotier-one.pid` |
|
||||||
fi |
|
||||||
|
|
||||||
running=0 |
|
||||||
if [ "$pid" -gt 0 ]; then |
|
||||||
exepath=`readlink /proc/$pid/exe 2>/dev/null | grep zerotier-one` |
|
||||||
if [ -n "$exepath" ]; then |
|
||||||
running=1 |
|
||||||
fi |
|
||||||
fi |
|
||||||
|
|
||||||
case "$1" in |
|
||||||
start) |
|
||||||
if [ $running -gt 0 ]; then |
|
||||||
echo "ZeroTier One already running." |
|
||||||
exit 0 |
|
||||||
fi |
|
||||||
echo "Starting ZeroTier One..." |
|
||||||
zerotier-one -d |
|
||||||
;; |
|
||||||
stop) |
|
||||||
if [ $running -gt 0 ]; then |
|
||||||
echo "Stopping ZeroTier One..." |
|
||||||
kill -TERM $pid |
|
||||||
sleep 0.25 |
|
||||||
if [ -f "$zthome/zerotier-one.pid" ]; then |
|
||||||
sleep 0.5 |
|
||||||
fi |
|
||||||
if [ -f "$zthome/zerotier-one.pid" ]; then |
|
||||||
sleep 1 |
|
||||||
fi |
|
||||||
if [ -f "$zthome/zerotier-one.pid" ]; then |
|
||||||
kill -KILL $pid >>/dev/null 2>&1 |
|
||||||
rm -f "$zthome/zerotier-one.pid" |
|
||||||
fi |
|
||||||
else |
|
||||||
echo "ZeroTier One is not running." |
|
||||||
fi |
|
||||||
;; |
|
||||||
restart|reload|force-reload|condrestart|try-restart) |
|
||||||
echo "Restarting ZeroTier One..." |
|
||||||
if [ $running -gt 0 ]; then |
|
||||||
kill -TERM $pid >>/dev/null 2>&1 |
|
||||||
fi |
|
||||||
sleep 0.25 |
|
||||||
if [ -f "$zthome/zerotier-one.pid" ]; then |
|
||||||
sleep 0.5 |
|
||||||
fi |
|
||||||
if [ -f "$zthome/zerotier-one.pid" ]; then |
|
||||||
sleep 1 |
|
||||||
fi |
|
||||||
if [ -f "$zthome/zerotier-one.pid" ]; then |
|
||||||
kill -KILL $pid >>/dev/null 2>&1 |
|
||||||
rm -f "$zthome/zerotier-one.pid" |
|
||||||
fi |
|
||||||
zerotier-one -d |
|
||||||
;; |
|
||||||
status) |
|
||||||
if [ $running -gt 0 ]; then |
|
||||||
exit 0 |
|
||||||
else |
|
||||||
exit 3 |
|
||||||
fi |
|
||||||
;; |
|
||||||
*) |
|
||||||
echo $"Usage: $0 {start|stop|status|restart|condrestart|try-restart|reload|force-reload}" |
|
||||||
exit 2 |
|
||||||
esac |
|
||||||
|
|
||||||
exit 0 |
|
||||||
Loading…
Reference in new issue