群晖存储 · 2025年9月3日 0

群晖使用 Lucky 插件绑定低位端口失败解决办法

安装 Lucky 插件后,不能绑定 1023 以下端口,此时需要使用 root 权限运行插件。

安装权限管理器后,勾选 Lucky 。

cd /var/packages/Lucky/scripts/
mv start-stop-status real-start-stop-status

nano real-start-stop-status

# 对应内容修改为下面的
case $1 in
    start)
        if [ "${SYNOPKG_PKGNAME}" != "Lucky" ]; then
              exit 1
        fi
        if [[ `id -u` -eq 0 ]]; then
            echo -e "⚠️本套件将以root权限运行!This package will run with root privileges!" | tee -a $SYNOPKG_TEMP_LOGFILE
        else
            echo -e "需要root权限启动:请安装SimplePermissionManager(授权管理器)套件并激活它。<br>Need root:Please install SimplePermissionManager package and activate it.<br><br>或SSH修复权限,仅对本次安装有效(Or SSH repair permission,valid only now):<br>sudo sed -i 's/package/root/g' /var/packages/Lucky/conf/privilege" | tee -a $SYNOPKG_TEMP_LOGFILE
            exit 0
        fi
        if daemon_status; then
            echo "${DNAME} is already running" >> ${LOG_FILE}
            exit 0
        else
            echo "Starting ${DNAME} ..." >> ${LOG_FILE}
            start_daemon
            exit $?
        fi
        ;;
# 其余的保留

nano start-stop-status

#!/bin/bash

# 定义实际执行的脚本路径
REAL_SCRIPT="/var/packages/${SYNOPKG_PKGNAME}/scripts/real-start-stop-status"

if [ ! -d "/var/packages/SimplePermissionManager" ] || [ ! -e /usr/local/bin/spm-exec ] || [ "$(stat -c "%U %G %a" /usr/local/bin/spm-exec 2>/dev/null)" != "root root 6755" ]; then
    # 如果SimplePermissionManager文件夹不存在,spm-exec不存在,或者spm-exec权限不正确,执行REAL_SCRIPT脚本
    $REAL_SCRIPT $@
    exit $?
fi

# 如果所有检查都通过,使用spm-exec提权执行real-start-stop-status脚本,并传递所有参数
/usr/local/bin/spm-exec $REAL_SCRIPT $@

# 获取执行结果,并退出
exit $?

然后重新开关插件。

参考教程:https://imnks.com/10514.html