觅星云刻 MPXE开源项目
全架构信创PXE环境一键搭建工具,支持x86/arm/龙芯架构网络引导。
是什么
云刻(MPXE)是一个针对信创环境的一键PXE安装环境。兼容x86_64、ARM64、LoongArch64三大主流架构。纯Python实现HTTP、DHCP、TFTP服务,搭配系统NFS服务。通过网络引导为桌面终端和服务器安装操作系统。
项目旨在帮助运维人员快速搭建信创环境下的PXE部署环境,降低国产操作系统批量部署的技术门槛。
核心特性
🔧 纯Python实现
核心服务全部使用Python实现,无第三方依赖,便于部署和维护。
🖥️ 多架构支持
同时支持三种主流CPU架构的网络引导启动:
- x86_64:兼容Intel、AMD处理器,支持BIOS和UEFI双模式
- ARM64:兼容华为鲲鹏、飞腾等ARM架构服务器和桌面
- LoongArch64:兼容龙芯3A5000及以上处理器
📦 多镜像管理
支持同时配置多个ISO镜像源,通过Web界面灵活切换选择,满足不同场景需求。
🤖 无人值守安装
支持Preseed、Kickstart等多种自动应答文件格式,实现操作系统全程自动化安装,无需人工干预。
📊 实时监控
Web界面实时显示所有客户端的安装进度和状态,便于运维人员掌控全局。
🔒 访问控制
支持MAC地址黑白名单功能,可精确控制哪些客户端可以访问PXE服务。
📁 外挂文件
支持附加外部文件到镜像,可注入驱动、预装软件,满足定制化需求。
架构支持详情
引导协议支持
| 协议 | 描述 | 适用场景 |
|---|---|---|
| PXELINUX | 传统PXE引导协议 | BIOS模式启动 |
| iPXE | 开源PXE固件,支持HTTP引导 | 高速网络环境 |
| GRUB2 | 通用引导加载器 | UEFI模式启动 |
各架构引导文件
| 客户端架构 | 固件类型 | 引导文件 |
|---|---|---|
| x86_64 | BIOS | pxelinux.0 / x86.kpxe |
| UEFI | syslinux.efi64 / grubx64.efi | |
| ARM64 | UEFI | grubaa64.efi / arm64.efi |
| iPXE | ipxe_efi/arm64.efi | |
| LoongArch64 | UEFI | grub.efi |
| iPXE | ipxe_efi/loongarch64.efi |
支持安装的操作系统
MPXE经过充分测试,兼容以下国产操作系统:
服务器操作系统
| 操作系统 | 版本 | 架构 | 支持状态 |
|---|---|---|---|
| 银河麒麟服务器 | V10SP1/SP2/SP3/SP3-2403/V11 | x86_64, ARM64, LoongArch64 | ✅ 完全支持 |
| OpenEuler | 22/24 | x86_64, ARM64 | ✅ 完全支持 |
| CentOS | 7/8 | x86_64 | ✅ 完全支持 |
| Anolis (龙蜥) | 8.9 | x86_64, ARM64 | ✅ 完全支持 |
| UOS服务器 | 1070 | x86_64, ARM64 | ✅ 完全支持 |
| 凝思 | 6_el22 | x86_64 | ✅ 完全支持 |
桌面操作系统
| 操作系统 | 版本 | 架构 | 支持状态 |
|---|---|---|---|
| 银河麒麟桌面 | V10/V10SP1/V11 | x86_64, ARM64, LoongArch64 | ✅ 完全支持 |
| Deepin | 25 | x86_64, ARM64 | ✅ 完全支持 |
| UOS桌面 | 1060/1070 | x86_64, ARM64 | ✅ 手动安装支持 |
| openKylin | 2.0 | ARM64 | ✅ 手动安装支持 |
能做什么
- 国产操作系统批量安装:支持同时为多台机器安装国产操作系统,大幅提升部署效率
- 多架构多镜像选择支持:一台PXE服务器支持多种架构、多种系统的安装选择
- 一键无人值守自动安装:配置一次,自动完成全部安装过程
- 实时监控安装进度:通过Web界面实时查看每台客户端的安装状态
- DHCP黑白名单控制:精细控制哪些设备可以使用PXE服务
- 外挂文件自定义:注入特殊驱动或预装软件,满足定制化需求
- NFS网络启动:通过NFS服务高效传输大文件镜像
- HTTP高速传输:支持HTTP协议传输,比传统方式更快
不能做什么
- Windows系统安装:MPXE专注于Linux/Unix类操作系统,不支持Windows
- 龙芯3A3000/4000等mips架构:这些老旧MIPS架构处理器不在支持范围内,仅支持LoongArch64架构的龙芯处理器
工作原理
MPXE通过网络引导(PXE)实现操作系统安装,整个流程如下:
引导流程图
┌─────────────────────────────────────────────────────────────────┐
│ PXE网络引导流程 │
├─────────────────────────────────────────────────────────────────┤
│ │
│ 1. 客户端加电启动 │
│ ↓ │
│ 2. BIOS/UEFI选择网络启动(PXE) │
│ ↓ │
│ 3. 客户端发送DHCP Discover请求 │
│ ↓ │
│ 4. PXE服务器(DHCP)分配IP并提供引导文件信息 │
│ ↓ │
│ 5. 客户端通过TFTP下载引导程序(GRUB/iPXE) │
│ ↓ │
│ 6. 引导程序加载并显示系统选择菜单 │
│ ↓ │
│ 7. 用户选择要安装的操作系统 │
│ ↓ │
│ 8. 通过NFS/HTTP挂载/下载镜像文件 │
│ ↓ │
│ 9. 启动操作系统安装程序(Anaconda/Debian Installer等) │
│ ↓ │
│ 10. 根据预设的应答文件完成自动化安装 │
│ ↓ │
│ 11. 安装完成,重启系统 │
│ │
└─────────────────────────────────────────────────────────────────┘
核心服务组件
| 服务 | 端口 | 功能 |
|---|---|---|
| DHCP | UDP 67 | 分配IP地址,分发引导文件位置 |
| TFTP | UDP 69 | 传输小型引导文件(GRUB、iPXE等) |
| HTTP | TCP 80 | 提供Web管理界面,高速传输大文件 |
| NFS | TCP 111, 2049 | 挂载ISO镜像,提供完整文件系统访问 |
问题反馈与交流
如果您在使用过程中遇到问题或有好的建议,欢迎通过以下方式联系我们:
- Q群:390480890
- 开源地址:https://gitee.com/misstar/mpxe
也欢迎您提交Issue或Pull Request,共同完善这个项目!