# FreePosix **Repository Path**: halping/free-posix ## Basic Information - **Project Name**: FreePosix - **Description**: No description available - **Primary Language**: C - **License**: Not specified - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2026-03-24 - **Last Updated**: 2026-03-24 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # Linux-Distro 目标:从源码构建一个完整的 Linux 发行版,可在 amd64 物理机上运行。 **核心组件**: - 内核:Linux 6.19.9(bzImage) - C 库:glibc 2.43(系统基础库) - Init 系统:systemd 259(LFS 13.0-systemd 同款) - 工具链:binutils 2.46.0 + gcc 15.2.0 - 用户态:busybox + 基础 Unix 工具 - 引导:GRUB 2.14 --- ## 构建方案 本项目提供**两条路线**: ### 路线 A:LFS 完整构建(全自动化,推荐) - 基于 LFS 13.0-systemd 官方手册 - 构建 100+ 个包,形成完整发行版 - 自动化脚本覆盖 95% 步骤 - 耗时:15-30 小时(取决于 CPU) - 产物:可 login、可编译程序、可运行 systemd 的真实 Linux 系统 ### 路线 B:BusyBox 极简构建(快速验证) - 内核 + glibc + BusyBox - BusyBox init(极简 init) - 无 systemd,30 分钟完成 - 适合学习和快速验证 - 产物:能 login 的最小系统 --- ## Task List ### 准备阶段 - [ ] **T0-1** 在 gitee 新建空仓库 `linux-distro`(不要初始化 README) - [ ] **T0-2** 安装构建依赖(所有构建工具) - [ ] **T0-3** 下载所有源码包(LFS wget-list) - [ ] **T0-4** 准备磁盘分区(至少 30GB空闲空间) - [ ] **T0-5** 创建 LFS 用户(构建必须在非 root 用户下进行) ### 路线 A — LFS 完整构建 - [ ] **TA-1** 执行 `01-prepare.sh` — 准备交叉工具链环境 - [ ] **TA-2** 执行 `02-cross-toolchain.sh` — 编译交叉编译工具链 - [ ] **TA-3** 执行 `03-temp-tools.sh` — 构建临时工具链 - [ ] **TA-4** 执行 `04-chroot.sh` — 进入 chroot 构建最终系统 - [ ] **TA-5** 执行 `05-kernel.sh` — 编译 Linux 6.19.9 内核 - [ ] **TA-6** 执行 `06-grub.sh` — 安装配置 GRUB - [ ] **TA-7** 重启验证 ### 路线 B — BusyBox 极简构建 - [ ] **TB-1** 编译 Linux 内核(极简配置,< 20MB) - [ ] **TB-2** 编译 glibc(静态链接) - [ ] **TB-3** 编译 BusyBox(静态链接) - [ ] **TB-4** 构建 rootfs + initramfs - [ ] **TB-5** QEMU 测试 - [ ] **TB-6** 物理机 GRUB 引导 --- ## 文档结构 ``` linux-distro/ ├── README.md # 本文件 ├── BUILD.md # 详细构建手册 ├── AUTOMATION.md # 自动化脚本说明 ├── wget-list # LFS 所有源码包列表 ├── scripts/ # 自动化构建脚本 │ ├── 01-prepare.sh │ ├── 02-cross-toolchain.sh │ ├── 03-temp-tools.sh │ ├── 04-chroot.sh │ ├── 05-kernel.sh │ └── 06-grub.sh ├── config/ # 内核和软件包的配置文件 │ ├── kernel-config # 极简内核配置 │ └── busybox-config # BusyBox 静态编译配置 └── sources/ # 源码包存放目录(需要手动下载) ``` --- ## 分工 - **Alex**:编写文档、脚本、配置文件 - **Ray**:执行脚本、下载源码、操作磁盘分区 --- ## 参考资料 - LFS 13.0-systemd 官方手册:`~/.openclaw/workspace/13.0/` - LFS 官网:https://www.linuxfromscratch.org/lfs/ - 内核下载:https://cdn.kernel.org/