Penguins’ Eggs 企鹅蛋

企鹅蛋

简介

Penguins' Eggs 是一个基于命令行(CLI)的配置工具,由意大利开发者 Piero Proietti 开发。它使用 TypeScript 编写(基于 Node.js),其核心功能是:将你当前正在运行的 Linux 系统“重制”(Remaster)为一个可引导的 Live ISO 镜像。

简单来说,它可以把你当前系统里的所有软件、配置、甚至个人数据(可选)打包成一个安装盘,你可以用这个安装盘在其他机器上部署出一模一样的系统。它支持多种架构(x86_64, i386, arm64 等)以及主流的 Linux 发行版。

能做什么?

  • 系统克隆 (System Cloning): 捕捉当前系统的快照,生成一个 ISO 镜像。这包括你安装的内核、驱动、桌面环境和应用程序。
  • 制作定制化发行版: 开发者可以用它来制作基于 Debian/Ubuntu/Arch 的个性化衍生版。
  • 安装器集成: 生成的 ISO 镜像可以使用 Calamares(现代化的图形安装器)或其内置的 krill(简易文本安装器)重新安装到硬盘。
  • “衣橱”功能 (Wardrobe): 这是该项目的一大特色。它允许用户通过脚本和配置文件(称为 components 和 costumes)自动化地定制系统(如安装特定的办公套件、开发环境或主题)。
  • 支持多种发行版: 极广的兼容性,包括 Debian, Devuan, Ubuntu, Arch Linux, Manjaro, Rocky Linux, AlmaLinux 等。
  • 压缩选项: 支持多种压缩算法(xz, zstd, gzip),允许在镜像大小和生成速度之间取得平衡。

产品对比

Penguins' Eggs 的优势

  • 跨发行版支持: 相比于很多只针对 Ubuntu 或只针对 Debian 的工具,penguins-eggs 几乎覆盖了主流的 Linux 家族,这在同类工具中非常罕见。
  • 现代技术栈: 使用 TypeScript 和 Node.js 开发,代码结构清晰,通过 oclif 框架构建命令行,交互体验比传统的 Shell 脚本工具更好。
  • 完善的安装器支持: 它不仅能生成 Live 镜像,还能完美对接 Calamares,使得生成的系统看起来像一个专业的商业发行版。
  • 灵活的私密性控制: 默认情况下会排除用户私有数据(生成再分发版),但通过 --clone 参数也可以包含用户数据(用于个人备份)。
  • 活跃的更新与文档: 项目维护频率高,文档详细(甚至有专门的在线手册),并提供预编译的 deb/rpm/pkg.tar.zst 包。

Penguins' Eggs 的劣势

  1. 命令行依赖: 对于习惯 GUI 操作的普通用户来说,penguins-eggs 需要在终端输入命令,不如 CubicMX Snapshot 那样点击即所得。
  2. 运行时开销: 它是基于 Node.js 的,这意味着在极其精简的嵌入式系统或超老旧设备上,为了运行这个工具本身就需要安装几十 MB 的 Node.js 运行环境。
  3. 学习曲线: “衣橱 (Wardrobe)”系统虽然强大,但配置文件(YAML)和脚本逻辑需要用户花时间去学习如何编写。
  4. 非绝对的“离线”修改: 相比 Cubic 可以直接打开一个 ISO 镜像进行静默修改,Eggs 更多地是鼓励你先配置好一个真实的运行环境再进行打包。如果你只想简单换个 ISO 里的图标而不安装它,Eggs 显得有些重。

为了直观展现劣势,将其与同类产品(如 Cubic, MX Snapshot, Clonezilla, Remastersys)进行对比:

特性 Penguins' Eggs Cubic MX Snapshot Clonezilla
主要方式 运行中系统直接打包 离线 chroot 环境修改 ISO 运行中系统打包 磁盘位对位镜像
易用性 命令行操作,有一定门槛 图形界面,非常直观 图形界面,极易用 菜单驱动,较底层
通用性 极高 (多发行版) 仅限 Ubuntu/Debian 仅限 MX/antiX 极高 (独立于OS)

总结建议:如果你是一名系统管理员、发行版定制者或高级玩家,想要实现“一处配置,到处部署”,或者想为公司定制一套预装好环境的 Linux 系统,Penguins' Eggs 是目前开源社区中最强大、兼容性最好的选择之一。

