From 853e6c09e1fe29fff51df81288e12fbd07ad4a22 Mon Sep 17 00:00:00 2001 From: hotyue <52734432+hotyue@users.noreply.github.com> Date: Fri, 24 Apr 2026 09:44:29 +0000 Subject: [PATCH] =?UTF-8?q?fix(install):=20=E4=BF=AE=E5=A4=8D=20Alpine=20L?= =?UTF-8?q?inux=20=E4=B8=8B=20dcron=20=E4=BE=9D=E8=B5=96=E7=BC=BA=E5=A4=B1?= =?UTF-8?q?=E5=AF=BC=E8=87=B4=20openssl=20=E9=93=BE=E5=BC=8F=E9=9D=99?= =?UTF-8?q?=E9=BB=98=E5=AE=89=E8=A3=85=E5=A4=B1=E8=B4=A5=E7=9A=84=E6=BC=8F?= =?UTF-8?q?=E6=B4=9E?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- core/install.sh | 5 +++-- master/install_master.sh | 5 +++-- 2 files changed, 6 insertions(+), 4 deletions(-) diff --git a/core/install.sh b/core/install.sh index 7697a8f..063e2fb 100755 --- a/core/install.sh +++ b/core/install.sh @@ -73,7 +73,8 @@ if [ ${#MISSING_CMDS[@]} -gt 0 ]; then elif command -v apk >/dev/null 2>&1; then # Alpine 本身就是极致精简,无需特殊参数 echo "Alpine 探测到系统类型为 Alpine Linux,正在执行轻量级安装..." - apk add --no-cache curl jq dcron procps python3 bash openssl >/dev/null 2>&1 + # [修复] 新版 Alpine 已废弃 dcron。优先尝试 cronie,若失败则信任自带 busybox-cron,并移除屏蔽以便暴露报错 + apk add --no-cache curl jq cronie procps python3 bash openssl || apk add --no-cache curl jq procps python3 bash openssl mkdir -p /var/spool/cron/crontabs rc-update add crond default >/dev/null 2>&1 service crond start >/dev/null 2>&1 @@ -90,7 +91,7 @@ if [ ${#MISSING_CMDS[@]} -gt 0 ]; then echo -e "\033[33m⚠️ 请根据您的操作系统,手动执行以下安装命令后重新运行本脚本:\033[0m" echo -e " Debian/Ubuntu: \033[36mapt-get update && apt-get install -y --no-install-recommends curl jq cron procps python3 openssl\033[0m" echo -e " CentOS/RHEL: \033[36myum install -y curl jq cronie procps-ng python3 openssl\033[0m" - echo -e " Alpine Linux: \033[36mapk add --no-cache curl jq dcron procps python3 bash openssl\033[0m" + echo -e " Alpine Linux: \033[36mapk add --no-cache curl jq cronie procps python3 bash openssl\033[0m" echo -e " Arch Linux: \033[36mpacman -Sy curl jq cronie procps-ng python openssl\033[0m" exit 1 fi diff --git a/master/install_master.sh b/master/install_master.sh index bfd27ed..48804a5 100755 --- a/master/install_master.sh +++ b/master/install_master.sh @@ -162,7 +162,8 @@ if [ ${#MISSING_CMDS[@]} -gt 0 ]; then systemctl enable crond >/dev/null 2>&1 && systemctl start crond >/dev/null 2>&1 elif command -v apk >/dev/null 2>&1; then echo "Alpine 探测到系统类型为 Alpine Linux,正在执行轻量级安装..." - apk add --no-cache curl jq sqlite dcron procps bash >/dev/null 2>&1 + # [修复] 优先尝试 cronie,若失败则回退至系统内置 cron,彻底避免单点依赖拖垮全局 + apk add --no-cache curl jq sqlite cronie procps bash openssl || apk add --no-cache curl jq sqlite procps bash openssl mkdir -p /var/spool/cron/crontabs rc-update add crond default >/dev/null 2>&1 service crond start >/dev/null 2>&1 @@ -175,7 +176,7 @@ if [ ${#MISSING_CMDS[@]} -gt 0 ]; then echo -e "\033[33m⚠️ 请手动执行以下安装命令后重新运行本脚本:\033[0m" echo -e " Debian/Ubuntu: \033[36mapt-get update && apt-get install -y --no-install-recommends curl jq sqlite3 cron procps\033[0m" echo -e " CentOS/RHEL: \033[36myum install -y curl jq sqlite cronie procps-ng\033[0m" - echo -e " Alpine Linux: \033[36mapk add --no-cache curl jq sqlite dcron procps bash\033[0m" + echo -e " Alpine Linux: \033[36mapk add --no-cache curl jq sqlite cronie procps bash openssl\033[0m" exit 1 fi