TT Bigdata TT Bigdata
首页
  • 部署专题

    • 常规安装
    • 一键部署
  • 组件安装

    • 常规&高可用
  • 版本专题

    • 更新说明
  • Ambari-Env

    • 环境准备
    • 开始使用
  • 组件编译

    • 专区—Ambari
    • 专区—Bigtop-官方组件
    • 专区—Bigtop-扩展组件
  • 报错解决

    • 专区—Ambari
    • 专区—Bigtop
  • 其他技巧

    • Maven镜像加速
    • Gradle镜像加速
    • Bower镜像加速
    • 虚拟环境思路
    • R环境安装+一键安装脚本
    • Ivy配置私有镜像仓库
    • Node.js 多版本共存方案
    • Ambari Web本地启动
    • Npm镜像加速
    • PostgreSQL快速安装
    • Temurin JDK 23快速安装
  • 成神之路

    • 专区—Ambari
    • 专区—Bigtop
  • 集成案例

    • Redis集成教学
    • Dolphin集成教学
    • Doris集成教学
    • 持续整理...
  • 核心代码

    • 各组件代码
    • 通用代码模板
  • 国产化&其他系统

    • Rocky系列
    • Ubuntu系列
  • 生产调优

    • 组件调优指南
    • 1v1指导调优
  • 支持&共建

    • 蓝图愿景
    • 技术支持
    • 合作共建
登陆
GitHub (opens new window)

JaneTTR

数据酿造智慧,每一滴都是沉淀!
首页
  • 部署专题

    • 常规安装
    • 一键部署
  • 组件安装

    • 常规&高可用
  • 版本专题

    • 更新说明
  • Ambari-Env

    • 环境准备
    • 开始使用
  • 组件编译

    • 专区—Ambari
    • 专区—Bigtop-官方组件
    • 专区—Bigtop-扩展组件
  • 报错解决

    • 专区—Ambari
    • 专区—Bigtop
  • 其他技巧

    • Maven镜像加速
    • Gradle镜像加速
    • Bower镜像加速
    • 虚拟环境思路
    • R环境安装+一键安装脚本
    • Ivy配置私有镜像仓库
    • Node.js 多版本共存方案
    • Ambari Web本地启动
    • Npm镜像加速
    • PostgreSQL快速安装
    • Temurin JDK 23快速安装
  • 成神之路

    • 专区—Ambari
    • 专区—Bigtop
  • 集成案例

    • Redis集成教学
    • Dolphin集成教学
    • Doris集成教学
    • 持续整理...
  • 核心代码

    • 各组件代码
    • 通用代码模板
  • 国产化&其他系统

    • Rocky系列
    • Ubuntu系列
  • 生产调优

    • 组件调优指南
    • 1v1指导调优
  • 支持&共建

    • 蓝图愿景
    • 技术支持
    • 合作共建
登陆
GitHub (opens new window)
  • 案例-首次编译环境处理

  • 案例-Bigtop适配Debian

    • 解读-bigtop-select支持deb
      • 一、源码目录现状分析
      • 二、编译报错现象复现
      • 三、先看结果
      • 四、解决思路与操作概要
        • 对比 rpm 与 deb 体系的目录结构
      • 五、整体解决办法
    • 解决-Step1-解除限制拥抱deb
    • 解决-Step2-补全代码结构
  • 案例-安装中遇到的问题

  • SYS-Ubuntu
  • 案例-Bigtop适配Debian
JaneTTR
2025-07-16
目录

解读-bigtop-select支持deb全网首创

背景说明

在大数据平台自动化部署体系中,bigtop-select 是环境切换、版本隔离的基础工具。然而,Bigtop 官方主力仍在 RedHat/CentOS(rpm 体系),对于 Ubuntu/Debian(deb 体系)并未同步完善 bigtop-select 支持,直接导致源码编译时出现缺失与报错。

# 一、源码目录现状分析

我们以官方仓库为例,打开 bigtop-packages/src/deb 目录,可以发现 bigtop-select 根本不存在:

bigtop-select deb目录缺失

官方现状

Bigtop 在 deb 体系下,没有 bigtop-select 目录,也没有对应的 control、rules、install 脚本文件,rpm 体系下才是完整的。

# 二、编译报错现象复现

在没有任何手动补全的情况下,直接执行 gradle bigtop-select-pkg 编译指令:

  • 构建会直接 fail,报错内容核心是:找不到 deb 体系下 bigtop-select 的相关脚本/目录。

典型报错说明

实际就是找不到 deb 包的构建规则与资源,build 脚本入口被掐断,后续一切自动化流程也会终止。

# 三、先看结果

假设你已经补齐了 deb 下的目录,成功构建后会看到如下效果(实际操作路径与产物展示):

编译后产物展示

root@ubuntu22:/opt/modules/bigtop/output/bigtop-select# ll
total 72
drwxr-xr-x 2 root root  4096 Jul 16 14:14 ./
drwxr-xr-x 8 root root  4096 Jul 16 14:14 ../
-rw-r--r-- 1 root root 11846 Jul 16 14:14 bigtop-select_3.2.0-1_all.deb
-rw-r--r-- 1 root root  6499 Jul 16 14:14 bigtop-select_3.2.0-1_amd64.build
-rw-r--r-- 1 root root  5818 Jul 16 14:14 bigtop-select_3.2.0-1_amd64.buildinfo
-rw-r--r-- 1 root root  1014 Jul 16 14:14 bigtop-select_3.2.0-1_amd64.changes
-rw-r--r-- 1 root root 16186 Jul 16 14:14 bigtop-select_3.2.0-1.diff.gz
-rw-r--r-- 1 root root   831 Jul 16 14:14 bigtop-select_3.2.0-1.dsc
-rw-r--r-- 1 root root  1433 Jul 16 14:14 bigtop-select_3.2.0-1_source.changes
-rw-r--r-- 1 root root  4157 Jul 16 14:14 bigtop-select_3.2.0.orig.tar.gz
1
2
3
4
5
6
7
8
9
10
11
12

deb产物详细目录 这些截图正对应最终产物产出,说明 deb 体系下的 bigtop-select 已经能正常编译、打包、分发。

# 四、解决思路与操作概要

# 对比 rpm 与 deb 体系的目录结构

体系 脚本目录结构 默认支持
rpm 有完整 bigtop-select 目录及 spec ✅
deb 缺少 bigtop-select 目录及 control ❌

笔记

解决的本质: 只需要把 rpm 下 bigtop-select 的 install 逻辑和主文件,按 deb 包打包标准,迁移到 deb 目录,包含 control、rules、install 文件即可。

# 五、整体解决办法

解决-Step1-解除限制拥抱deb 解决-Step2-补全代码结构

#bigtop-select#debian#Ubuntu#编译适配#源码分析
首次编译-环境初始化
解决-Step1-解除限制拥抱deb

← 首次编译-环境初始化 解决-Step1-解除限制拥抱deb→

最近更新
01
bigtop-select 打包缺 compat 报错修复 deb
07-16
02
bigtop-select 打包缺 control 文件报错修复 deb
07-16
03
首次编译-环境初始化 必装
07-16
更多文章>
Theme by Vdoing | Copyright © 2017-2025 JaneTTR | MIT License
  • 跟随系统
  • 浅色模式
  • 深色模式
  • 阅读模式