这个方法用在centos7生效
创建一个新的Systemd服务单元文件:
sudo nano /etc/systemd/system/frp.service
在打开的文件中,添加以下内容(请根据您的.sh文件和配置进行修改):
[Unit] Description=My Script #My Script这个地方可以设置为你的脚本 After=network.target [Service] ExecStart=/path/to/your/script.sh #该地址设置你的自启动命令或者脚本命令都可以 [Install] WantedBy=default.target
另外,创建FRP文档启动脚本
#!/bin/bash
pgrep frps &> /dev/null #pgrep是读取进程名为输入内容的进程号,返回到下面,&>输入到空文件
if [ $? -gt 0 ]; #$?代表上面的返回值(进程ID,当且仅当存在这个进程时才会高于0) -gt是大于号
then
echo "`date` restart" >> /etc/frplogstart.txt 2>&1 #`date`是当前时间,>>输出到log文件中作为新的一行,log文件也可以与脚本放在同一个目录下
/etc/frps -c /etc/frps.ini>/mnt/frp/log-frps.txt 2>&1 & #进程启动命令
该指令是FRPS启动指令(注意要确保运行路径)
/etc/frpc -c /etc/frpc.ini>/mnt/frp/log-frpc.txt 2>&1 & #进程启动命令
这个是客户端FRPC启动指令(注意要确保运行路径)
#调试阶段此处可以加入返回running状态的内容,去掉井号即可
#else
#echo "`date` restart"
fi
- 保存并关闭文件。
- ctrl+X
- 重新加载Systemd配置:
- sudo systemctl daemon-reload
- 启用服务,使其在系统启动时自动运行:
sudo systemctl enable my-script.service
- sudo systemctl start my-script.service
Views: 186