AlmaLinux 8安装宝塔需前置修复三步:关闭SELinux(setenforce 0并修改配置)、切换为AlmaLinux官方仓库(dnf install almalinux-release epel-release后makecache)、放行8888/80/443/3306端口并reload防火墙,否则安装必卡在依赖环境阶段或后续功能异常。

AlmaLinux 8 完全支持宝塔面板,但必须关闭 SELinux 并替换默认仓库,否则安装会在依赖下载阶段卡死或报 Failed to download metadata for repo 'appstream' 错误。
为什么 AlmaLinux 8 安装宝塔常卡在 “Installing dependent environment”
这不是宝塔脚本的问题,而是 AlmaLinux 8 默认启用的 SELinux 和已失效的 CentOS 官方仓库共同导致的。从 2021 年底起,mirrors.centos.org 的 AppStream/BaseOS 仓库已下线,但 AlmaLinux 8 初始配置仍指向这些地址;同时 setenforce 1 状态下,宝塔服务无法绑定 8888 端口,firewalld 也常拦截其后台进程通信。
- 执行
dnf repolist会看到大量Failed或空列表 - 执行
getenforce返回Enforcing即为高风险状态 - 安装日志中出现
curl#6 - Could not resolve host: mirrors.centos.org是典型信号
必须做的三步前置修复
跳过这三步直接运行安装脚本,90% 概率失败或后续功能异常(如 PHP 扩展编译失败、MySQL 启动报错)。
- 临时关闭 SELinux:
setenforce 0 - 永久禁用 SELinux:
sed -i 's/SELINUX=enforcing/SELINUX=permissive/g' /etc/selinux/config - 切换为 AlmaLinux 官方可用仓库:
dnf install -y almalinux-release epel-release && dnf clean all && dnf makecache
安装命令与版本选择要点
AlmaLinux 8 对应的是 RHEL 8 生态,必须使用宝塔 6.0+ 脚本,且不能混用 CentOS 7 的旧版安装地址。官方 install_6.0.sh 已适配 AlmaLinux,但需注意网络环境是否能直连 download.bt.cn。
Linux 安全审计工具,检查 SSH 配置、开放/监听端口、防火墙规则(ufw/iptables/nftables)、失败登录尝试、sudoers 权限...
- 推荐命令(含错误重试逻辑):
wget -O install.sh https://download.bt.cn/install/install_6.0.sh && chmod +x install.sh && bash install.sh - 若国内访问慢,可加
-t 3 -T 30参数增强健壮性:wget -t 3 -T 30 -O install.sh https://download.bt.cn/install/install_6.0.sh - 切勿使用
install_5.9.sh或任何标有centos7的脚本,会导致 Python 依赖冲突
防火墙与端口开放不可省略
AlmaLinux 8 默认启用 firewalld,且不自动放行宝塔所需端口。仅开放 8888 不够——网站建站、SSL 申请、数据库远程连接等场景会立即触发阻断。
- 必须放行:
firewall-cmd --permanent --add-port=8888/tcp - 建议同步放行:
firewall-cmd --permanent --add-port=80/tcp、firewall-cmd --permanent --add-port=443/tcp、firewall-cmd --permanent --add-port=3306/tcp - 最后 reload:
firewall-cmd --reload,否则规则不生效
真正容易被忽略的是仓库切换后未执行 dnf makecache,以及 SELinux 改为 permissive 后未重启机器(部分内核模块需重启才释放端口绑定限制)。这两点在生产环境中会导致面板后台服务反复崩溃,但错误日志里几乎不体现。










