mirror of
https://github.com/lwch/natpass.git
synced 2024-04-21 12:41:54 +00:00
修改打包程序
This commit is contained in:
@@ -87,20 +87,21 @@ server端配置(10.0.1.1):
|
||||
- 建议在server端设置较长的超时时间
|
||||
- 建议在client端设置较短的超时时间
|
||||
|
||||
## linux部署
|
||||
## 部署
|
||||
|
||||
1. 将init.d/np-cli和init.d/np-svr拷贝至/etc/init.d目录
|
||||
2. 创建/opt/natpass和对应目录
|
||||
1. [下载](https://github.com/lwch/natpass/releases)并解压到任意目录
|
||||
2. 修改配置文件
|
||||
3. 注册服务
|
||||
|
||||
sudo mkdir -p /opt/natpass/bin /opt/natpass/conf
|
||||
3. 将编译出的二进制文件拷贝至/opt/natpass/bin目录
|
||||
4. 将配置文件拷贝至/opt/natpass/conf目录,并修改对应参数
|
||||
5. 设置开机启动项
|
||||
sudo ./np-svr -conf <配置文件路径> -action install
|
||||
或
|
||||
sudo ./np-cli -conf <配置文件路径> -action install
|
||||
4. 设置开机启动项
|
||||
|
||||
sudo systemctl enable np-svr
|
||||
或
|
||||
sudo systemctl enable np-cli
|
||||
6. 启动对应服务
|
||||
5. 启动对应服务
|
||||
|
||||
sudo /etc/init.d/np-svr start
|
||||
或
|
||||
|
||||
@@ -76,13 +76,6 @@ func build(t target) {
|
||||
runtime.Assert(err)
|
||||
err = copyFile("CHANGELOG.md", path.Join(buildDir, "CHANGELOG.md"))
|
||||
runtime.Assert(err)
|
||||
if t.os != "windows" && t.os != "android" && t.os != "ios" {
|
||||
runtime.Assert(os.MkdirAll(path.Join(buildDir, "init.d"), 0755))
|
||||
err = copyFile(path.Join("init.d", "np-cli"), path.Join(buildDir, "init.d", "np-cli"))
|
||||
runtime.Assert(err)
|
||||
err = copyFile(path.Join("init.d", "np-svr"), path.Join(buildDir, "init.d", "np-svr"))
|
||||
runtime.Assert(err)
|
||||
}
|
||||
|
||||
ldflags := "-X 'main._GIT_HASH=" + gitHash() + "' " +
|
||||
"-X 'main._GIT_REVERSION=" + gitReversion() + "' " +
|
||||
|
||||
-115
@@ -1,115 +0,0 @@
|
||||
#!/bin/sh
|
||||
#
|
||||
# chkconfig: 2345 12 88
|
||||
# description: natpass client
|
||||
### BEGIN INIT INFO
|
||||
# Provides: lwch748@gmail.com
|
||||
# Required-Start: $network
|
||||
# Required-Stop:
|
||||
# Default-Start: 2 3 4 5
|
||||
# Default-Stop: 0 1 6
|
||||
# Short-Description: np-cli
|
||||
# Description: natpass client
|
||||
### END INIT INFO
|
||||
|
||||
NAME=np-cli
|
||||
WORKDIR=/opt/natpass
|
||||
DAEMON=/opt/natpass/bin/$NAME
|
||||
CONFIG=/opt/natpass/conf/client.yaml
|
||||
PIDFILE=/var/run/$NAME.pid
|
||||
|
||||
wait_for_pid () {
|
||||
try=0
|
||||
while test $try -lt 35 ; do
|
||||
case "$1" in
|
||||
'created')
|
||||
if [ -f "$2" ] ; then
|
||||
try=''
|
||||
break
|
||||
fi
|
||||
;;
|
||||
'removed')
|
||||
if [ ! -f "$2" ] ; then
|
||||
try=''
|
||||
break
|
||||
fi
|
||||
;;
|
||||
esac
|
||||
|
||||
echo -n .
|
||||
try=`expr $try + 1`
|
||||
sleep 1
|
||||
done
|
||||
}
|
||||
|
||||
case "$1" in
|
||||
start)
|
||||
echo -n "Starting $NAME "
|
||||
cd $WORKDIR
|
||||
nohup $DAEMON -d -pid $PIDFILE -u nobody -conf $CONFIG > /dev/null 2>&1 &
|
||||
if [ "$?" != 0 ] ; then
|
||||
echo " failed"
|
||||
exit 1
|
||||
fi
|
||||
wait_for_pid created $PIDFILE
|
||||
if [ -n "$try" ] ; then
|
||||
echo " failed"
|
||||
exit 1
|
||||
else
|
||||
echo " done"
|
||||
fi
|
||||
;;
|
||||
stop)
|
||||
echo -n "Gracefully shutting down $NAME "
|
||||
if [ ! -r $PIDFILE ] ; then
|
||||
echo "warning, no pid file found - $NAME is not running ?"
|
||||
exit 1
|
||||
fi
|
||||
kill -QUIT `cat $PIDFILE`
|
||||
wait_for_pid removed $PIDFILE
|
||||
if [ -n "$try" ] ; then
|
||||
echo " failed. Use force-quit"
|
||||
exit 1
|
||||
else
|
||||
echo " done"
|
||||
fi
|
||||
;;
|
||||
status)
|
||||
if [ ! -r $PIDFILE ] ; then
|
||||
echo "$NAME is stopped"
|
||||
exit 0
|
||||
fi
|
||||
|
||||
PID=`cat $PIDFILE`
|
||||
if ps -p $PID | grep -q $PID; then
|
||||
echo "$NAME (pid $PID) is running..."
|
||||
else
|
||||
echo "$NAME dead but pid file exists"
|
||||
fi
|
||||
;;
|
||||
force-quit)
|
||||
echo -n "Terminating $NAME "
|
||||
if [ ! -r $PIDFILE ] ; then
|
||||
echo "warning, no pid file found - $NAME is not running ?"
|
||||
exit 1
|
||||
fi
|
||||
kill -TERM `cat $PIDFILE`
|
||||
wait_for_pid removed $PIDFILE
|
||||
if [ -n "$try" ] ; then
|
||||
echo " failed"
|
||||
exit 1
|
||||
else
|
||||
echo " done"
|
||||
fi
|
||||
;;
|
||||
restart)
|
||||
$0 stop
|
||||
$0 start
|
||||
;;
|
||||
*)
|
||||
echo "Usage: $0 {start|stop|status|force-quit|restart}"
|
||||
exit 1
|
||||
;;
|
||||
esac
|
||||
|
||||
exit $?
|
||||
-115
@@ -1,115 +0,0 @@
|
||||
#!/bin/sh
|
||||
#
|
||||
# chkconfig: 2345 12 88
|
||||
# description: natpass server
|
||||
### BEGIN INIT INFO
|
||||
# Provides: lwch748@gmail.com
|
||||
# Required-Start: $network
|
||||
# Required-Stop:
|
||||
# Default-Start: 2 3 4 5
|
||||
# Default-Stop: 0 1 6
|
||||
# Short-Description: np-svr
|
||||
# Description: natpass server
|
||||
### END INIT INFO
|
||||
|
||||
NAME=np-svr
|
||||
WORKDIR=/opt/natpass
|
||||
DAEMON=/opt/natpass/bin/$NAME
|
||||
CONFIG=/opt/natpass/conf/server.yaml
|
||||
PIDFILE=/var/run/$NAME.pid
|
||||
|
||||
wait_for_pid () {
|
||||
try=0
|
||||
while test $try -lt 35 ; do
|
||||
case "$1" in
|
||||
'created')
|
||||
if [ -f "$2" ] ; then
|
||||
try=''
|
||||
break
|
||||
fi
|
||||
;;
|
||||
'removed')
|
||||
if [ ! -f "$2" ] ; then
|
||||
try=''
|
||||
break
|
||||
fi
|
||||
;;
|
||||
esac
|
||||
|
||||
echo -n .
|
||||
try=`expr $try + 1`
|
||||
sleep 1
|
||||
done
|
||||
}
|
||||
|
||||
case "$1" in
|
||||
start)
|
||||
echo -n "Starting $NAME "
|
||||
cd $WORKDIR
|
||||
nohup $DAEMON -d -pid $PIDFILE -u nobody -conf $CONFIG > /dev/null 2>&1 &
|
||||
if [ "$?" != 0 ] ; then
|
||||
echo " failed"
|
||||
exit 1
|
||||
fi
|
||||
wait_for_pid created $PIDFILE
|
||||
if [ -n "$try" ] ; then
|
||||
echo " failed"
|
||||
exit 1
|
||||
else
|
||||
echo " done"
|
||||
fi
|
||||
;;
|
||||
stop)
|
||||
echo -n "Gracefully shutting down $NAME "
|
||||
if [ ! -r $PIDFILE ] ; then
|
||||
echo "warning, no pid file found - $NAME is not running ?"
|
||||
exit 1
|
||||
fi
|
||||
kill -QUIT `cat $PIDFILE`
|
||||
wait_for_pid removed $PIDFILE
|
||||
if [ -n "$try" ] ; then
|
||||
echo " failed. Use force-quit"
|
||||
exit 1
|
||||
else
|
||||
echo " done"
|
||||
fi
|
||||
;;
|
||||
status)
|
||||
if [ ! -r $PIDFILE ] ; then
|
||||
echo "$NAME is stopped"
|
||||
exit 0
|
||||
fi
|
||||
|
||||
PID=`cat $PIDFILE`
|
||||
if ps -p $PID | grep -q $PID; then
|
||||
echo "$NAME (pid $PID) is running..."
|
||||
else
|
||||
echo "$NAME dead but pid file exists"
|
||||
fi
|
||||
;;
|
||||
force-quit)
|
||||
echo -n "Terminating $NAME "
|
||||
if [ ! -r $PIDFILE ] ; then
|
||||
echo "warning, no pid file found - $NAME is not running ?"
|
||||
exit 1
|
||||
fi
|
||||
kill -TERM `cat $PIDFILE`
|
||||
wait_for_pid removed $PIDFILE
|
||||
if [ -n "$try" ] ; then
|
||||
echo " failed"
|
||||
exit 1
|
||||
else
|
||||
echo " done"
|
||||
fi
|
||||
;;
|
||||
restart)
|
||||
$0 stop
|
||||
$0 start
|
||||
;;
|
||||
*)
|
||||
echo "Usage: $0 {start|stop|status|force-quit|restart}"
|
||||
exit 1
|
||||
;;
|
||||
esac
|
||||
|
||||
exit $?
|
||||
Reference in New Issue
Block a user