如何使用Cubic创建自定义Ubuntu Live CD映像?


Answers:


26

Cubic(自定义Ubuntu ISO Creator)是一个GUI向导,用于创建自定义的可引导Ubuntu Live CD(ISO)映像。Cubic具有集成的命令行chroot环境,可以进行自定义,并允许通过ISO生成步骤轻松地进行向后和向前导航。您可以创建新的定制项目或修改现有项目,并且会使用智能默认值自动填充重要参数,以简化定制过程。

(注意:Cubic使用Xorg且不能在Wayland上运行,如果出现类似“ ls:无法访问'〜/ .Xauthority':无此类文件或目录”之类的错误,请尝试安装/切换到Xorg。这尤其是一个问题因为Artful Aardvark默认开始使用Wayland)。

安装立方

要安装Cubic,请添加PPA,然后使用安装apt

sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-keys 081525E2B4F1283B
sudo apt-add-repository ppa:cubic-wizard/release
sudo apt update
sudo apt install cubic

使用立方

从扩展坞或应用程序菜单中启动Cubic。

在“三次简介”页面上,选择目录以保留所有项目文件。您可以有多个定制项目,但是必须为每个项目选择一个不同的目录。

在此处输入图片说明

“新项目”页面上的信息将自动为您填写。您可以接受建议的默认值。如果选择更改某些值,则键入时相关参数将自动更新。

在此处输入图片说明

在此处输入图片说明

下一页将显示压缩的Linux文件系统被提取时的进度。

在此处输入图片说明

提取Linux文件系统后,“终端页面”将自动出现。在这里可以进行自定义。您将需要使用命令行。请注意,这是一个chroot环境,您以root用户身份登录,因此sudo在键入命令时不需要使用。 (您可以忽略“ ttyname failed”消息。在Ubuntu 14.04中,如果没有看到终端提示符,请按Enter几次该键)。

使用命令行工具来自定义Ubuntu。

在此处输入图片说明

请注意,在自定义Ubuntu 17.10时,DNS查找可能无法在chroot环境中使用,并且apt由于“名称或服务未知”错误而可能无法使用。这是因为链接/etc/resolv.conf指向/run/systemd/resolve/stub-resolv.conf。但是stub-resolv.conf不存在。

要解决此问题,请在Cubic chroot终端窗口中执行以下命令...

ln -sr /run/systemd/resolve/resolv.conf /run/systemd/resolve/stub-resolv.conf

或尝试使用Ark74提出的这种方法。

mkdir /run/systemd/resolve/
echo "nameserver 127.0.1.1
search network" | tee /run/systemd/resolve/resolv.conf
ln -sr /run/systemd/resolve/resolv.conf /run/systemd/resolve/stub-resolv.conf

要验证DNS解析是否有效,请执行...

cat /etc/resolv.conf
ping google.com

以下是使用命令行自定义Ubuntu的一些示例...

您可以使用nano文本编辑器来编辑文件。例如,要编辑源存储库列表,请键入

nano /etc/apt/sources.list

要退出nano,请输入Ctrl-,X然后会提示您保存文件。要不保存文件,请键入N。要保存文件,请键入Y,然后按Enter接受默认文件名。

在此处输入图片说明

编辑源列表之后,请记住使用以下命令更新可用软件包的列表:

apt update

您可以apt用来更新源和安装应用程序。例如,您可以安装其他Linux内核。

apt install linux-image-4.18.0-11-generic

您可以单击“后退”按钮来更改您在“新建项目”页面上输入的一些项目参数。如果退出该应用程序,则始终可以打开您的项目并继续在终止的终端页面上进行自定义。

在此处输入图片说明

您可以通过将文件或目录拖动到终端窗口中来将它们复制到当前目录中。您也可以使用右键单击上下文菜单复制文件。这上下文菜单中,您还可以复制和粘贴在终端文本(Ctrl- Shift- CCtrl- Shift- V将无法正常工作)。

这是将其他墙纸复制到您的自定义环境中的示例。

cd /usr/share/backgrounds

然后,只需将新墙纸拖到“立方”窗口上即可。

提示:确保将新墙纸列在XML文件中/usr/share/gnome-background-properties,在用户右键单击其桌面时,它们将在“更改背景”对话框中列出。

请注意,Cubic GUI当前不支持通过网络复制文件,但是您可以在终端环境中使用rcpscp命令。

在此处输入图片说明

在此处输入图片说明

完成更改后,单击“下一步”按钮。请记住,您可以随时返回该项目的终端环境,以在将来进行其他自定义。

在下一页上,您将看到两个选项卡。“ ISO Linux内核”选项卡显示了在chroot环境中可能已安装到自定义Linux系统的其他内核的列表。您可以选择使用其中一种作为新Live iso的启动内核。仅接受此页面上建议的默认设置是一个好主意。

(注意:在此页面上,您没有选择在自定义Linux系统中使用的内核,也没有选择在使用新的实时iso时将要安装到计算机上的内核;而是该内核用于增强您的新Live ISO)。

在此处输入图片说明

软件包清单的所有包的标签列出安装在您定制的Linux系统。带有复选标记的软件包被标记为由“ Ubiquity live CD安装程序”自动删除。如果您不希望Ubiquity在安装定制的Linux系统后删除软件包,只需取消选中该软件包。

