fix: 增强acme.sh安装验证逻辑,添加详细诊断信息
问题: - acme.sh安装显示成功,但文件验证立即失败 - 无法判断具体原因(路径/权限/时序问题) 改进: 1. 添加2秒等待,确保文件系统同步 2. 分步骤验证:目录 → 文件 → 权限 → 运行 3. 失败时显示目录内容,方便诊断 4. 自动修复权限问题(chmod +x) 5. 测试脚本实际可运行性(--version) 影响范围: - deploy_acme_letsencrypt() - deploy_acme_zerossl() - deploy_acme_buypass() 相关提交: -e915d5e(添加基础错误检查) -4a73a8c(Gitee镜像加速) -a7aca93(智能SSL fallback)
This commit is contained in:
99
install.sh
99
install.sh
@@ -1338,11 +1338,40 @@ deploy_acme_letsencrypt() {
|
|||||||
fi
|
fi
|
||||||
|
|
||||||
# 确认acme.sh可用
|
# 确认acme.sh可用
|
||||||
if [[ ! -f ~/.acme.sh/acme.sh ]]; then
|
echo ""
|
||||||
print_error "acme.sh 未正确安装"
|
print_info "验证 acme.sh 安装..."
|
||||||
|
|
||||||
|
# 等待文件系统同步
|
||||||
|
sleep 2
|
||||||
|
|
||||||
|
# 检查安装目录
|
||||||
|
if [[ ! -d ~/.acme.sh ]]; then
|
||||||
|
print_error "安装目录不存在: ~/.acme.sh"
|
||||||
return 1
|
return 1
|
||||||
fi
|
fi
|
||||||
|
|
||||||
|
# 检查主脚本文件
|
||||||
|
if [[ ! -f ~/.acme.sh/acme.sh ]]; then
|
||||||
|
print_error "主脚本文件不存在: ~/.acme.sh/acme.sh"
|
||||||
|
print_info "目录内容:"
|
||||||
|
ls -la ~/.acme.sh/ 2>&1 | head -10 || echo "无法列出目录"
|
||||||
|
return 1
|
||||||
|
fi
|
||||||
|
|
||||||
|
# 检查脚本是否可执行
|
||||||
|
if [[ ! -x ~/.acme.sh/acme.sh ]]; then
|
||||||
|
print_warning "脚本不可执行,正在添加执行权限..."
|
||||||
|
chmod +x ~/.acme.sh/acme.sh
|
||||||
|
fi
|
||||||
|
|
||||||
|
# 测试脚本是否能运行
|
||||||
|
if ! ~/.acme.sh/acme.sh --version &> /dev/null; then
|
||||||
|
print_error "acme.sh 无法运行"
|
||||||
|
return 1
|
||||||
|
fi
|
||||||
|
|
||||||
|
print_success "acme.sh 验证通过"
|
||||||
|
|
||||||
# 申请证书
|
# 申请证书
|
||||||
echo ""
|
echo ""
|
||||||
print_info "正在申请 Let's Encrypt 证书..."
|
print_info "正在申请 Let's Encrypt 证书..."
|
||||||
@@ -1408,11 +1437,40 @@ deploy_acme_zerossl() {
|
|||||||
fi
|
fi
|
||||||
|
|
||||||
# 确认acme.sh可用
|
# 确认acme.sh可用
|
||||||
if [[ ! -f ~/.acme.sh/acme.sh ]]; then
|
echo ""
|
||||||
print_error "acme.sh 未正确安装"
|
print_info "验证 acme.sh 安装..."
|
||||||
|
|
||||||
|
# 等待文件系统同步
|
||||||
|
sleep 2
|
||||||
|
|
||||||
|
# 检查安装目录
|
||||||
|
if [[ ! -d ~/.acme.sh ]]; then
|
||||||
|
print_error "安装目录不存在: ~/.acme.sh"
|
||||||
return 1
|
return 1
|
||||||
fi
|
fi
|
||||||
|
|
||||||
|
# 检查主脚本文件
|
||||||
|
if [[ ! -f ~/.acme.sh/acme.sh ]]; then
|
||||||
|
print_error "主脚本文件不存在: ~/.acme.sh/acme.sh"
|
||||||
|
print_info "目录内容:"
|
||||||
|
ls -la ~/.acme.sh/ 2>&1 | head -10 || echo "无法列出目录"
|
||||||
|
return 1
|
||||||
|
fi
|
||||||
|
|
||||||
|
# 检查脚本是否可执行
|
||||||
|
if [[ ! -x ~/.acme.sh/acme.sh ]]; then
|
||||||
|
print_warning "脚本不可执行,正在添加执行权限..."
|
||||||
|
chmod +x ~/.acme.sh/acme.sh
|
||||||
|
fi
|
||||||
|
|
||||||
|
# 测试脚本是否能运行
|
||||||
|
if ! ~/.acme.sh/acme.sh --version &> /dev/null; then
|
||||||
|
print_error "acme.sh 无法运行"
|
||||||
|
return 1
|
||||||
|
fi
|
||||||
|
|
||||||
|
print_success "acme.sh 验证通过"
|
||||||
|
|
||||||
# 申请证书
|
# 申请证书
|
||||||
echo ""
|
echo ""
|
||||||
print_info "正在申请 ZeroSSL 证书..."
|
print_info "正在申请 ZeroSSL 证书..."
|
||||||
@@ -1472,11 +1530,40 @@ deploy_acme_buypass() {
|
|||||||
fi
|
fi
|
||||||
|
|
||||||
# 确认acme.sh可用
|
# 确认acme.sh可用
|
||||||
if [[ ! -f ~/.acme.sh/acme.sh ]]; then
|
echo ""
|
||||||
print_error "acme.sh 未正确安装"
|
print_info "验证 acme.sh 安装..."
|
||||||
|
|
||||||
|
# 等待文件系统同步
|
||||||
|
sleep 2
|
||||||
|
|
||||||
|
# 检查安装目录
|
||||||
|
if [[ ! -d ~/.acme.sh ]]; then
|
||||||
|
print_error "安装目录不存在: ~/.acme.sh"
|
||||||
return 1
|
return 1
|
||||||
fi
|
fi
|
||||||
|
|
||||||
|
# 检查主脚本文件
|
||||||
|
if [[ ! -f ~/.acme.sh/acme.sh ]]; then
|
||||||
|
print_error "主脚本文件不存在: ~/.acme.sh/acme.sh"
|
||||||
|
print_info "目录内容:"
|
||||||
|
ls -la ~/.acme.sh/ 2>&1 | head -10 || echo "无法列出目录"
|
||||||
|
return 1
|
||||||
|
fi
|
||||||
|
|
||||||
|
# 检查脚本是否可执行
|
||||||
|
if [[ ! -x ~/.acme.sh/acme.sh ]]; then
|
||||||
|
print_warning "脚本不可执行,正在添加执行权限..."
|
||||||
|
chmod +x ~/.acme.sh/acme.sh
|
||||||
|
fi
|
||||||
|
|
||||||
|
# 测试脚本是否能运行
|
||||||
|
if ! ~/.acme.sh/acme.sh --version &> /dev/null; then
|
||||||
|
print_error "acme.sh 无法运行"
|
||||||
|
return 1
|
||||||
|
fi
|
||||||
|
|
||||||
|
print_success "acme.sh 验证通过"
|
||||||
|
|
||||||
# 申请证书
|
# 申请证书
|
||||||
echo ""
|
echo ""
|
||||||
print_info "正在申请 Buypass 证书..."
|
print_info "正在申请 Buypass 证书..."
|
||||||
|
|||||||
Reference in New Issue
Block a user