但如果你只是想给>但如果你只是想给 Ubuntu ISO 镜像换个壁纸,Cubic可能会更简单直观。

1 基础命令及参数

1.1 基础自检与配置

  • eggs status
    • 查看当前系统环境、版本以及 eggs 是否已经准备就绪。
  • eggs helpeggs [子命令] --help
    • 查看所有命令列表,或查看某个特定命令的详细参数。
  • sudo eggs dad -d
    • Dad (爸爸) 脚本是配置助手。-d 参数表示“使用默认设置”。
    • 原理:它会自动安装一些必要的补丁和工具(如 Calamares 安装器),为打包做准备。
  • eggs mom
    • Mom (妈妈) 是一个交互式的 TUI(文本界面)帮助手册,你可以通过方向键选择查看各个功能的解释。

1.2 系统清理(维护类)

在打包前执行,可以减小生成的 ISO 体积。

  • sudo eggs cleanup
    • 作用:清理系统缓存(如 apt 缓存)、日志文件和临时文件。
    • 提示:这只是普通的系统垃圾清理,不会删掉你的个人文档。

1.3 核心打包命令

基本语法: sudo eggs produce [参数]
逻辑是:读取当前系统 -> 压缩 -> 生成 ISO。

常用参数说明:

  1. 模式选择(决定打包哪些):

    • --clone完整克隆。包含你所有的 /home 文件夹、账号、密码和个人文件。
    • (默认,不带参数)发行版模式。会剔除你的个人隐私数据,只保留系统环境和安装的软件,生成一个“干净”的系统镜像。
    • --cryptedclone:加密克隆。个人数据会被 LUKS 加密打包,安全性更高。
  2. 压缩等级(决定快慢和体积):

    • --fast:打包速度最快,但 ISO 文件最大(适合测试用)。
    • --standard:默认选项,速度和体积的平衡。
    • --max:打包最慢(吃 CPU),但 ISO 体积最小。
  3. 命名与路径:

    • --basename [名字]:给你的 ISO 起个名字,比如 --basename my-ubuntu-v1
    • --prefix [前缀]:在文件名前加个前缀。
  4. 其他有用选项:

    • --nointeractive:静默模式,打包过程中不弹窗问你问题。

4. 打包后的处理(管理类)

  • sudo eggs kill
    • 作用:删除之前生成的 ISO 镜像和临时工作目录。
    • 场景:当你打包失败了,或者想腾出磁盘空间时使用。
  • 生成的ISO默认路径永远在:/home/eggs/

安全提示:

1.produce命令运行期间会占用大量的 CPU 和内存,建议关闭不必要的程序。

2.确保你的磁盘空间充足(至少是你当前系统已用空间的 1.5 倍以上)。

2 安装

系统信息

暂无评论

发送评论 编辑评论


				
|´・ω・)ノ
ヾ(≧∇≦*)ゝ
(☆ω☆)
(╯‵□′)╯︵┴─┴
 ̄﹃ ̄
(/ω\)
∠( ᐛ 」∠)_
(๑•̀ㅁ•́ฅ)
→_→
୧(๑•̀⌄•́๑)૭
٩(ˊᗜˋ*)و
(ノ°ο°)ノ
(´இ皿இ`)
⌇●﹏●⌇
(ฅ´ω`ฅ)
(╯°A°)╯︵○○○
φ( ̄∇ ̄o)
ヾ(´・ ・`。)ノ"
( ง ᵒ̌皿ᵒ̌)ง⁼³₌₃
(ó﹏ò。)
Σ(っ °Д °;)っ
( ,,´・ω・)ノ"(´っω・`。)
╮(╯▽╰)╭
o(*////▽////*)q
>﹏<
( ๑´•ω•) "(ㆆᴗㆆ)
😂
😀
😅
😊
🙂
🙃
😌
😍
😘
😜
😝
😏
😒
🙄
😳
😡
😔
😫
😱
😭
💩
👻
🙌
🖕
👍
👫
👬
👭
🌚
🌝
🙈
💊
😶
🙏
🍦
🍉
😣
Source: github.com/k4yt3x/flowerhd
颜文字
Emoji
小恐龙
花!
上一篇