Cubic 5分钟定制专属Ubuntu

1、背景

项目需要对客户现网离线服务器进行环境搭建和部署。传统做法会将所需要安装的依赖库或软件通过U盘拷贝到目标服务器上安装。但是这样面临几个问题:

  • 如果多台服务器,那么需要大量的重复性工作
  • 需要解决依赖库间接依赖关系,以及安装前后顺序,版本冲突等问题

今天介绍使用Cubic对原始ISO进行自定义,预先安装好我们的基础环境,再进行下发。

2、什么是Cubic?

**Cubic(Custom Ubuntu ISO Creator)**是 Ubuntu 官方 PPA 维护的图形化 Live ISO 定制工具。它把传统的"手动解压 → chroot → 重打包" 浓缩成向导式点击,支持:

  • 预装/删除软件包
  • 修改 systemd 服务、网络、防火墙默认配置
  • 替换壁纸、主题、内核
  • 自动清理无用包,压缩体积最大 50%

Cubic Github地址:github.com/PJ-Singh-00...

3、环境

Ubuntu 24 LTS桌面系统,Cubic 2024.02.86。原始Ubuntu镜像:ubuntu-22.04.5-live-server-amd64.iso

首选cubic,其他工具如live buildubuntu-builder-defaults等,都是命令行操作,成本相对较高。

cubic支持图形化操作,就是要注意版本问题。这里使用的是cubic 2024版本和ubuntu 22 LTS版本。

4、开始制作

4.1、安装ubuntu-desktop

需要提前安装好ubuntu带桌面操作系统。

4.2、安装cubic

网络上很多教程,包括官网提供的安装步骤是:

shell 复制代码
sudo apt-add-repository universe
sudo apt-add-repository ppa:cubic-wizard/release
sudo apt update
sudo apt install --no-install-recommends cubic

但是这里不建议直接安装,默认会安装最新版本2025.06.93。目前这个版本制作ISO live server版本会有问题。

这里使用下载离线安装包安装,cubic_2024.02-86-release~202402210132~ubuntu23.10.1_all.deb。将安装包上传到服务端,执行命令安装:

shell 复制代码
sudo dpkg -i *.deb

安装成功后,可以查看版本cubic --version

桌面上搜索就有cubic相关执行程序,打开它:

4.3、选择输出目录

选择输出目录。可以自定义,用于导出自定义ISO目录。

4.4、选择原始镜像

这里的Original Disk为源镜像,就是需要被定义的ISO镜像目录。Custom Disk为自定义后输出的目录。

4.5、进入chroot模式

该界面就是cubic提供的可自定义原始ISO的内容。比如可以在里面安装JDK、PostgreSQL。

4.5.1、测试安装JDK21

shell 复制代码
add-apt-repository ppa:openjdk-r/ppa -y
apt update
apt install -y openjdk-21-jdk

安装成功,查看JDK版本。

4.6、导出ISO

关键的chroot执行完后,就可以直接一直下一步导出了。

接下来就可以使用自定义的ISO进行安装了。

5、一些常见问题汇总

自定义镜像一直卡在acquiring and extracting image from cp:///tmp/tmpvoshqegb/mount -

这是由于我使用了Cubic 2025.06.93版本制作Ubuntu24.04LTS。最后降级版本Cubic2024和Ubunntu22LTS解决。

相关推荐
Yana.nice19 分钟前
Linux 只保留 30 天内日志(find命令删除日志文件)
linux·运维·chrome
DFT计算杂谈4 小时前
无 Root 权限在 Tesla K80 零门槛部署 DeepSeek 大模型
linux·服务器·网络·数据库·机器学习
Zhang~Ling5 小时前
从 fopen 到 struct file:从零开始拆解 Linux 文件 I/O
linux·运维·服务器
DeeplyMind5 小时前
Linux 深入 per-VMA lock:Linux 缺页路径如何摆脱 mmap_lock
linux·per-vma lock
爱写代码的森5 小时前
蒙三方库 | harmony-utils之FileUtil文件重命名与属性查询详解
linux·运维·服务器·华为·harmonyos·鸿蒙·huawei
XMAIPC_Robot6 小时前
软硬协同实时控制|RK3588业务调度+FPGA硬件时序,ethercat实现半导体设备微秒级响应(125us)
linux·arm开发·人工智能·fpga开发
重生的黑客7 小时前
Linux 进程优先级、切换与调度:从孤儿进程到 O(1) 调度模型
linux·运维·服务器·进程优先级·nice
骑上单车去旅行8 小时前
MD5校验对比脚本
linux·服务器·windows
平生幻8 小时前
Linux 常用命令
linux
ShirleyWang0129 小时前
让headlamp控制台能访问
linux·服务器·python·k8s·k3s