说明:本来已经在FRP的服务端及客户端自启动配置文章中,对于客户端自启动已经进行了配置,但是发现一些问题。因此,建议在群晖中使用以下方法进行服务自动配置。
一、原方法中出现的一些问题现象
在使用群晖控制面板中自带的计划任务 - 新增 - 计划的任务 - 用户自定义脚本,该任务计划是周期性执行的,不适合只需一次启动的服务。
使用该用户自定义脚本会出现以下现状:
root@Mydsm:/frp#
root@Mydsm:/frp# ps -ef | grep frpc
root 9242 1 0 Jan20 ? 00:01:25 /frp/frpc -c /frp/frpc.ini
root 10270 1 0 Jan19 ? 00:02:01 /frp/frpc -c /frp/frpc.ini
root 11456 1 0 Jan18 ? 00:02:36 /frp/frpc -c /frp/frpc.ini
root 12666 1 0 Jan17 ? 00:03:01 /frp/frpc -c /frp/frpc.ini
root 14155 1 0 Jan21 ? 00:00:56 /frp/frpc -c /frp/frpc.ini
root 14205 1 0 Jan16 ? 00:03:39 /frp/frpc -c /frp/frpc.ini
root 14987 1 0 Jan12 ? 00:05:43 /frp/frpc -c /frp/frpc.ini
root 15363 1 0 Jan15 ? 00:04:05 /frp/frpc -c /frp/frpc.ini
root 16686 1 0 Jan11 ? 00:06:11 /frp/frpc -c /frp/frpc.ini
root 17124 1 0 Jan14 ? 00:04:44 /frp/frpc -c /frp/frpc.ini
root 18375 1 0 Jan10 ? 00:06:43 /frp/frpc -c /frp/frpc.ini
root 18533 1 0 Jan13 ? 00:05:12 /frp/frpc -c /frp/frpc.ini
root 18892 1 0 00:00 ? 00:00:26 /frp/frpc -c /frp/frpc.ini
root 20427 1 0 Jan09 ? 00:07:11 /frp/frpc -c /frp/frpc.ini
root 22350 1 0 Jan08 ? 00:07:43 /frp/frpc -c /frp/frpc.ini
root 24526 1 0 Jan07 ? 00:07:55 /frp/frpc -c /frp/frpc.ini
root 25081 1 0 20:13 ? 00:00:00 /frp/frpc -c /frp/frpc.ini
root 25246 23803 0 20:13 pts/16 00:00:00 grep --color=auto frpc`
二、建议使用的方法
1、打开群晖的SSH连接功能
控制面板 - 终端机和SNMP - 启动 SSH功能
2、使用putty或者CRT等工具连接至群晖服务器
root@Mydsm:cd /frp #进入自己定义的目录,这个目录是我自己建立的
root@Mydsm:/frp# ls
frpc frpc.ini nohup.out
root@Mydsm:/frp# touch frpc.sh #建立一个frpc.ini的文件
root@Mydsm:/frp# echo 'nohup /frp/frpc -c /frp/frpc.ini > /dev/null 2>&1 &' > frpc.sh #将启动脚本写入到frpc.sh文件
root@Mydsm:/frp# chmod 755 frpc.sh #授予frpc.sh文件可执行权限
root@Mydsm:/frp# ls -l
total 9668
-rwxr-xr-x 1 root root 9887744 Dec 19 23:03 frpc
-rwxr-xr-x 1 root root 262 Jan 22 20:09 frpc.ini
-rwxr-xr-x 1 root root 53 Jan 22 20:21 frpc.sh
-rw------- 1 root root 2014 Jan 1 22:42 nohup.out
3、在群晖控制面板 - 计划任务中新增任务计划
打开 控制面板 - 计划任务 - 新增 - 触发的任务 - 用户自定义脚本 - 常规选项卡保持默认 - 任务设置选项卡 - 用户自定义脚本中 输入
/frp/frpc.sh
保存该计划任务,并选中该任务 - 运行 一次。这样,frpc客户端只会在群晖开机或者重启后启动一次。