更多教程与虚拟机导入包请到https://mi-d.cn/1053获取

教程转自大鹏老师非原创,不过大鹏老师的教程比较简单没说清楚怎么操作,我补充点内容。原贴地址https://www.bilibili.com/read/cv26536120/?spm_id_from=333.999.0.0

有要转正上车的可以加大鹏老师的微信,有55折扣。

提供两个教程,一个是已经出现问题的解决教程,一个是防止以后出现问题解决教程。


教程开始

当已经出现问题的解决方法

出现问题时立即解决,如果你没有打开ssh服务,那只能去NAS执行命令或直接reboot重启主机,当然如果没接屏幕之类的也可以直接按电源键等待关机之后再按电源键开机。

1️⃣ 停止 Nginx 服务
打开 SSH 或者直接使用连接到服务器的键盘/显示器。

输入以下命令以确保完全停止 nginx:

/etc/rc.d/rc.nginx stop

2️⃣ 检查 Nginx 进程
输入以下命令来检查是否还有 nginx 进程在运行:

ps -ef | grep "nginx" | grep -v "grep"

3️⃣ 终止 Nginx 进程(如有必要) ️
如果第二步的命令返回了任何内容,执行以下命令来终止 nginx:

/etc/rc.d/rc.nginx term

再次执行第二步的命令以确认 nginx 已经被终止。

4️⃣ 重新启动 Nginx 服务
输入以下命令来重新启动 nginx:

/etc/rc.d/rc.nginx start

通过守护脚本一劳永逸

  1. UserScript脚本内容,脚本使用教程请往下拉
    脚本实际就是一个守护程序,url检测连通性,不通就执行重启nginx。原理很简单但是脚本也很实用。轻松解决问题
    #!/bin/bash

    # WebUI 的 URL替换成Unraid管理地址,如果你是固定ip的话也可以把tank6124替换成UNRAID的ip地址
    WEBUI_URL="http://tank6124/"

    # 超时时间(秒)
    TIMEOUT=10

    # 检查 WebUI 是否响应
    check_webui() {
    curl --max-time $TIMEOUT $WEBUI_URL > /dev/null 2>&1
    return $?
    }

    # 重启 nginx
    restart_nginx() {
    # 停止 nginx 服务
    /etc/rc.d/rc.nginx stop

    # 检查 nginx 进程
    if ps -ef | grep "nginx" | grep -v "grep" > /dev/null; then
    # 终止 nginx 进程
    /etc/rc.d/rc.nginx term
    fi

    # 确保 nginx 已经被终止
    while ps -ef | grep "nginx" | grep -v "grep" > /dev/null; do
    sleep 1
    done

    # 重新启动 nginx 服务
    /etc/rc.d/rc.nginx start
    }

    # 主循环
    while true; do
    # 检查 WebUI
    check_webui
    if [ $? -ne 0 ]; then
    echo "WebUI seems to be unresponsive. Restarting nginx..."
    restart_nginx
    echo "nginx restarted."
    else
    echo "WebUI is responsive."
    fi

    # 等待一段时间再次检查
    sleep 60
    done
  2. 首先需要先到应用 安装  User Scripts ,并到插件中 点击User Scripts图标
  3. 创建脚本
  4. 输入名称   然后点OK
  5. 点击  螺母图标,并在弹出菜单,选中EDIT SCRIPT
  6. 如下图所示操作,URL使用主机名可以无视ip变化
  7. 设置定时运行,点击应用。教程至此结束

 

2 Thoughts on “UNRAID WEB UI守护脚本 临时解决6.12.x WEB 动不动崩溃的问题”

发表回复

您的电子邮箱地址不会被公开。 必填项已用 * 标注

此站点使用 Akismet 来减少垃圾评论。了解我们如何处理您的评论数据