【支持Ubuntu22】Ambari3.0.0+Bigtop3.2.0——Step6—本地apt源

注意事项

本文基于 Ubuntu 22.04 LTS 适配,部分包名和配置与 RedHat/Rocky/CentOS 有差异,请勿直接复用其它系统命令 。如遇疑难欢迎在

VX 或 QQ 群与作者交流。

附录:完整内容和源代码下载请参照

https://doc.janettr.com/

一、场景说明

在 Ubuntu 22.04 集群或企业内网环境,经常需要批量分发/自动化安装 各类 DEB 包。自建 HTTP/本地 apt

源不仅解决了"离线环境下装包"问题,也让多节点集群部署极其高效可靠。

二、核心原理

  1. Nginx 提供 HTTP 服务,作为 DEB 包分发服务器
  2. 主节点生成本地 apt 索引(Packages.gz),所有节点通过 http 访问该索引
  3. 自动写入 /etc/apt/sources.list.d/xxx.list,批量 update,所有主机都可离线拉包

三、标准目录结构与权限

bash 复制代码
sudo mkdir -p /data/modules
sudo chown -R www-data:www-data /data/modules
sudo chmod -R 755 /data/modules

必须保证 Nginx 运行用户为 www-data,且 /data/modules 目录有 755 权限,否则出现 403 Forbidden 或找不到包。其实我就是root也没啥问题

四、DEB 包索引自动生成

4.1 工具准备

bash 复制代码
sudo apt update
sudo apt install -y dpkg-dev
  • 工具:dpkg-scanpackages(不要用 createrepo!)

4.2 自动化生成索引(仅主源节点)

bash 复制代码
cd /data/modules
dpkg-scanpackages . /dev/null | gzip -9c > Packages.gz
  • 每次更新、增加或删除 .deb 包都要重新执行此命令,保持索引最新

和 RedHat/CentOS 不同,Ubuntu apt 仓库索引文件为 Packages.gz ,必须用 dpkg-scanpackages 工具自动生成,createrepo 等

rpm 工具全部无效。

五、全节点自动化添加 apt 源

5.1 统一生成源文件

在所有节点写入 /etc/apt/sources.list.d/ambari.list

复制代码
deb [trusted=yes] http://主源IP/ ./

例如主源为 192.168.3.1,则内容为
deb [trusted=yes] http://192.168.3.1/ ./

  • trusted=yes 禁用 GPG 校验,适合内网/离线测试
  • 每个节点都可以自动 update/upgrade

5.2 更新索引

bash 复制代码
sudo apt-get clean
sudo apt-get update
相关推荐
神筆&『馬良』8 小时前
Foundation_pose在自己的物体上复现指南:实现任意物体6D位姿检测(利用realsense_D435i和iphone_16pro手机)
目标检测·ubuntu·机器人·视觉检测
liuniu08189 小时前
VMware虚拟机安装ubuntu2022
ubuntu·ros
xfddlm10 小时前
边缘计算_ubuntu环境下使用瑞芯微RK3576NPU推理LLM
人工智能·ubuntu·边缘计算
EHagSJVNpTY11 小时前
MATLAB 中基于最大重叠离散小波变换的心电信号处理探索
ubuntu
.小墨迹11 小时前
apollo学习之借道超车的速度规划
linux·c++·学习·算法·ubuntu
技术路上的探险家12 小时前
Ubuntu下Docker与NVIDIA Container Toolkit完整安装教程(含国内源适配)
linux·ubuntu·docker
无证驾驶梁嗖嗖13 小时前
用Plex打造随身私人影院告别影音杂乱,必须加上cpolar突破地域限制!
ubuntu
Sheep Shaun14 小时前
揭开Linux的隐藏约定:你的第一个文件描述符为什么是3?
linux·服务器·ubuntu·文件系统·缓冲区
生活很暖很治愈14 小时前
Linux——环境变量PATH
linux·ubuntu
予枫的编程笔记15 小时前
【Linux入门篇】Ubuntu和CentOS包管理不一样?apt与yum对比实操,看完再也不混淆
linux·人工智能·ubuntu·centos·linux包管理·linux新手教程·rpm离线安装