FreeBSD 最大的特点就是稳,让你难以置信的稳。提到 FreeBSD,还须要感激带我意识它的刘仕臣老师。
frpc 默认状况下会随着 shell 的退出而主动终止,而且咱们也心愿在服务器启动时可能主动启动 frpc 服务,以及在 frpc 产生谬误时,服务器可能主动重启该服务。
步骤如下:
下载 frpc
下载 frpc 并将相干的配置项写入 frpc.ini
中,而后咱们将 frpc
与frpc.ini
一并上传到 FreeBSD 服务器。其实这个地位不重要,只须要保障 frpc 可执行以及 frpc.ini 可读即可。
比方我上传到了:/usr/local/opt/frp_0.48.0_freebsd_amd64
创立启动脚本
切换到 root 用户,并创立 /etc/rc.d/frpc
文件:$ ee /etc/rc.d/frpc
,而后粘入以下内容:
#!/bin/sh
# PROVIDE: frpc
# REQUIRE: LOGIN
# KEYWORD: frpc
. /etc/rc.subr
name="frpc"
rcvar=frpc_enable
load_rc_config $name
: ${frpc_enable="NO"}
: ${frpc_user="nobody"}
: ${frpc_flags="-c /usr/local/opt/frp_0.48.0_freebsd_amd64/frpc.ini"}
daemon_pidfile="var/run/frpc_daemon.pid"
pidfile="/var/run/frpc.pid"
command="/usr/local/opt/frp_0.48.0_freebsd_amd64/frpc"
start_cmd="/usr/sbin/daemon -r -R 5 -u $frpc_user -P $daemon_pidfile -p $pidfile -t $name $command $frpc_flags"
start_postcmd="${name}_poststart"
stop_cmd="${name}_stop"
frpc_poststart()
{echo "${name}_daemon running pid `cat ${daemon_pidfile}`."
echo "${name} running pid `cat ${pidfile}`."
}
frpc_stop()
{if [ -f "$daemon_pidfile"]; then
pid=`cat $daemon_pidfile`
echo "Stopping pid ${pid}."
kill $pid
else
echo "${name} not running?"
fi
}
run_rc_command "$1"
保留后为其增加执行权限:$ chmod +x /etc/rc.d/frpc
启动脚本
最初咱们编辑 etc/rc.conf
,并向其最初一行增加:frpc_enable="YES"
。接下来便能够应用:service frpc start
来启动 frpc
了,而且当 FreeBSD 下次重启时,也会主动地启动frpc
。
参考:Frp 在 FreeBSD 上的启动与过程守护脚本