如果您的安装程序支持“ 典型”安装和“ 最小”安装,您将看到两列带有复选框。当您选择要用于典型安装的软件包时,该软件包也将被自动删除,以进行最小安装。

如果您的安装程序不支持“ 最小安装”,则您将看到一列带有“ 典型”安装复选框的复选框。选择要删除的程序包时要小心,因为其他相关程序包也可能会被删除,并且这些不会在列表中指出。

同样,最好只接受此页面上建议的默认值。

在此处输入图片说明

单击下一步按钮,Cubic将自动将您的自定义打包到一个新的*.iso磁盘映像中。显示了每个步骤的进度和结果。请注意,Cubic使用最大程度的压缩,并且“压缩自定义Linux文件系统”步骤可能会花费很长时间,具体取决于您的系统硬件。(您可能需要打开系统监视器来跟踪此步骤中的CPU使用率)。

在此过程中的任何时候,您都可以单击“上一步”按钮立即返回chroot环境,并进行可能被忽略的其他更改或自定义。ISO_9660标准为最终生成的ISO映像强制设置最大4GiB的大小。如果ISO映像太大,则Cubic将向您显示错误,并且您需要返回并删除一些文件或软件包。

在此处输入图片说明

生成新的自定义磁盘映像后,Cubic还将生成一个MD5校验和文件,可用于验证您的自定义*.iso文件。

在此处输入图片说明

单击完成按钮,将显示有关自定义磁盘映像的信息。

如果要删除所有正在运行的项目文件(为了节省磁盘空间),请选中“删除所有项目文件...”复选框。否则,您将来可以继续自定义此项目。

在此处输入图片说明

最后,使用您喜欢的磁盘刻录程序(例如Braseo)将*.iso映像的副本刻录到CD或DVD,或者使用USB启动程序(例如Startup Disk Creator或mkusb)创建可启动的USB。

提示:如果要分发定制的Linux,则可以使用相应的MD5校验和文件来验证它是否已更改。例如,确保两个文件都在同一目录中,然后键入以下内容…

md5sum --check ubuntu-18.10.0-2018.11.09-desktop-amd64.md5 

ubuntu-18.10.0-2018.11.09-desktop-amd64.iso: OK

做出改变

启动Cubic,然后在“简介”页上选择一个现有的项目目录。单击下一步按钮,将为您提供三个选项:

  1. 创建一个新ISO映像,其中包含您之前进行的自定义
  2. 继续自定义您的项目以进行其他更改
  3. 删除项目并重新开始。项目文件占用磁盘空间,因此您可能要删除旧文件。

在此处输入图片说明

如果选择删除项目,则将删除所有项目工作文件。如果生成的*.iso图像在项目目录中,则除非您手动移动它,否则它也会被删除。

在此处输入图片说明


在chroot环境之外 ”是什么意思?在立方以外执行命令?
加布里埃尔·桑多瓦尔

这意味着,请在本地计算机上打开一个终端窗口,然后键入以上命令。(从技术上讲,您也可以在chroot环境中键入此命令,而无需使用sudo,它将具有相同的效果)。为避免混淆,我建议您在Cubic的chroot终端窗口中执行此命令。另外,请注意,仅在从16.10(或<)系统运行Cubic时自定义Ubuntu 17.10 ISO时,才会出现resolv.conf问题;从17.10中运行的Cubic自定义17.10时不会发生此问题。
PJ Singh

注意:由于Wayland限制使用root特权运行图形应用程序的安全性,因此Cubic将仅在Xorg会话中工作。
PJ Singh

在Cubic中编辑Lubuntu 16.04.2 LTS i386 ISO需要多少可用空间?可能超过4,1 GiB,对不对?
巴吉鲁

@Bajiru,您至少需要5090 MB的空间。这不包括您可能添加的其他软件包或文件。这是我的计算方式:921MB(lubuntu-17.10-desktop-amd64.iso)+ 3387MB(未压缩的工作文件)+ 782MB(新的lubuntu iso)= 5090 MB。三次使用最大压缩率,这就是在计算中新iso小于原始iso的原因。立方无法与Lubuntu的32位版本一起使用;仅使用64位。另外,如果您在规格较低的计算机上执行此操作,请准备好进行一些解压缩和压缩步骤,以花费一些时间并最大限度地利用CPU。
辛格

3

安装:

  1. sudo apt-add-repository ppa:cubic-wizard/release
  2. sudo apt-get update
  3. sudo apt-get install cubic

创建ISO映像:

在此处输入图片说明

在此处输入图片说明

在此处输入图片说明

在此处输入图片说明


是的,我在做同一件事,并且至少还添加了一些要点
Jay T.

1

只是添加到顶部的好答案。

为了使resolv.conf在17.10和18.04上对我有用(在撰写本文时),我使用以下命令:

mkdir /run/systemd/resolve/
echo "nameserver 127.0.1.1
search network" | tee /run/systemd/resolve/resolv.conf
ln -sr /run/systemd/resolve/resolv.conf /run/systemd/resolve/stub-resolv.conf

希望它对别人有帮助。


它已在最新的Cubic版本上修复。可以省略这个答案。
Ark74 '18
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.