用户指南
多平台安装部署指南

多平台安装部署指南

Windows

Windows 下部署服务需要用到一系列批处理操作。

部署服务

你可以编写一个批处理脚本 (.bat) 来实现这些功能。下面是一个可以满足你要求的脚本示例:

.bat
@echo off
SETLOCAL
 
REM 定义服务名称(用户可自定义)
SET "SERVICE_NAME=RhilexService"
 
REM 获取当前脚本所在路径
SET "EXE_PATH=%~dp0rhilex.exe"
 
REM 定义服务启动命令
SET "START_CMD=%EXE_PATH% run"
 
REM 定义服务描述
SET "SERVICE_DESC=Rhilex Service"
 
:menu
echo.
echo ============================
echo 请选择操作:
echo ============================
echo 1. 安装服务
echo 2. 启动服务
echo 3. 停止服务
echo 4. 重启服务
echo 5. 卸载服务
echo 6. 退出
echo ============================
echo.
 
SET /P choice=输入选项并按回车:
 
if "%choice%"=="1" goto install
if "%choice%"=="2" goto start
if "%choice%"=="3" goto stop
if "%choice%"=="4" goto restart
if "%choice%"=="5" goto uninstall
if "%choice%"=="6" goto end
goto menu
 
:install
sc query %SERVICE_NAME% >nul 2>&1
if %errorlevel% equ 0 (
    echo 服务已存在,无法重复安装
    goto menu
)
sc create %SERVICE_NAME% binPath= "%START_CMD%" start= auto DisplayName= "%SERVICE_NAME%" ^
Description= %SERVICE_DESC%
if %errorlevel% equ 0 (
    echo 服务安装成功
) else (
    echo 服务安装失败
)
goto menu
 
:start
sc start %SERVICE_NAME%
if %errorlevel% equ 0 (
    echo 服务启动成功
) else (
    echo 服务启动失败,可能服务未安装
)
goto menu
 
:stop
sc stop %SERVICE_NAME%
if %errorlevel% equ 0 (
    echo 服务停止成功
) else (
    echo 服务停止失败,可能服务未启动或未安装
)
goto menu
 
:restart
call :stop
call :start
goto menu
 
:uninstall
sc stop %SERVICE_NAME% >nul 2>&1
sc delete %SERVICE_NAME%
if %errorlevel% equ 0 (
    echo 服务卸载成功
) else (
    echo 服务卸载失败,可能服务未安装
)
goto menu
 
:end
echo 退出程序
ENDLOCAL
exit /b

如何使用

  1. 将此代码保存为 .bat 文件,例如 manage_rhilex_service.bat
  2. rhilex.exe 和此脚本放在同一目录下。
  3. 运行该 .bat 文件,然后按照提示选择要执行的操作。

脚本说明

  • 安装服务:将 rhilex.exe 作为 Windows 服务安装,服务名为 RhilexService
  • 启动服务:启动该服务。
  • 停止服务:停止该服务。
  • 卸载服务:停止并删除该服务。

这个脚本设置了自动启动服务和添加了描述,你可以根据需要修改服务名称、描述或其他参数。

💡

推荐 Windows10 以上的系统,其他版本未经严格测试。

Ubuntu、Debian(系列)

使用 Rhilex Daemon

rhilex-daemon.sh 是 RHILEX 提供的简单守护脚本,用 rhilex-daemon.sh 可以实现基本的安装卸载。rhilex-daemon.sh 脚本需要以 root 权限执行,或者使用 sudo

# 安装
sudo ./rhilex-daemon.sh install
# 启动
sudo ./rhilex-daemon.sh start
# 停止
sudo ./rhilex-daemon.sh stop
# 重启
sudo ./rhilex-daemon.sh restart
# 查看状态
sudo ./rhilex-daemon.sh status

设置开机启动

crontab 是 linux 下一个调度管理器,比较普遍,同时其具备开机执行脚本的功能,下面是 crontab 做开机自启动管理示例。当然如果你对其他的熟悉也可以用,比如 supervisor 之类。

