Ubuntu22.04桌面版安装Cubic2024版本并定制ISO完整教程

1.背景介绍:

1.1 现实痛点

在日常运维和开发工作中,我们经常需要再多台服务器上部署相同的环境,传统做法通常包括:

  • 手动安装操作系统
  • 逐个安装所需软件和依赖库
  • 配置系统参数和服务
  • 处理复杂的依赖关系和版本冲突

这种方式面临几个突出问题:

问题类型 具体表现
重复性工作 每台服务器都需要重复相同的安装配置流程
依赖管理 需要手动解决软件包的间接依赖关系和版本冲突
环境不一致 手动操作容易出错,导致各服务器环境差异
离线部署困难 在无网络环境中,依赖包下载和安装变得异常复杂
1.2 解决方案:定制ISO

通过定制化ISO镜像,我们可以预先在镜像中安装好所有基础软件和环境配置,然后使用这个定制镜像批量部署服务器。这样:

  • 一次配置,多次使用:只需定制一次 ISO,即可在多台服务器上重复使用
  • 环境一致性:所有使用同一镜像安装的系统环境完全相同
  • 离线友好:无需网络即可完成完整环境部署
1.3 为什么选择Cubic

在Ubuntu ISO定制领域,存在多种工具可供选择:

工具 特点 使用人群
Cubic 图形化界面,向导式操作 新手和中级用户
debootstrap + chroot 命令行操作,灵活性高 高级用户
Systemback Live 系统制作 需要复制现有系统

Cubic(Custom Ubuntu ISO Creator) 是目前最受欢迎的 Ubuntu ISO 定制工具,它将复杂的"手动解压 → chroot → 重打包"流程简化为直观的图形化向导。

1.4 版本兼容性说明

⚠️ **重要提示:**Cubic 最新版本(2025.06.93)与 Ubuntu 22.04 存在兼容性问题,会导致 ISO 生成卡住。因此,本教程使用 Cubic 2024.02.86 版本 + Ubuntu 22.04 LTS 的组合,经验证稳定可靠。

2.什么是Cubic:

2.1 定义

Cubic(Custom Ubuntu ISO Creator)是 Ubuntu 官方 PPA 维护的图形化 Live ISO 定制工具,专为 Ubuntu 和 Debian 系发行版设计。

2.2 核心功能

Cubic支持以下定制功能:

功能类别 具体能力
软件管理 预装/删除软件包、添加自定义软件源
**系统配置 **修改 systemd 服务、网络设置、防火墙规则
界面定制 替换壁纸、主题、桌面环境配置
内核管理 更换或升级 Linux 内核
体积优化 自动清理无用包,压缩体积最大可减少 50%
2.3 工作原理

Cubic的核心原理是:

  • 解压: 将原始 ISO 文件解压到工作目录
  • 挂载: 使用 chroot 技术进入解压后的系统环境
  • 定制: 在 chroot 环境中进行任意修改(安装软件、修改配置等)
  • 打包: 将修改后的系统重新打包为 squashfs 文件系统
  • 生成: 生成包含新引导记录的可启动 ISO 文件
2.4 与传统方式的对比
对比项 传统手动方式 Cubic方式
操作复杂度 需要记忆大量命令 图形化向导,简单直观
技术门槛 需要深入了解 ISO 结构和 chroot 基本 Linux 知识即可
出错概率 高(容易遗漏步骤) 低(自动化处理)
可重复性 差 好(项目文件可保存)

3.环境准备:

3.1 系统要求
项目 推荐配置
操作系统 Ubuntu 22.04 LTS 桌面版
**内存 **8 GB 或以上
磁盘空间 30 GB 或以上
网络 稳定的网络连接
3.2 软件要求
  • Ubuntu 22.04 LTS 桌面版已安装并正常运行
  • 拥有 sudo 权限的用户账户
  • 原始 Ubuntu ISO 文件(本教程以 Ubuntu 20.04 为例)
