本脚本适用于frp4.9。frp5.0以上的配置文件后缀有变化,但是都可以通过先确定frp启动的命令,然后将命令放置在ExecStart=的右边来实现开机自启。
这里变量是获取当前sh脚本运行目录,请将以下sh脚本放在frp的安装目录与frp相关命令同级目录。如果你的frp启动命令不一样,请修改 "ExecStart="后面的内容,它的作用是开机执行等号右边的命令。
$(cd $(dirname $0); pwd)
sh脚本内容:
bash
#!/bin/bash
#新建系统初始化服务文件
sudo touch /lib/systemd/system/frpc.service
#写入初始化脚本代码
echo "[Unit]
Description=Frp Client Service
After=network.target
[Service]
Type=simple
User=nobody
Restart=on-failure
RestartSec=5s
ExecStart="$(cd $(dirname $0); pwd)"/frpc -c "$(cd $(dirname $0); pwd)"/frpc.ini
[Install]
WantedBy=multi-user.target" > /lib/systemd/system/frpc.service
#服务文件授权
sudo chmod 777 /lib/systemd/system/frpc.service
#设置开机自启
sudo systemctl enable frpc
#刷新服务列表:
sudo systemctl daemon-reload
运行以上sh脚本后,脚本会将frpc -c frpc.ini命令设为开机自启。
frps服务端的只需将脚本内的frpc改为frps即可。
亲测可用,运行不成功请留言。