# 打开crontab
sudo crontab -e
# 输入
@reboot (/etc/init.d/rhilex.service start > /var/log/rhilex.log 2>&1)

然后保存 crontab 文件,重启设备即可实现开机自启动。 除此之外还可以选择使用 System Service 脚本。

💡

我们推荐用 rhilex-daemon.sh 来管理。

使用 Linux Systemd

如果你需要用 Systemd 守护进程,可以参考下面的步骤。

  1. 创建服务文件:首先,创建一个服务描述文件。例如,创建一个名为 rhilex.service 的文件在 /etc/systemd/system/ 目录下。
  2. 编辑服务文件:使用文本编辑器打开 rhilex.service 文件,并添加以下内容:
rhilex.service
[Unit]
Description=Rhilex Service
After=network.target
[Service]
ExecStart=[你的程序路径]/rhilex.exe run -config [你的配置文件路径]/rhilex.ini
Restart=on-failure
RestartSec=30
[Install]
WantedBy=multi-user.target

请确保将[你的程序路径][你的配置文件路径]替换成实际的路径。

  1. 启动服务:使用以下命令来启动服务:
systemctl start rhilex.service
  1. 设置服务开机自启:使用以下命令来设置服务开机自启:
systemctl enable rhilex.service
  1. 检查服务状态:使用以下命令来检查服务状态:
systemctl status rhilex.service

卸载服务

  1. 停止服务:使用以下命令来停止服务:
systemctl stop rhilex.service
  1. 禁用服务开机自启:使用以下命令来禁用服务开机自启:
systemctl disable rhilex.service
  1. 删除服务文件:删除之前创建的服务描述文件:
rm /etc/systemd/system/rhilex.service
  1. 重新加载 systemd:运行以下命令来重新加载 systemd 守护进程:
systemctl daemon-reload

请注意,在执行这些操作时确保具有相应的权限,因为这些操作会影响到系统的服务管理。

⚠️

如果使用 Linux Systemd 脚本,会影响到在线升级固件功能。请注意这个细节。

OpenWrt 安装

大部分 openwrt 系统都把 Systemd 和其他一些系统守护进程裁剪了,所以在 openwrt 下推荐使用 Rhilex Daemon 脚本进行安装。细节可参考 Ubuntu 系统的操作文档

命令行工具

RHILEX-CLI 是 RHILEX 命令行下的客户端工具,帮助我们调试和管理 RHILEX。

下载安装

下载地址:https://github.com/hootrhino/rhilex-cli/releases; (opens in a new tab) 根据自己的系统版本选择符合要求的包。

download

使用文档

  • 查看系统参数
rhilexc system-info -host 127.0.0.1
  • 查看输入资源
rhilexc inend-list -host 127.0.0.1
  • 查看输出资源
rhilexc outend-list -host 127.0.0.1
  • 创建设备
rhilexc device-create --config '[config]' -host 127.0.0.1
  • 查看设备列表
rhilexc device-list -host 127.0.0.1
  • 查看规则列表
rhilexc rules-list -host 127.0.0.1
  • 创建输入资源
rhilexc inend-create --config '[config]' -host 127.0.0.1
  • 创建输出资源
rhilexc outend-create --config  '[config]' -host 127.0.0.1
  • 创建规则脚本
rhilexc rules-create --config  '[config]' -host 127.0.0.1
  • 创建用户
rhilexc user-create --u [username] --p [password] -host 127.0.0.1
  • 删除用户
rhilexc user-delete --u [username] -host 127.0.0.1

使用示例

获取用户列表:

rhilexc user-list -host 127.0.0.1 |jq

输出结果:

JSON
{
  "code": 200,
  "msg": "Success",
  "data": [
    {
      "role": "admin",
      "username": "admin",
      "description": "admin"
    },
    {
      "role": "admin",
      "username": "www",
      "description": ""
    }
  ]
}
💡

jq 是一个 JSON 处理库( https://jqlang.github.io/jq/ (opens in a new tab) ),需要提前安装。

© 2023-2025 RHILEX Technologies Inc. All rights reserved.