ubuntu fromscratch需哪些文件
导读:Ubuntu From Scratch所需文件与产出清单 一、构建环境与工具 在“构建机”上安装必要工具,用于拉取软件包、制作根文件系统与可启动镜像: 基础构建工具:debootstrap(拉取并解包 .deb 生成根文件系统)、squ...
Ubuntu From Scratch所需文件与产出清单
一、构建环境与工具
- 在“构建机”上安装必要工具,用于拉取软件包、制作根文件系统与可启动镜像:
- 基础构建工具:debootstrap(拉取并解包 .deb 生成根文件系统)、squashfs-tools(制作 squashfs 镜像)、xorriso(生成 ISO)、grub-pc-bin/grub-efi-amd64-bin(BIOS/UEFI 引导)、mtools(处理 FAT 镜像所需)。
- 可选自动化:rootstock(面向 ARM 等架构快速生成 rootfs,支持 --seed 定制软件集合)。
- 跨架构构建(ARM 等):qemu-user-static、binfmt-support(在 x86 主机 chroot 到 ARM rootfs 并执行 arm 二进制)。
二、构建过程会下载或生成的关键文件
- 基础根文件系统:使用 debootstrap 从镜像站下载并解包得到目标架构的最小根文件系统目录(如 $HOME/live-ubuntu-from-scratch/chroot),包含 /bin、/etc、/usr、/var 等目录结构与最小软件包集合(如 minbase 变体)。
- 引导相关文件:在 chroot 内安装 grub 后,生成 /boot/grub/grub.cfg;BIOS 平台使用 grub-pc-bin,UEFI 平台使用 grub-efi-amd64-bin 生成 /boot/efi/EFI/BOOT/BOOTX64.EFI 等 EFI 可执行文件。
- 可启动镜像组件:将根文件系统目录打包为 squashfs(常见为 filesystem.squashfs),与 grub 引导文件、内核与 initramfs 一起,通过 xorriso 生成 ISO 镜像(如 live.iso)。
三、目标系统运行所需的最小文件集
- 内核与 initramfs:至少包含 /boot/vmlinuz- 与 /boot/initrd.img-(由安装的内核包与 initramfs-tools 生成),用于早期用户态挂载根文件系统。
- 根文件系统内容:由 debootstrap 生成的 /bin、/sbin、/usr、/lib、/etc 等目录与基础命令、库文件;确保 /etc/fstab 与 /etc/hostname 等基础配置存在。
- 引导加载器:BIOS 下为 MBR + GRUB 阶段1/2;UEFI 下为 FAT EFI 分区 中的 grubx64.efi/BOOTX64.EFI 与配置 grub.cfg;ISO 结构中通常包含 /EFI/BOOT/ 与 /boot/grub/ 等目录。
四、ARM 与交叉构建的额外文件
- 预构建根文件系统压缩包:可直接下载 ubuntu-base--base-.tar.gz(如 armhf/arm64),解压到目标目录作为基础根文件系统,再进入 chroot 配置。
- 跨架构执行支持:在根文件系统中放置 qemu--static(如 qemu-arm-static/qemu-aarch64-static),并启用 binfmt-support,以便在 x86 主机 chroot 并执行 ARM 二进制。
- 自动化生成工具:rootstock 可一键生成 rootfs tarball(或直接在 QEMU 中构建),并通过 –seed 指定软件集合(如 build-essential、xubuntu-desktop 等)。
声明:本文内容由网友自发贡献,本站不承担相应法律责任。对本内容有异议或投诉,请联系2913721942#qq.com核实处理,我们将尽快回复您,谢谢合作!
若转载请注明出处: ubuntu fromscratch需哪些文件
本文地址: https://pptw.com/jishu/771159.html
