51工具盒子

依楼听风雨
笑看云卷云舒,淡观潮起潮落

linux live cd iso镜像构建

下面介绍一下如何自己构建一个iso镜像 {#%E4%B8%8B%E9%9D%A2%E4%BB%8B%E7%BB%8D%E4%B8%80%E4%B8%8B%E5%A6%82%E4%BD%95%E8%87%AA%E5%B7%B1%E6%9E%84%E5%BB%BA%E4%B8%80%E4%B8%AAiso%E9%95%9C%E5%83%8F}

构建一个自定义的 Linux Live CD ISO 镜像通常涉及以下步骤。你可以使用工具如 Debian LiveUbuntu Customization Kit (UCK)Linux From Scratch (LFS) 等来完成这个任务。以下是使用 Debian Live 工具构建 Live CD 的基本步骤:

1. 安装必要的工具 {#1.-%E5%AE%89%E8%A3%85%E5%BF%85%E8%A6%81%E7%9A%84%E5%B7%A5%E5%85%B7}

首先,确保你的系统上安装了 live-build 工具包。live-build 是 Debian 和 Ubuntu 中用于构建 Live CD 的工具。

sudo apt-get update
sudo apt-get install live-build
​

2. 创建构建目录 {#2.-%E5%88%9B%E5%BB%BA%E6%9E%84%E5%BB%BA%E7%9B%AE%E5%BD%95}

创建一个新的目录来存放你的 Live CD 构建文件。

mkdir ~/live-cd
cd ~/live-cd
​

3. 初始化 Live CD 配置 {#3.-%E5%88%9D%E5%A7%8B%E5%8C%96-live-cd-%E9%85%8D%E7%BD%AE}

使用 lb config 命令初始化 Live CD 的配置文件。

lb config
​

这将在当前目录下生成一些配置文件和目录结构。

4. 自定义配置 {#4.-%E8%87%AA%E5%AE%9A%E4%B9%89%E9%85%8D%E7%BD%AE}

你可以编辑生成的配置文件来定制你的 Live CD。主要的配置文件包括:

  • config/package-lists/: 这里可以添加你想要包含在 Live CD 中的软件包列表。

  • config/chroot_local-includes/: 这里可以添加你想要包含在 Live CD 中的自定义文件。

  • config/bootloaders/: 这里可以配置引导加载器。

例如,你可以创建一个新的软件包列表文件:

echo "vim" > config/package-lists/my-packages.list.chroot
​

5. 构建 Live CD {#5.-%E6%9E%84%E5%BB%BA-live-cd}

使用 lb build 命令开始构建 Live CD。

sudo lb build
​

这个过程可能需要一些时间,具体取决于你选择的软件包和系统的性能。

6. 获取生成的 ISO 文件 {#6.-%E8%8E%B7%E5%8F%96%E7%94%9F%E6%88%90%E7%9A%84-iso-%E6%96%87%E4%BB%B6}

构建完成后,生成的 ISO 文件将位于当前目录下,通常命名为 live-image-i386.hybrid.isolive-image-amd64.hybrid.iso,具体取决于你选择的架构。

7. 测试 Live CD {#7.-%E6%B5%8B%E8%AF%95-live-cd}

你可以使用虚拟机(如 VirtualBox)或将其烧录到 USB 驱动器来测试生成的 ISO 文件。

qemu-system-x86_64 -cdrom live-image-amd64.hybrid.iso
​

8. 进一步定制(可选) {#8.-%E8%BF%9B%E4%B8%80%E6%AD%A5%E5%AE%9A%E5%88%B6%EF%BC%88%E5%8F%AF%E9%80%89%EF%BC%89}

如果你需要进一步定制 Live CD,可以修改配置文件并重新运行 lb build 命令。

9. 清理(可选) {#9.-%E6%B8%85%E7%90%86%EF%BC%88%E5%8F%AF%E9%80%89%EF%BC%89}

如果你不再需要构建文件,可以清理生成的临时文件。

sudo lb clean
​

10. 分享或部署 {#10.-%E5%88%86%E4%BA%AB%E6%88%96%E9%83%A8%E7%BD%B2}

一旦你对生成的 Live CD 满意,你可以将其分享给其他人或部署到多台机器上。

注意事项 {#%E6%B3%A8%E6%84%8F%E4%BA%8B%E9%A1%B9}

  • 构建 Live CD 可能需要大量的磁盘空间和内存,确保你的系统有足够的资源。

  • 如果你在构建过程中遇到问题,可以查看生成的日志文件以获取更多信息。

通过以上步骤,你可以成功构建一个自定义的 Linux Live CD ISO 镜像。

[2025-01-06 17:29:29] user :
用 isolinux来制作

[2025-01-06 17:29:30] assistant :
使用 isolinux 来制作一个自定义的 Linux Live CD ISO 镜像是一种传统但非常灵活的方式。isolinux 是一个轻量级的引导加载器,通常用于创建可启动的 ISO 镜像。以下是详细的步骤:


1. 准备工作 {#1.-%E5%87%86%E5%A4%87%E5%B7%A5%E4%BD%9C}

确保你的系统上安装了必要的工具:

sudo apt-get update
sudo apt-get install isolinux syslinux genisoimage
​
  • isolinux:用于引导加载器。

  • syslinux:提供 isolinux 所需的文件。

  • genisoimage:用于生成 ISO 镜像。


2. 创建目录结构 {#2.-%E5%88%9B%E5%BB%BA%E7%9B%AE%E5%BD%95%E7%BB%93%E6%9E%84}

创建一个工作目录,并设置所需的目录结构:

mkdir -p ~/custom-live-cd/{isolinux,boot/grub,live}
cd ~/custom-live-cd
​
  • isolinux/:存放 isolinux 引导加载器的配置文件。

  • boot/grub/:可选,用于支持 GRUB 引导。

  • live/:存放 Live 系统的文件系统(如 filesystem.squashfs)。


3. 准备 isolinux引导文件 {#3.-%E5%87%86%E5%A4%87-isolinux-%E5%BC%95%E5%AF%BC%E6%96%87%E4%BB%B6}

isolinux 所需的文件复制到 isolinux/ 目录:

cp /usr/lib/ISOLINUX/isolinux.bin isolinux/
cp /usr/lib/syslinux/modules/bios/ldlinux.c32 isolinux/
​
  • isolinux.binisolinux 的核心引导文件。

  • ldlinux.c32isolinux 的模块文件。


4. 创建 isolinux.cfg配置文件 {#4.-%E5%88%9B%E5%BB%BA-isolinux.cfg-%E9%85%8D%E7%BD%AE%E6%96%87%E4%BB%B6}

isolinux/ 目录下创建一个名为 isolinux.cfg 的配置文件,用于定义引导菜单:

nano isolinux/isolinux.cfg
​

添加以下内容:

DEFAULT live
PROMPT 0
TIMEOUT 300

LABEL live
MENU LABEL Start Custom Live CD
KERNEL /live/vmlinuz
APPEND initrd=/live/initrd.img boot=live components quiet splash

`LABEL memtest
MENU LABEL Memory Test
KERNEL /boot/memtest86+.bin
​`

  • DEFAULT live:默认引导选项。

  • KERNEL /live/vmlinuz:指定内核文件路径。

  • APPEND:传递给内核的参数。

  • initrd=/live/initrd.img:指定初始 RAM 磁盘文件。


5. 准备 Live 系统文件 {#5.-%E5%87%86%E5%A4%87-live-%E7%B3%BB%E7%BB%9F%E6%96%87%E4%BB%B6}

将你的 Live 系统文件(如 vmlinuzinitrd.imgfilesystem.squashfs)复制到 live/ 目录。

例如,如果你有一个现成的 Live 系统,可以从其 ISO 中提取这些文件:

sudo mount -o loop /path/to/original-live.iso /mnt
cp /mnt/casper/vmlinuz live/
cp /mnt/casper/initrd.img live/
cp /mnt/casper/filesystem.squashfs live/
sudo umount /mnt
​

6. 生成 ISO 镜像 {#6.-%E7%94%9F%E6%88%90-iso-%E9%95%9C%E5%83%8F}

使用 genisoimage 工具生成 ISO 镜像:

genisoimage -o custom-live-cd.iso \
  -b isolinux/isolinux.bin \
  -c isolinux/boot.cat \
  -no-emul-boot \
  -boot-load-size 4 \
  -boot-info-table \
  -J -r -V "CUSTOM_LIVE_CD" \
  .
​
  • -b isolinux/isolinux.bin:指定引导加载器文件。

  • -c isolinux/boot.cat:生成引导目录文件。

  • -no-emul-boot:禁用模拟模式。

  • -boot-load-size 4:设置引导加载大小。

  • -boot-info-table:添加引导信息表。

  • -J -r:启用 Joliet 和 Rock Ridge 扩展。

  • -V "CUSTOM_LIVE_CD":设置卷标。


7. 测试 ISO 镜像 {#7.-%E6%B5%8B%E8%AF%95-iso-%E9%95%9C%E5%83%8F}

使用虚拟机(如 qemuVirtualBox)测试生成的 ISO 镜像:

qemu-system-x86_64 -cdrom custom-live-cd.iso
​

8. 可选:添加 GRUB 支持 {#8.-%E5%8F%AF%E9%80%89%EF%BC%9A%E6%B7%BB%E5%8A%A0-grub-%E6%94%AF%E6%8C%81}

如果你希望同时支持 isolinuxGRUB,可以在 boot/grub/ 目录下添加 GRUB 配置文件,并在生成 ISO 时包含 GRUB 引导文件。


9. 清理 {#9.-%E6%B8%85%E7%90%86}

完成后,你可以删除工作目录以释放空间:

rm -rf ~/custom-live-cd
​

总结 {#%E6%80%BB%E7%BB%93}

通过以上步骤,你可以使用 isolinux 制作一个自定义的 Linux Live CD ISO 镜像。这种方法非常适合需要高度定制的场景,例如嵌入特定的工具或配置文件。如果你需要更高级的功能(如 UEFI 支持),可以考虑结合 GRUB 或其他引导加载器。

[2025-01-06 17:32:13] user :
加入grub efi

[2025-01-06 17:32:14] assistant :
要在自定义的 Linux Live CD ISO 镜像中同时支持传统的 BIOS(通过 isolinux)和 UEFI(通过 GRUB),需要额外配置 GRUB 的 EFI 引导部分。以下是详细的步骤:


1. 准备工作 {#1.-%E5%87%86%E5%A4%87%E5%B7%A5%E4%BD%9C-1}

确保你的系统上安装了必要的工具:

sudo apt-get update
sudo apt-get install isolinux syslinux genisoimage grub-efi-amd64-bin
​
  • grub-efi-amd64-bin:用于生成 GRUB 的 EFI 引导文件。

2. 创建目录结构 {#2.-%E5%88%9B%E5%BB%BA%E7%9B%AE%E5%BD%95%E7%BB%93%E6%9E%84-1}

创建一个工作目录,并设置所需的目录结构:

mkdir -p ~/custom-live-cd/{isolinux,boot/grub,EFI/boot,live}
cd ~/custom-live-cd
​
  • isolinux/:存放 isolinux 引导加载器的配置文件。

  • boot/grub/:存放 GRUB 的 BIOS 引导文件。

  • EFI/boot/:存放 GRUB 的 UEFI 引导文件。

  • live/:存放 Live 系统的文件系统(如 filesystem.squashfs)。


3. 准备 isolinux引导文件 {#3.-%E5%87%86%E5%A4%87-isolinux-%E5%BC%95%E5%AF%BC%E6%96%87%E4%BB%B6-1}

isolinux 所需的文件复制到 isolinux/ 目录:

cp /usr/lib/ISOLINUX/isolinux.bin isolinux/
cp /usr/lib/syslinux/modules/bios/ldlinux.c32 isolinux/
​

4. 创建 isolinux.cfg配置文件 {#4.-%E5%88%9B%E5%BB%BA-isolinux.cfg-%E9%85%8D%E7%BD%AE%E6%96%87%E4%BB%B6-1}

isolinux/ 目录下创建一个名为 isolinux.cfg 的配置文件,用于定义引导菜单:

nano isolinux/isolinux.cfg
​

添加以下内容:

DEFAULT live
PROMPT 0
TIMEOUT 300

LABEL live
MENU LABEL Start Custom Live CD (BIOS)
KERNEL /live/vmlinuz
APPEND initrd=/live/initrd.img boot=live components quiet splash

`LABEL memtest
MENU LABEL Memory Test (BIOS)
KERNEL /boot/memtest86+.bin
​`


5. 准备 GRUB 的 BIOS 引导文件 {#5.-%E5%87%86%E5%A4%87-grub-%E7%9A%84-bios-%E5%BC%95%E5%AF%BC%E6%96%87%E4%BB%B6}

将 GRUB 的 BIOS 引导文件复制到 boot/grub/ 目录:

cp /usr/lib/grub/i386-pc/* boot/grub/
​

6. 创建 GRUB 的 BIOS 配置文件 {#6.-%E5%88%9B%E5%BB%BA-grub-%E7%9A%84-bios-%E9%85%8D%E7%BD%AE%E6%96%87%E4%BB%B6}

boot/grub/ 目录下创建一个名为 grub.cfg 的配置文件:

nano boot/grub/grub.cfg
​

添加以下内容:

set timeout=10
set default=0

menuentry "Start Custom Live CD (BIOS)" {
linux /live/vmlinuz boot=live components quiet splash
initrd /live/initrd.img
}

`menuentry "Memory Test (BIOS)" {
linux16 /boot/memtest86+.bin
}
​`


7. 准备 GRUB 的 UEFI 引导文件 {#7.-%E5%87%86%E5%A4%87-grub-%E7%9A%84-uefi-%E5%BC%95%E5%AF%BC%E6%96%87%E4%BB%B6}

生成 GRUB 的 UEFI 引导文件,并将其复制到 EFI/boot/ 目录:

grub-mkstandalone -O x86_64-efi -o EFI/boot/bootx64.efi --locales="" --fonts="" "boot/grub/grub.cfg=./boot/grub/grub.cfg"
​
  • -O x86_64-efi:指定目标平台为 x86_64 UEFI。

  • -o EFI/boot/bootx64.efi:输出文件路径。

  • --locales="" --fonts="":禁用不必要的语言和字体支持。


8. 创建 GRUB 的 UEFI 配置文件 {#8.-%E5%88%9B%E5%BB%BA-grub-%E7%9A%84-uefi-%E9%85%8D%E7%BD%AE%E6%96%87%E4%BB%B6}

EFI/boot/ 目录下创建一个名为 grub.cfg 的配置文件:

nano EFI/boot/grub.cfg
​

添加以下内容:

set timeout=10
set default=0

menuentry "Start Custom Live CD (UEFI)" {
linux /live/vmlinuz boot=live components quiet splash
initrd /live/initrd.img
}

`menuentry "Memory Test (UEFI)" {
linux16 /boot/memtest86+.bin
}
​`


9. 准备 Live 系统文件 {#9.-%E5%87%86%E5%A4%87-live-%E7%B3%BB%E7%BB%9F%E6%96%87%E4%BB%B6}

将你的 Live 系统文件(如 vmlinuzinitrd.imgfilesystem.squashfs)复制到 live/ 目录。

例如,如果你有一个现成的 Live 系统,可以从其 ISO 中提取这些文件:

sudo mount -o loop /path/to/original-live.iso /mnt
cp /mnt/casper/vmlinuz live/
cp /mnt/casper/initrd.img live/
cp /mnt/casper/filesystem.squashfs live/
sudo umount /mnt
​

10. 生成 ISO 镜像 {#10.-%E7%94%9F%E6%88%90-iso-%E9%95%9C%E5%83%8F}

使用 genisoimage 工具生成 ISO 镜像,并确保包含 BIOS 和 UEFI 引导文件:

genisoimage -o custom-live-cd.iso \
  -b isolinux/isolinux.bin \
  -c isolinux/boot.cat \
  -no-emul-boot \
  -boot-load-size 4 \
  -boot-info-table \
  -eltorito-alt-boot \
  -e EFI/boot/bootx64.efi \
  -no-emul-boot \
  -J -r -V "CUSTOM_LIVE_CD" \
  .
​
  • -eltorito-alt-boot:启用第二个引导项(UEFI)。

  • -e EFI/boot/bootx64.efi:指定 UEFI 引导文件。


11. 测试 ISO 镜像 {#11.-%E6%B5%8B%E8%AF%95-iso-%E9%95%9C%E5%83%8F}

使用虚拟机(如 qemuVirtualBox)测试生成的 ISO 镜像,确保 BIOS 和 UEFI 引导都正常工作。

  • 测试 BIOS 引导:

    qemu-system-x86_64 -cdrom custom-live-cd.iso
    ​
    
  • 测试 UEFI 引导:

    qemu-system-x86_64 -bios /usr/share/ovmf/OVMF.fd -cdrom custom-live-cd.iso
    ​
    

12. 清理 {#12.-%E6%B8%85%E7%90%86}

完成后,你可以删除工作目录以释放空间:

rm -rf ~/custom-live-cd
​

总结 {#%E6%80%BB%E7%BB%93-1}

通过以上步骤,你可以制作一个同时支持 BIOS 和 UEFI 引导的自定义 Linux Live CD ISO 镜像。isolinux 用于传统 BIOS 引导,而 GRUB 用于 UEFI 引导。这种方法适用于需要兼容多种硬件环境的场景。

[2025-01-06 17:38:40] user :
filesystem.squashfs 需要自己构建 以 deepin v23为例子

[2025-01-06 17:38:41] assistant :
要构建 filesystem.squashfs 文件,通常需要从现有的 Deepin V23 系统中提取文件系统,并将其压缩为 SquashFS 格式。以下是详细的步骤,以 Deepin V23 为例:


1. 准备工作 {#1.-%E5%87%86%E5%A4%87%E5%B7%A5%E4%BD%9C-2}

确保你的系统上安装了必要的工具:

sudo apt-get update
sudo apt-get install squashfs-tools
​
  • squashfs-tools:用于创建和操作 SquashFS 文件系统。

2. 获取 Deepin V23 的文件系统 {#2.-%E8%8E%B7%E5%8F%96-deepin-v23-%E7%9A%84%E6%96%87%E4%BB%B6%E7%B3%BB%E7%BB%9F}

方法 1:从现有的 Deepin 系统中提取 {#%E6%96%B9%E6%B3%95-1%EF%BC%9A%E4%BB%8E%E7%8E%B0%E6%9C%89%E7%9A%84-deepin-%E7%B3%BB%E7%BB%9F%E4%B8%AD%E6%8F%90%E5%8F%96}

如果你已经在运行 Deepin V23,可以直接从当前系统中提取文件系统。

  1. 创建一个临时目录用于挂载文件系统:

    mkdir -p ~/deepin-fs
    ​
    
  2. 挂载根文件系统到临时目录:

    sudo mount --bind / ~/deepin-fs
    ​
    
  3. 排除不需要的文件(如 /proc/sys/dev 等):

    sudo rm -rf ~/deepin-fs/proc/*
    sudo rm -rf ~/deepin-fs/sys/*
    sudo rm -rf ~/deepin-fs/dev/*
    ​
    

方法 2:从 Deepin ISO 中提取 {#%E6%96%B9%E6%B3%95-2%EF%BC%9A%E4%BB%8E-deepin-iso-%E4%B8%AD%E6%8F%90%E5%8F%96}

如果你有 Deepin V23 的 ISO 文件,可以从 ISO 中提取文件系统。

  1. 挂载 ISO 文件:

    sudo mount -o loop /path/to/deepin-v23.iso /mnt
    ​
    
  2. 复制文件系统到临时目录:

    mkdir -p ~/deepin-fs
    cp -a /mnt/casper/filesystem.squashfs ~/deepin-fs/
    sudo umount /mnt
    ​
    
  3. 解压 filesystem.squashfs

    sudo unsquashfs -d ~/deepin-fs ~/deepin-fs/filesystem.squashfs
    ​
    

3. 自定义文件系统(可选) {#3.-%E8%87%AA%E5%AE%9A%E4%B9%89%E6%96%87%E4%BB%B6%E7%B3%BB%E7%BB%9F%EF%BC%88%E5%8F%AF%E9%80%89%EF%BC%89}

在构建 filesystem.squashfs 之前,你可以对文件系统进行自定义修改。例如:

  • 添加或删除软件包:

    sudo chroot ~/deepin-fs
    apt-get install <package-name>
    apt-get remove <package-name>
    exit
    ​
    
  • 修改配置文件:

    sudo nano ~/deepin-fs/etc/some-config-file
    ​
    
  • 清理不必要的文件:

    sudo rm -rf ~/deepin-fs/var/cache/apt/archives/*
    sudo rm -rf ~/deepin-fs/tmp/*
    ​
    

4. 构建 filesystem.squashfs {#4.-%E6%9E%84%E5%BB%BA-filesystem.squashfs}

使用 mksquashfs 工具将文件系统压缩为 SquashFS 格式:

sudo mksquashfs ~/deepin-fs filesystem.squashfs -comp xz -b 1M
​
  • -comp xz:使用 XZ 压缩算法(推荐)。

  • -b 1M:设置块大小为 1MB。


5. 验证 filesystem.squashfs {#5.-%E9%AA%8C%E8%AF%81-filesystem.squashfs}

解压生成的 filesystem.squashfs 文件,验证其内容是否正确:

unsquashfs -l filesystem.squashfs
​

6. 将 filesystem.squashfs放入 Live CD 目录 {#6.-%E5%B0%86-filesystem.squashfs-%E6%94%BE%E5%85%A5-live-cd-%E7%9B%AE%E5%BD%95}

将生成的 filesystem.squashfs 文件复制到你的 Live CD 工作目录中:

cp filesystem.squashfs ~/custom-live-cd/live/
​

7. 继续构建 ISO 镜像 {#7.-%E7%BB%A7%E7%BB%AD%E6%9E%84%E5%BB%BA-iso-%E9%95%9C%E5%83%8F}

按照之前的方法,继续构建支持 BIOS 和 UEFI 的 ISO 镜像。


8. 清理 {#8.-%E6%B8%85%E7%90%86}

完成后,删除临时目录以释放空间:

sudo rm -rf ~/deepin-fs
​

总结 {#%E6%80%BB%E7%BB%93-2}

通过以上步骤,你可以从 Deepin V23 系统中提取文件系统,并构建自定义的 filesystem.squashfs 文件。结合之前的 ISO 构建方法,你可以制作一个完全自定义的 Deepin Live CD。

[2025-01-06 17:42:23] user :
还有其他方法吗,如 debootstrap

[2025-01-06 17:42:24] assistant :
是的,除了从现有系统中提取文件系统外,你还可以使用 debootstrap 工具从头开始构建一个全新的文件系统。debootstrap 是一个强大的工具,可以从网络或本地镜像中安装一个基本的 Debian/Ubuntu/Deepin 系统。以下是使用 debootstrap 构建 Deepin V23 文件系统的详细步骤:


1. 安装 debootstrap {#1.-%E5%AE%89%E8%A3%85-debootstrap}

首先,确保你的系统上安装了 debootstrap

sudo apt-get update
sudo apt-get install debootstrap
​

2. 创建目标目录 {#2.-%E5%88%9B%E5%BB%BA%E7%9B%AE%E6%A0%87%E7%9B%AE%E5%BD%95}

创建一个目录,用于存放新构建的文件系统:

sudo mkdir -p ~/deepin-fs
​

3. 使用 debootstrap构建文件系统 {#3.-%E4%BD%BF%E7%94%A8-debootstrap-%E6%9E%84%E5%BB%BA%E6%96%87%E4%BB%B6%E7%B3%BB%E7%BB%9F}

Deepin 基于 Debian/Ubuntu,因此可以使用 debootstrap 来安装一个基本的 Deepin 系统。以下是具体步骤:

方法 1:从网络安装 {#%E6%96%B9%E6%B3%95-1%EF%BC%9A%E4%BB%8E%E7%BD%91%E7%BB%9C%E5%AE%89%E8%A3%85}

如果 Deepin V23 的仓库支持 debootstrap,可以直接从网络安装:

sudo debootstrap --arch=amd64 <deepin-version> ~/deepin-fs <repository-url>
​
  • <deepin-version>:Deepin 的版本号(例如 v23unstable)。

  • <repository-url>:Deepin 的软件源地址(例如 https://community-packages.deepin.com/deepin/)。

方法 2:从本地镜像安装 {#%E6%96%B9%E6%B3%95-2%EF%BC%9A%E4%BB%8E%E6%9C%AC%E5%9C%B0%E9%95%9C%E5%83%8F%E5%AE%89%E8%A3%85}

如果你有 Deepin V23 的本地镜像,可以使用本地路径作为仓库:

sudo debootstrap --arch=amd64 <deepin-version> ~/deepin-fs file:///path/to/deepin-mirror
​

4. 配置新文件系统 {#4.-%E9%85%8D%E7%BD%AE%E6%96%B0%E6%96%87%E4%BB%B6%E7%B3%BB%E7%BB%9F}

安装完成后,进入新文件系统进行配置:

sudo chroot ~/deepin-fs
​

设置语言和时区 {#%E8%AE%BE%E7%BD%AE%E8%AF%AD%E8%A8%80%E5%92%8C%E6%97%B6%E5%8C%BA}

export LANG=C.UTF-8
export DEBIAN_FRONTEND=noninteractive
ln -fs /usr/share/zoneinfo/Asia/Shanghai /etc/localtime
dpkg-reconfigure --frontend noninteractive tzdata
​

配置软件源 {#%E9%85%8D%E7%BD%AE%E8%BD%AF%E4%BB%B6%E6%BA%90}

编辑 /etc/apt/sources.list,添加 Deepin 的软件源:

nano /etc/apt/sources.list
​

示例内容:

deb https://community-packages.deepin.com/deepin/ apricot main contrib non-free
​

更新软件包 {#%E6%9B%B4%E6%96%B0%E8%BD%AF%E4%BB%B6%E5%8C%85}

apt-get update
apt-get upgrade -y
​

安装必要的软件包 {#%E5%AE%89%E8%A3%85%E5%BF%85%E8%A6%81%E7%9A%84%E8%BD%AF%E4%BB%B6%E5%8C%85}

apt-get install -y systemd-sysv deepin-desktop-base network-manager
​

设置 root 密码 {#%E8%AE%BE%E7%BD%AE-root-%E5%AF%86%E7%A0%81}

passwd
​

退出 chroot 环境 {#%E9%80%80%E5%87%BA-chroot-%E7%8E%AF%E5%A2%83}

exit
​

5. 清理不必要的文件 {#5.-%E6%B8%85%E7%90%86%E4%B8%8D%E5%BF%85%E8%A6%81%E7%9A%84%E6%96%87%E4%BB%B6}

在构建 SquashFS 之前,清理不必要的文件以减小文件系统大小:

sudo rm -rf ~/deepin-fs/var/cache/apt/archives/*
sudo rm -rf ~/deepin-fs/tmp/*
​

6. 构建 filesystem.squashfs {#6.-%E6%9E%84%E5%BB%BA-filesystem.squashfs}

使用 mksquashfs 工具将文件系统压缩为 SquashFS 格式:

sudo mksquashfs ~/deepin-fs filesystem.squashfs -comp xz -b 1M
​

7. 将 filesystem.squashfs放入 Live CD 目录 {#7.-%E5%B0%86-filesystem.squashfs-%E6%94%BE%E5%85%A5-live-cd-%E7%9B%AE%E5%BD%95}

将生成的 filesystem.squashfs 文件复制到你的 Live CD 工作目录中:

cp filesystem.squashfs ~/custom-live-cd/live/
​

8. 继续构建 ISO 镜像 {#8.-%E7%BB%A7%E7%BB%AD%E6%9E%84%E5%BB%BA-iso-%E9%95%9C%E5%83%8F}

按照之前的方法,继续构建支持 BIOS 和 UEFI 的 ISO 镜像。


9. 清理 {#9.-%E6%B8%85%E7%90%86-1}

完成后,删除临时目录以释放空间:

sudo rm -rf ~/deepin-fs
​

总结 {#%E6%80%BB%E7%BB%93-3}

使用 debootstrap 构建文件系统的方法更加灵活,适合从头开始构建一个干净的系统。结合之前的 ISO 构建方法,你可以制作一个完全自定义的 Deepin Live CD。如果你需要更高级的定制(例如预装软件、修改默认配置等),可以在 chroot 环境中完成。

回复点赞1收藏只看作者


赞(0)
未经允许不得转载:工具盒子 » linux live cd iso镜像构建