![如何启动一个新的 Linux 发行版?](https://linux22.com/image/16631/%E5%A6%82%E4%BD%95%E5%90%AF%E5%8A%A8%E4%B8%80%E4%B8%AA%E6%96%B0%E7%9A%84%20Linux%20%E5%8F%91%E8%A1%8C%E7%89%88%EF%BC%9F%20.png)
我和我的一些朋友有兴趣开始一个新的 Linux 发行版。我们该怎么做呢?我们需要计划什么?
背景故事
我代表 Linux 系统管理员/实施者社区,他们的特殊需求包括:
- 特定的“精简”内核配置
- 适合我们“现场需求”的包管理
- 针对我们的“用例”优化的二进制包
- X-less系统
重点是:我们需要一个专门配置的生产质量的 Linux 发行版来运行只作为半虚拟化生产服务器。而不是跳过所有的圈子每次我们需要一个虚拟机化的服务器,我们非常想要一个半准备好的系统,针对其环境进行了优化。
由于这些虚拟机将是生产服务器,因此稳定性是必须的,老实说,我们目前所知的可用包管理系统并不能提供保证。Zypp
是Conary
最接近我们的需求的,但仍然遗漏了一些要点。
答案1
您可能想看看Linux 从头开始:
Linux From Scratch (LFS) 是一个项目,为您提供完全从源代码构建您自己的定制 Linux 系统的分步说明。
答案2
您将需要一个最小的运行系统(可能来自另一个发行版)来“引导”您自己的发行版,并至少让 gcc 或另一个 C 编译器运行。然后,您需要首先确定哪些核心库(包括 libc)和软件构成系统的基本“未安装软件包”状态。然后,获取这些库和软件的源代码并编译它们,确保所有软件都能找到它需要的库,然后开始创建您的底层基础环境。
基本上,您的引导环境只不过是一个正在运行的内核,以及获得基本 shell、C 编译器以及诸如rm
、cp
等基本东西所需的绝对最低限度的tar
工作。接下来您应该启动并运行 Perl。创建基本系统后,您需要保留它并创建一些引导脚本,这些脚本使系统从初始引导到带有编译器的可用 shell。
然后你需要设计/编写一个包系统和格式,并将源代码下载到你要打包的软件中,编译并打包,并为你的包设计一个健壮的分发系统。这一切都不是微不足道的。祝你好运。
答案3
如果您只需要一组默认应用程序,您可以使用一些简单的工具自定义现有发行版(例如 ubuntu)。http://maketecheasier.com/reconstructor-creating-your-own-ubuntu-distribution/2008/07/05
答案4
有一个网站,您可以在那里看到所有发行版以及它们的简单描述和概述。因此它可以帮助您选择最好的一个:
但首先我建议您使用 Ubuntu 或 Kubuntu。如此简单且用户友好。