温馨提示×

怎么入门Ubuntu From Scratch

小樊
32
2026-07-14 09:01:57
栏目: 智能运维

Ubuntu From Scratch (UFS) 是一个由 Ubuntu 社区维护的项目,旨在帮助用户从零开始构建自己的 Ubuntu 系统。

⚠️ 重要提示:

  1. 难度极高:这比安装普通的 Ubuntu 要难得多,类似于 Linux From Scratch (LFS),但针对的是 Ubuntu 的包管理(Debian 系)。
  2. 非官方发行版:它不是 Canonical 官方发布的安装镜像,而是一个社区项目。
  3. 耗时极长:构建过程可能需要数小时甚至数天,且需要极强的耐心和排错能力。
  4. 不建议新手:如果你刚接触 Linux,请先使用 Ubuntu 图形化安装版。

以下是入门 UFS 的详细步骤和指南:


第一阶段:准备工作

1. 硬件与系统准备

  • 宿主机:你需要一个已经安装好的 Linux 系统(推荐 Ubuntu 或 Debian)作为“构建机”。
  • 磁盘空间:至少准备 20GB-50GB 的空闲分区或磁盘镜像。
  • 网络:稳定的互联网连接(需要下载大量源码包)。
  • 备份:如果你在实体机上操作,务必备份重要数据。

2. 获取 UFS 资源

UFS 的核心是一个构建脚本和文档。

  • 官方网站:访问 Ubuntu From Scratch Wiki(注意:社区项目可能更新缓慢,链接可能失效)。
  • GitHub 仓库:搜索 ubuntu-from-scratch 相关的仓库。通常项目会包含一个 build.sh 或详细的 README.md

第二阶段:构建流程(通用逻辑)

由于 UFS 没有像 Ubuntu 安装盘那样的一键安装程序,你需要手动执行以下步骤(具体命令请参考你下载的 UFS 脚本或文档):

1. 准备构建环境 (Host System)

你需要安装构建所需的工具链:

sudo apt update
sudo apt install build-essential bison flex texinfo gawk parted wget

2. 分区与挂载

你需要手动分区并挂载目标目录。

# 假设你的目标分区是 /dev/sdb1
sudo mkfs.ext4 /dev/sdb1
sudo mkdir -p /mnt/ufs
sudo mount /dev/sdb1 /mnt/ufs

3. 下载源码与脚本

通常 UFS 会提供一个脚本,下载 Ubuntu 的基础源码包(debootstrap 或 base packages)。

cd /mnt/ufs
# 假设脚本在当前目录
wget https://example.com/ufs-script.sh # 替换为实际地址
chmod +x ufs-script.sh

4. 执行构建脚本

这是核心步骤。脚本通常会:

  • 使用 debootstrap 下载 Ubuntu 基础系统(Base System)。
  • 进入 Chroot 环境(切换根目录到 /mnt/ufs)。
  • 在 Chroot 内编译内核、安装 bootloader (GRUB)、配置网络、设置用户等。
sudo ./ufs-script.sh
# 或者按照文档手动执行 debootstrap
sudo debootstrap focal /mnt/ufs http://archive.ubuntu.com/ubuntu/

5. Chroot 配置

如果脚本中断或你需要手动配置,你需要进入 Chroot:

sudo mount --bind /dev /mnt/ufs/dev
sudo mount --bind /proc /mnt/ufs/proc
sudo mount --bind /sys /mnt/ufs/sys
sudo chroot /mnt/ufs /bin/bash

进入后,你需要:

  • 设置主机名 (/etc/hostname)
  • 配置网络 (/etc/netplan/)
  • 设置 root 密码 (passwd)
  • 安装内核 (apt install linux-image-generic)
  • 安装 GRUB (apt install grub-pc)

6. 安装引导程序 (Bootloader)

退出 Chroot 后,安装 GRUB 到磁盘的 MBR 或 EFI 分区。

# 示例 (具体取决于你的分区表是 MBR 还是 GPT/UEFI)
sudo grub-install --root-directory=/mnt/ufs /dev/sdb
sudo update-grub

第三阶段:替代方案(推荐)

如果你觉得 UFS 太难找或者太难搞,但你想体验“从零构建”的感觉,以下方案更成熟、文档更全:

1. Linux From Scratch (LFS) - 硬核首选

这是最著名的从零构建 Linux 的项目。

  • 官网Linux From Scratch
  • 特点:完全从源码编译,教你 GCC、Glibc 等底层知识。
  • 难度:★★★★★

2. Debian Bootstrap (debootstrap) - Ubuntu 的底层

Ubuntu 基于 Debian,你可以直接用 Debian 的工具构建 Ubuntu。

  • 命令
    sudo apt install debootstrap
    sudo debootstrap jammy /mnt/ubuntu http://archive.ubuntu.com/ubuntu
    
  • 然后手动 Chroot 进去配置即可。这是 UFS 的核心技术之一。

3. Arch Linux - 滚动更新与 DIY

Arch 的安装过程本身就是“从零开始”的体验(虽然没有编译源码,但需要手动分区、配置、安装)。

  • 特点:优秀的 Wiki,安装过程就是学习过程。
  • 难度:★★★☆☆

总结建议

  1. 不要直接上手 UFS:因为 UFS 社区活跃度不如 LFS 或 Arch,文档可能过时。
  2. 先试 Debian Bootstrap:在虚拟机里运行 debootstrap 命令,这是构建 Ubuntu 最快的方法。
  3. 使用虚拟机:在 VirtualBox 或 VMware 里尝试,搞坏了随时删掉重来。
  4. 阅读文档:如果你找到了 UFS 的脚本,先通读一遍脚本内容,理解它在做什么,再运行。

一句话总结: 入门 UFS 就是 “在虚拟机里,用 debootstrap 手动安装一个 Ubuntu,并自己配置内核和 GRUB”

0