You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
79 lines
2.0 KiB
79 lines
2.0 KiB
#!/bin/bash
|
|
cd /Users/gxwebsoft/frp/frp_0.63.0_darwin_arm64
|
|
|
|
echo "=== FRP客户端启动脚本 ==="
|
|
|
|
# 检查是否已有frpc进程运行
|
|
if pgrep -f "frpc" > /dev/null; then
|
|
echo "⚠️ 检测到frpc进程正在运行:"
|
|
ps aux | grep frpc | grep -v grep
|
|
echo ""
|
|
echo "正在停止现有进程..."
|
|
pkill -f frpc
|
|
sleep 3
|
|
|
|
# 再次检查是否还有进程
|
|
if pgrep -f "frpc" > /dev/null; then
|
|
echo "❌ 无法停止现有进程,强制终止..."
|
|
pkill -9 -f frpc
|
|
sleep 2
|
|
fi
|
|
fi
|
|
|
|
# 检查配置文件是否存在(优先使用toml格式)
|
|
CONFIG_FILE=""
|
|
if [ -f "frpc.toml" ]; then
|
|
CONFIG_FILE="frpc.toml"
|
|
elif [ -f "frpc.ini" ]; then
|
|
CONFIG_FILE="frpc.ini"
|
|
else
|
|
echo "❌ 错误:配置文件不存在(frpc.toml 或 frpc.ini)"
|
|
echo "当前目录: $(pwd)"
|
|
echo "目录内容:"
|
|
ls -la
|
|
exit 1
|
|
fi
|
|
|
|
echo "📋 配置文件检查通过,使用: $CONFIG_FILE"
|
|
|
|
# 清理旧的日志文件
|
|
if [ -f "frpc.log" ]; then
|
|
mv frpc.log frpc.log.old
|
|
fi
|
|
|
|
# 后台启动frpc客户端
|
|
echo "🚀 正在启动FRP客户端..."
|
|
nohup ./frpc -c $CONFIG_FILE > frpc.log 2>&1 &
|
|
FRP_PID=$!
|
|
|
|
# 等待启动
|
|
sleep 3
|
|
|
|
# 检查是否启动成功
|
|
if pgrep -f "frpc" > /dev/null; then
|
|
echo "✅ FRP客户端启动成功!"
|
|
echo "📊 进程信息:"
|
|
ps aux | grep frpc | grep -v grep
|
|
echo ""
|
|
echo "📄 日志文件: $(pwd)/frpc.log"
|
|
echo "🔍 查看实时日志: tail -f $(pwd)/frpc.log"
|
|
echo ""
|
|
echo "📋 最新日志内容:"
|
|
echo "----------------------------------------"
|
|
tail -10 frpc.log
|
|
echo "----------------------------------------"
|
|
else
|
|
echo "❌ FRP客户端启动失败!"
|
|
echo "📄 错误日志:"
|
|
echo "----------------------------------------"
|
|
cat frpc.log
|
|
echo "----------------------------------------"
|
|
exit 1
|
|
fi
|
|
|
|
echo ""
|
|
echo "🔧 常用管理命令:"
|
|
echo " 查看进程: ps aux | grep frpc"
|
|
echo " 停止服务: pkill -f frpc"
|
|
echo " 查看日志: tail -f $(pwd)/frpc.log"
|
|
echo " 检查端口: lsof -i | grep frp"
|