需要帮助来创建(或转换)Slackware 服务

需要帮助来创建(或转换)Slackware 服务

我最近转向 Slackware。我想使用 NordVPN。问题是,他们只提供 .rpm 和 .deb 软件包。但这并不重要。我刚刚提取了 .rpm 内容,程序现在运行良好。唯一困扰我的是我必须手动运行它的守护进程。我知道Slackware不使用systemd,所以尝试为它创建一个服务,或者转换它自己的systemd服务,但我失败了。如果有人能帮助我,我将不胜感激。这是系统服务:

[Unit]
Description=NordVPN Daemon
Requires=nordvpnd.socket
After=network-online.target

[Service]
ExecStart=/usr/sbin/nordvpnd
NonBlocking=true
KillMode=process
Restart=on-failure
RestartSec=5

[Install]
WantedBy=default.target

这是套接字:

[Unit]
Description=NordVPN Daemon Socket
PartOf=nordvpnd.service

[Socket]
ListenStream=/run/nordvpnd.sock
NoDelay=true

[Install]
WantedBy=sockets.target

答案1

那可能会是这样的:

#!/bin/sh
NordVPN_start(){
    if [ -x /usr/sbin/nordvpnd ] ; then
        /usr/sbin/nordvpnd
    fi
}

NordVPN_stop(){
    /bin/killall NordVPN 2>/dev/null
}

case "$1" in
'start')
  NordVPN_start
  ;;
'stop')
  NordVPN_stop
  ;;
'reload')
  NordVPN_stop
  NordVPN_start
  ;;
'restart')
  NordVPN_stop
  NordVPN_start
  ;;

*) 
  echo "usage $0 start|stop|reload|restart"
esac

相关内容