Files
CoreInject/res/install_daemon.sh

54 lines
1.5 KiB
Bash
Raw Normal View History

#!/bin/bash
# Hayaku HTTP守护进程安装脚本
set -e
echo "安装Hayaku HTTP守护进程..."
# 检查是否以root权限运行
if [ "$EUID" -ne 0 ]; then
echo "请使用sudo运行此脚本"
exit 1
fi
# 获取脚本所在目录
SCRIPT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)"
BINARY_NAME="InjectLib"
PLIST_NAME="com.qiuchenly.hayaku.daemon.plist"
# 检查二进制文件是否存在(在脚本同级目录)
if [ ! -f "$SCRIPT_DIR/../InjectLib" ]; then
echo "错误: 找不到 $BINARY_NAME 文件"
echo "请先编译项目"
exit 1
fi
# 软连接tool和config.json到二进制同级目录
ln -fs "$SCRIPT_DIR/../tool" "/usr/local/bin/tool"
ln -fs "$SCRIPT_DIR/../config.json" "/usr/local/bin/config.json"
ln -fs "$SCRIPT_DIR/../frontend" "/usr/local/bin/frontend"
# 复制二进制文件到系统目录
echo "复制二进制文件到 /usr/local/bin/"
cp "$SCRIPT_DIR/../InjectLib" "/usr/local/bin/"
chmod +x "/usr/local/bin/$BINARY_NAME"
# 复制plist文件到LaunchDaemons目录
echo "安装LaunchDaemon配置..."
cp "$SCRIPT_DIR/$PLIST_NAME" "/Library/LaunchDaemons/"
chmod 644 "/Library/LaunchDaemons/$PLIST_NAME"
# 加载并启动服务
echo "启动服务..."
launchctl load "/Library/LaunchDaemons/$PLIST_NAME"
launchctl start "com.qiuchenly.hayaku.daemon"
echo "安装完成!"
echo "服务状态:"
launchctl list | grep com.qiuchenly.hayaku.daemon || echo "服务未运行"
echo ""
echo "访问 http://localhost:15200 查看应用商店"
echo "查看日志: tail -f /var/log/hayaku_daemon*"