script day.log

大学生がなんとなく始めた、趣味やら生活のことを記録していく。

SoftetherVPNのスタートアップスクリプトについて

公式では以下のように記述があります。

vpnserver をデーモンプロセスとして Linux に登録するには、
下記のような「スタートアップスクリプト」を /etc/init.d/vpnserver 
という名前で作成してください

また、紹介されているスクリプトが次のようになります。

#!/bin/sh
# chkconfig: 2345 99 01
# description: SoftEther VPN Server
DAEMON=/usr/local/vpnserver/vpnserver
LOCK=/var/lock/subsys/vpnserver
test -x $DAEMON || exit 0
case "$1" in
start)
$DAEMON start
touch $LOCK
;;
stop)
$DAEMON stop
rm $LOCK
;;
restart)
$DAEMON stop
sleep 3
$DAEMON start
;;
*)
echo "Usage: $0 {start|stop|restart}"
exit 1
esac
exit 0

しかし、現在使用しているDebian9ではchkconfigは無く、
update-rc.dも非推奨ですので、insservを使用します。
書き換えたスクリプトが次になります。

#!/bin/sh
### BEGIN INIT INFO
# Provides:          vpnserver
# Required-Start:    $local_fs $network
# Required-Stop:     $local_fs $network
# Default-Start:     2 3 4 5
# Default-Stop:      0 1 6
# Short-Description: SoftEther VPN Server
# Description:       SoftEther VPN Server
### END INIT INFO

DAEMON=/usr/local/vpnserver/vpnserver
LOCK=/var/lock/vpnserver

test -x $DAEMON || exit 0

case "$1" in
  start)
        $DAEMON start
        touch $LOCK
        ;;
  stop)
        $DAEMON stop
        rm $LOCK
        ;;
  restart)
        $DAEMON stop
        sleep 3
        $DAEMON start
        ;;
  *)
        echo "Usage: $0 {start|stop|restart}"
        exit 1
esac

exit 0
EOT

そして、次のコマンドを実行します。

insserv vpnserver

これでスタートアップスクリプトに登録できました。

SoftetherVPN関連

makose3p1229.hatenablog.com