3. 3原始ISO准备

从 Ubuntu 官网下载所需版本的 ISO 镜像:

  • 服务器版:ubuntu-20.04.3-live-server-amd64.iso
  • 桌面版:ubuntu-22.04.5-desktop-amd64.iso

将 ISO 文件保存到便于访问的位置(如 ~/Downloads/)。

4.Cubic2024版本安装

4.1 离线包安装

步骤 1:下载 Cubic 2024 离线包

下载文件:cubic_2024.02-86-release202402210132ubuntu23.10.1_all.deb
下载渠道:

bash 复制代码
# 进入下载目录
cd ~/Downloads

# 安装 Cubic
sudo dpkg -i cubic_2024.02-86-release~202402210132~ubuntu23.10.1_all.deb

# 修复可能存在的依赖问题
sudo apt --fix-broken install -y

步骤 3:验证安装

bash 复制代码
# 查看版本(注意:不要使用 sudo)
cubic --version
Cubic version... 2024.02.86
Copyright....... © 2015, 2020 PJ Singh
Website......... https://github.com/PJ-Singh-001/Cubic
4.2 启动Cubic
bash 复制代码
# 直接运行(不要使用 sudo)
cubic

或者在应用程序菜单中搜索 "Cubic" 并点击图标启动。

注意: Cubic 是一个图形界面应用程序,不能使用 sudo 直接运行,否则会报错。Cubic 会在需要时自动请求管理员权限

5.使用Cubic定制ISO

5.1 整体流程概览

否
是
启动 Cubic
选择项目目录
选择原始 ISO 文件
等待 ISO 解压
进入 chroot 环境
进行定制操作
定制完成?
退出 chroot
选择压缩算法
生成新 ISO
测试验证

5.2 创建新项目

启动 Cubic 后,首先需要创建或选择一个项目目录:

  1. 点击文件夹图标浏览选择目录
  2. 创建一个新目录,例如 /home/用户名/cubic-project/
  3. 点击 Next 进入下一步

💡 项目目录将存放解压的 ISO 内容和最终生成的定制 ISO,建议至少有 15GB 可用空间。

5.3 选择原始ISO文件
  1. 点击 Select 按钮
  2. 浏览并选择之前准备好的 Ubuntu 20.04 ISO 文件
  3. Cubic 会自动识别系统版本和架构信息
  4. 可选:修改 Volume ID、Name、Version 等元信息
  5. 点击 Next 开始解压

解压过程大约需要 2-5 分钟,请耐心等待。

5.4 进入chroot环境

ISO 解压完成后,Cubic 会自动进入 chroot 虚拟环境------一个以 root 权限运行的终端窗口。这是定制的核心阶段,所有系统修改都在这里完成

6.chroot环境定制详解

6.1 环境准备与网络配置

进入 chroot 终端后,首先进行基础环境配置。
测试网络连接

bash 复制代码
# 测试网络
ping baidu.com

修复 DNS 解析(如需要)

如果 ping 失败或后续 apt update 报 DNS 错误:

bash 复制代码
# 修复 DNS 解析
ln -sr /run/systemd/resolve/resolv.conf /run/systemd/resolve/stub-resolv.conf

# 再次测试
ping baidu.com
6.2 核心操作:将文件放入ISO

**目标:**将 软件包.tar.gz 集成到 ISO 中,安装系统后文件自动存在于 /opt 目录。
直接复制到 squashfs-root

如果知道 chroot 对应的主机路径,可以直接在主机上操作:

bash 复制代码
# 在主机上执行
sudo cp /path/to/aiumsInstall-mysql-v2.13.1_SP03-amd64.tar.gz ~/cubic-project/squashfs-root/opt/
6.3 安装其他软件(可选)

在 chroot 环境中可以安装任何需要的软件

bash 复制代码
# 更新软件包列表
apt update

# 安装 SSH 服务(如需远程访问)
apt install -y openssh-server

# 安装常用开发工具
apt install -y vim curl wget git htop

# 安装完成后清理缓存(重要:减小 ISO 体积)
apt clean
rm -rf /var/lib/apt/lists/*
rm -rf /tmp/*
6.4 定制注意事项
操作 说明
清理缓存 务必执行 apt clean,否则 ISO 体积会显著增大
避免交互 使用 -y 参数自动确认软件包安装
网络配置 如需代理,提前设置 http_proxy 环境变量
版本兼容 确保安装的软件包与 Ubuntu 22.04 兼容
6.5退出chroot环境

完成所有定制后:

bash 复制代码
# 在 chroot 终端中输入 exit
exit

退出后,不要多次输入 exit,直接点击 Cubic 窗口的 Next 按钮继续。

7.生成ISO镜像

7.1 包选择界面

退出 chroot 后,Cubic 显示包列表界面:

  • 可以勾选/取消需要在 Live ISO 中包含的包
  • 可以选择标准或最小化安装模式
  • 点击 Next
7.2 内核选择

选择用于启动 Live ISO 的内核,默认选择最新内核即可,点击 Next。

7.3 Preseed 配置(可选)

如需实现自动化安装,可在 Preseed 标签页配置自动应答文件

bash 复制代码
# 示例:自动安装配置片段
d-i passwd/user-fullname string Ubuntu User
d-i passwd/username string ubuntu
d-i passwd/user-password password ubuntu123
d-i passwd/user-password-again password ubuntu123
d-i time/zone string Asia/Shanghai
7.4 压缩算法选择
算法 ISO大小 打包时间 解压时间 推荐场景
XZ 最小 最长 中等 网络分发(节省带宽)
GZIP 中等 中等 中等 通用场景
LZ4 最大 最短 最短 快速测试迭代

💡 建议:首次定制建议选择 GZIP,兼容性最好。如对体积有要求,可选用 XZ。

7.5 开始生成
  1. 点击 Generate 按钮
  2. 等待打包完成(耗时 10-30 分钟,取决于硬件配置和定制内容)
  3. 生成完成后,ISO 路径显示在窗口中(通常为 ~/cubic-project/custom-ubuntu.iso)

8.测试与验证

使用U盘进行刻录后,在服务器进行安装测试。

参考资料:

Ubuntu 官方文档:https://help.ubuntu.com/community/LiveCDCustomization

Preseed 参考:https://help.ubuntu.com/lts/installation-guide/amd64/apbs04.html

相关推荐
奔跑的大白啊12 小时前
多容器共享目录权限踩坑记
linux·ubuntu·共享目录·linux权限·docker 容器化部署
缘友一世1 天前
银河护卫队在steam(linux Proton GE-Proton10-34)上启动无窗口问题修复
linux·ubuntu·steam·proton
刘胡子大叔1 天前
repo 与 index:站点目录该怎么切
ubuntu·php
zhangrelay2 天前
用ROS2Lyrical实验报告册思路重做蓝桥云课ROS1实验并改进
linux·笔记·学习·ubuntu·机器人
小小龙学IT2 天前
ROS2 安装完全指南(Ubuntu 版):从零开始到跑通第一个节点本文
linux·运维·ubuntu
MicrosoftCloud3 天前
用户权限 04|/etc/sudoers 安全配置:从最小授权到「别把 ALL 随便给人」
运维·安全·ubuntu·sudo·sudoers
水饺编程3 天前
第1章:下载 Linux 0.12 内核
linux·c语言·汇编·ubuntu
水饺编程3 天前
第1章:开发环境搭建,在 Windows 中安装 Git
linux·c语言·汇编·git·ubuntu
сокол3 天前
【Python-基础-环境搭建】Ubuntu Python 开发环境搭建:编译、pipenv、pyenv、远程连接
开发语言·python·ubuntu
刘胡子大叔4 天前
1Panel 部署 ThinkPHP8 踩坑实录
linux·ubuntu