<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>系统备份 &#8211; mylogs.cn</title>
	<atom:link href="https://mylogs.cn/tag/%e7%b3%bb%e7%bb%9f%e5%a4%87%e4%bb%bd/feed/" rel="self" type="application/rss+xml" />
	<link>https://mylogs.cn</link>
	<description>发现、记录、分享</description>
	<lastBuildDate>Sun, 16 Aug 2026 15:03:16 +0000</lastBuildDate>
	<language>zh-Hans</language>
	<sy:updatePeriod>
	hourly	</sy:updatePeriod>
	<sy:updateFrequency>
	1	</sy:updateFrequency>
	
	<item>
		<title>把整套 Linux 桌面打包带走：用 Penguin’s Eggs 做成可启动镜像</title>
		<link>https://mylogs.cn/penguins-eggs-linux-desktop-iso/</link>
		
		<dc:creator><![CDATA[steve, zhang]]></dc:creator>
		<pubDate>Sun, 16 Aug 2026 15:02:58 +0000</pubDate>
				<category><![CDATA[科技]]></category>
		<category><![CDATA[ISO镜像]]></category>
		<category><![CDATA[Linux]]></category>
		<category><![CDATA[Linux桌面]]></category>
		<category><![CDATA[可启动镜像]]></category>
		<category><![CDATA[系统备份]]></category>
		<guid isPermaLink="false">https://mylogs.cn/penguins-eggs-linux-desktop-iso/</guid>

					<description><![CDATA[把整套 Linux 桌面打包带走：用 Penguin’s Eggs 做成可启动镜像 重装一次 Linux 桌面 [&#8230;]]]></description>
										<content:encoded><![CDATA[
<p class="wp-block-paragraph">把整套 Linux 桌面打包带走：用 Penguin’s Eggs 做成可启动镜像</p>



<figure data-wp-context="{&quot;imageId&quot;:&quot;6a837603542bd&quot;}" data-wp-interactive="core/image" data-wp-key="6a837603542bd" class="wp-block-image size-large aligncenter wp-lightbox-container"><img fetchpriority="high" decoding="async" width="1200" height="675" data-wp-class--hide="state.isContentHidden" data-wp-class--show="state.isContentVisible" data-wp-init="callbacks.setButtonStyles" data-wp-on--click="actions.showLightbox" data-wp-on--load="callbacks.setButtonStyles" data-wp-on--pointerdown="actions.preloadImage" data-wp-on--pointerenter="actions.preloadImageWithDelay" data-wp-on--pointerleave="actions.cancelPreload" data-wp-on-window--resize="callbacks.setButtonStyles" src="https://mylogs.cn/wp-content/uploads/2026/08/a8316d4988db7962a732557d6e967d81_header.webp" alt="把整套 Linux 桌面打包带走：用 Penguin’s Eggs 做成可启动镜像" class="wp-image-5098" style="max-width:100%;height:auto;" srcset="https://mylogs.cn/wp-content/uploads/2026/08/a8316d4988db7962a732557d6e967d81_header.webp 1200w, https://mylogs.cn/wp-content/uploads/2026/08/a8316d4988db7962a732557d6e967d81_header-300x169.webp 300w, https://mylogs.cn/wp-content/uploads/2026/08/a8316d4988db7962a732557d6e967d81_header-1024x576.webp 1024w, https://mylogs.cn/wp-content/uploads/2026/08/a8316d4988db7962a732557d6e967d81_header-768x432.webp 768w" sizes="(max-width: 1200px) 100vw, 1200px" /><button
			class="lightbox-trigger"
			type="button"
			aria-haspopup="dialog"
			data-wp-bind--aria-label="state.thisImage.triggerButtonAriaLabel"
			data-wp-init="callbacks.initTriggerButton"
			data-wp-on--click="actions.showLightbox"
			data-wp-style--right="state.thisImage.buttonRight"
			data-wp-style--top="state.thisImage.buttonTop"
		>
			<svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" fill="none" viewBox="0 0 12 12">
				<path fill="#fff" d="M2 0a2 2 0 0 0-2 2v2h1.5V2a.5.5 0 0 1 .5-.5h2V0H2Zm2 10.5H2a.5.5 0 0 1-.5-.5V8H0v2a2 2 0 0 0 2 2h2v-1.5ZM8 12v-1.5h2a.5.5 0 0 0 .5-.5V8H12v2a2 2 0 0 1-2 2H8Zm2-12a2 2 0 0 1 2 2v2h-1.5V2a.5.5 0 0 0-.5-.5H8V0h2Z" />
			</svg>
		</button><figcaption class="wp-element-caption">图片来源：How-To Geek</figcaption></figure>





<p class="wp-block-paragraph">重装一次 Linux 桌面往往需要大半天：克隆仓库、安装软件包、恢复配置文件、跑初始化脚本，把数月里积攒的每一项偏好重新拼回来。与其每次从零搭建，不如把正在使用的整套环境直接打包成可启动镜像，装到另一台机器上就能原样复活。实现这一点的工具是 Penguin’s Eggs。</p>



<h2 class="wp-block-heading">什么是 Penguin’s Eggs</h2>



<p class="wp-block-paragraph">Penguin’s Eggs 的设计目标，是把一台正在运行的 Linux 安装「重新加工」（remaster）成一个可启动的混合 ISO 镜像。它支持主流发行版，基本原理是：抓取当前操作系统，为重新加工准备好文件系统，生成一个经过压缩的 SquashFS 镜像，再围绕它构建出可启动的 ISO。</p>



<p class="wp-block-paragraph">这套工具并非新近出现，内部已经过多次演进。它的命令行入口是 <code>eggs</code>，而 <code>coa</code> 是一个基于 Go 语言编写的编排器，也作为可互换的命令别名使用。</p>



<h2 class="wp-block-heading">配置：决定镜像里装什么</h2>



<p class="wp-block-paragraph">正式重新加工之前，先进入配置界面：</p>



<pre class="wp-block-code"><code>sudo coa config</code></pre>



<p class="wp-block-paragraph">当前配置界面允许修改多项设置，包括实时用户密码、压缩算法、压缩级别、ISO 文件名前缀，以及应当从 SquashFS 镜像中排除的文件清单。这些设置保存在 <code>/etc/penguins-eggs.d/</code> 目录下。</p>



<p class="wp-block-paragraph">这一步的意义在于，默认配置不必决定每一个 ISO 的产出方式。例如想把某个目录排除在镜像之外，只需把它加入自定义排除列表，而不必手动删掉源系统里的目录。</p>



<p class="wp-block-paragraph">配置时还要做一个关键选择：是要一个干净的实时系统，还是一个包含用户数据的克隆。普通重新加工会生成一个不含 <code>/home</code> 完整内容的实时系统；而克隆模式（clone）则专门用于保留用户与 <code>/home</code>。</p>



<h2 class="wp-block-heading">生成可启动 ISO</h2>



<p class="wp-block-paragraph">系统和配置就绪后，用下面的命令生成镜像：</p>



<pre class="wp-block-code"><code>sudo coa remaster</code></pre>



<p class="wp-block-paragraph">生成的 ISO 默认写入 Penguin’s Eggs 的工作目录 <code>/home/eggs</code>。如果希望镜像包含自己的用户环境，则使用克隆模式：</p>



<pre class="wp-block-code"><code>sudo eggs remaster clone</code></pre>



<p class="wp-block-paragraph"><code>clone</code> 选项会告诉 Penguin’s Eggs 在生成的镜像中保留用户与 <code>/home</code>。</p>



<p class="wp-block-paragraph">重新加工过程中，工具会构建实时文件系统并打包成可启动的混合 ISO。它同时支持 BIOS 与 UEFI 启动，因此镜像既可以在虚拟机里测试，也能写入 U 盘实机启动。耗时主要取决于需要压缩的数据量：家目录庞大、安装软件众多的系统，自然比最小化桌面安装耗时更久。</p>



<h2 class="wp-block-heading">测试与安装</h2>



<p class="wp-block-paragraph">生成后先用虚拟机验证更为稳妥。用 QEMU 启动该 ISO，检查桌面环境、应用程序、配置文件和脚本是否如预期出现，能在写入 U 盘前先发现问题。</p>



<p class="wp-block-paragraph">实时系统（开发团队给它起了个有趣的昵称「企鹅幼鸟」）高度还原了被捕获的环境：桌面配置、应用程序、克隆模式下包含的文件都一应俱全。接下来测试安装流程，安装器通过 <code>sysinstall</code> 暴露，Penguin’s Eggs 同时支持图形化的 Calamares 与终端式的 Krill。图形安装命令为：</p>



<pre class="wp-block-code"><code>sudo coa sysinstall calamares</code></pre>



<p class="wp-block-paragraph">终端界面则为：</p>



<pre class="wp-block-code"><code>sudo coa sysinstall krill</code></pre>



<p class="wp-block-paragraph">Krill 是 Penguin’s Eggs 的默认安装器，在没有图形环境、只能用命令行的机器上尤其有用。在虚拟机里完成一次全新安装、重启之后，得到的系统比常规全新安装更接近原始环境。真正的考验是把它搬到另一台机器：从 ISO 启动、跑安装器，虽然仍需选择目标磁盘、配置安装等常规步骤，但环境本身早已准备就绪。</p>



<h2 class="wp-block-heading">局限与适用场景</h2>



<p class="wp-block-paragraph">克隆正在使用的工作站存在一个明显限制：一套围绕特定显卡、特定存储布局或特定网卡配置的 Linux 安装，搬到另一台电脑后表现可能不同。这种方法最适合「源系统保持较高硬件无关性」的场景。</p>



<p class="wp-block-paragraph">理解这一限制之后，收益就很实在了。最大的优势是重装工作站时省下的时间——不必再回忆数月里累积的每一个软件包、每一项桌面偏好、每一处细微配置。Linux 环境由此变成一种可以捕获、测试、存储、再次部署的产物，这比单纯在 Git 上收集一堆点配置文件更具实用价值。</p>



<p class="has-small-font-size wp-block-paragraph">来源：How-To Geek（作者 Umair Khurshid，2026 年 8 月 16 日）</p>

]]></content:encoded>
					
		
		
			</item>
		<item>
		<title>用 FOG 搭个网络恢复服务器，电脑崩了也能秒还原</title>
		<link>https://mylogs.cn/%e7%94%a8-fog-%e6%90%ad%e4%b8%aa%e7%bd%91%e7%bb%9c%e6%81%a2%e5%a4%8d%e6%9c%8d%e5%8a%a1%e5%99%a8%ef%bc%8c%e7%94%b5%e8%84%91%e5%b4%a9%e4%ba%86%e4%b9%9f%e8%83%bd%e7%a7%92%e8%bf%98%e5%8e%9f/</link>
		
		<dc:creator><![CDATA[steve, zhang]]></dc:creator>
		<pubDate>Sun, 16 Aug 2026 00:05:44 +0000</pubDate>
				<category><![CDATA[经验与技巧]]></category>
		<category><![CDATA[FOG]]></category>
		<category><![CDATA[Linux]]></category>
		<category><![CDATA[PXE网络启动]]></category>
		<category><![CDATA[家庭实验室]]></category>
		<category><![CDATA[开源工具]]></category>
		<category><![CDATA[系统备份]]></category>
		<guid isPermaLink="false">https://mylogs.cn/%e7%94%a8-fog-%e6%90%ad%e4%b8%aa%e7%bd%91%e7%bb%9c%e6%81%a2%e5%a4%8d%e6%9c%8d%e5%8a%a1%e5%99%a8%ef%bc%8c%e7%94%b5%e8%84%91%e5%b4%a9%e4%ba%86%e4%b9%9f%e8%83%bd%e7%a7%92%e8%bf%98%e5%8e%9f/</guid>

					<description><![CDATA[你有没有过这种经历：只改了一处网络配置，或者手滑把引导分区改了名，整台电脑就再也起不来，一下午全耗在重装系统上 [&#8230;]]]></description>
										<content:encoded><![CDATA[
<p class="wp-block-paragraph">你有没有过这种经历：只改了一处网络配置，或者手滑把引导分区改了名，整台电脑就再也起不来，一下午全耗在重装系统上。虚拟机有快照可以回退，可物理机没有；U 盘恢复盘倒是能用，前提是你能找到那块盘、还恰好备份过。</p>



<figure data-wp-context="{&quot;imageId&quot;:&quot;6a837603552cc&quot;}" data-wp-interactive="core/image" data-wp-key="6a837603552cc" class="wp-block-image size-large aligncenter wp-lightbox-container"><img decoding="async" width="1200" height="799" data-wp-class--hide="state.isContentHidden" data-wp-class--show="state.isContentVisible" data-wp-init="callbacks.setButtonStyles" data-wp-on--click="actions.showLightbox" data-wp-on--load="callbacks.setButtonStyles" data-wp-on--pointerdown="actions.preloadImage" data-wp-on--pointerenter="actions.preloadImageWithDelay" data-wp-on--pointerleave="actions.cancelPreload" data-wp-on-window--resize="callbacks.setButtonStyles" src="https://mylogs.cn/wp-content/uploads/2026/08/0d79930d366f62508a385934606a64fa_header.webp" alt="用 FOG 搭个网络恢复服务器，电脑崩了也能秒还原" class="wp-image-5025" style="max-width:100%;height:auto;" srcset="https://mylogs.cn/wp-content/uploads/2026/08/0d79930d366f62508a385934606a64fa_header.webp 1200w, https://mylogs.cn/wp-content/uploads/2026/08/0d79930d366f62508a385934606a64fa_header-300x200.webp 300w, https://mylogs.cn/wp-content/uploads/2026/08/0d79930d366f62508a385934606a64fa_header-1024x682.webp 1024w, https://mylogs.cn/wp-content/uploads/2026/08/0d79930d366f62508a385934606a64fa_header-768x511.webp 768w" sizes="(max-width: 1200px) 100vw, 1200px" /><button
			class="lightbox-trigger"
			type="button"
			aria-haspopup="dialog"
			data-wp-bind--aria-label="state.thisImage.triggerButtonAriaLabel"
			data-wp-init="callbacks.initTriggerButton"
			data-wp-on--click="actions.showLightbox"
			data-wp-style--right="state.thisImage.buttonRight"
			data-wp-style--top="state.thisImage.buttonTop"
		>
			<svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" fill="none" viewBox="0 0 12 12">
				<path fill="#fff" d="M2 0a2 2 0 0 0-2 2v2h1.5V2a.5.5 0 0 1 .5-.5h2V0H2Zm2 10.5H2a.5.5 0 0 1-.5-.5V8H0v2a2 2 0 0 0 2 2h2v-1.5ZM8 12v-1.5h2a.5.5 0 0 0 .5-.5V8H12v2a2 2 0 0 1-2 2H8Zm2-12a2 2 0 0 1 2 2v2h-1.5V2a.5.5 0 0 0-.5-.5H8V0h2Z" />
			</svg>
		</button><figcaption class="wp-element-caption">图片来源：MakeUseOf</figcaption></figure>





<p class="wp-block-paragraph">一位长期做企业 IT 的撰稿人分享了一套解法：用开源的 FOG（Free Open-Source Ghost）搭一台网络镜像服务器，让电脑像有了「撤销键」——他把一台故意弄崩的 Linux 机器，16 秒就还原回了原样。</p>



<h2 class="wp-block-heading">一、准备 FOG 服务器</h2>



<ol class="wp-block-list"><li>装一台 Ubuntu Server 24.04 LTS，分配 2 个 vCPU、2GB 内存、20GB 系统盘，再挂一块独立的 80GB 数据盘，专门用来存镜像。</li><li>把数据盘挂载到 <code>/images</code> 并写进 <code>/etc/fstab</code> 持久化：</li></ol>



<p class="wp-block-paragraph"><code>sudo mount /dev/sdb1 /images</code></p>



<p class="wp-block-paragraph">在 fstab 中加入：<code>LABEL=fog-images /images ext4 defaults 0 2</code></p>



<ol class="wp-block-list"><li>安装 FOG 1.5.10.2254，它会自动拉起 Dashboard、数据库、TFTP、NFS 与存储等组件。</li></ol>



<h2 class="wp-block-heading">二、把恢复网络隔离出来</h2>



<p class="wp-block-paragraph">PXE 网络启动依赖 DHCP 分配地址。若不隔离，客户端会从你家里局域网的 DHCP 取地址，根本进不了 FOG。做法是单独建一个仅主机网络（如 VMnet7）并关掉它的 DHCP，FOG 服务器一块网卡走 NAT 下软件包，另一块接这个隔离网（例如 <code>192.168.77.2/24</code>）。</p>



<p class="wp-block-paragraph">这里有个坑：FOG 用的 Kea DHCP 在 Ubuntu 上可能被 AppArmor 拦住——因为 <code>/etc/kea</code> 目录属主是 <code>_kea:_kea</code>，而以 root 启动的守护进程却被拒读配置。修正只需两句：</p>



<p class="wp-block-paragraph"><code>sudo chown root:_kea /etc/kea</code></p>



<p class="wp-block-paragraph"><code>sudo chmod 750 /etc/kea</code></p>



<h2 class="wp-block-heading">三、注册并抓取「黄金镜像」</h2>



<ol class="wp-block-list"><li>客户端从网络启动，Kea 分配地址与引导文件，TFTP 传入 iPXE，进入 FOG 菜单选「Quick Registration and Inventory」，按网卡 MAC 自动注册。</li><li>在 Dashboard 把该主机关联到一枚镜像（如 <code>linux-mint-golden</code>），镜像设置选「单盘-可调大小」、包含所有分区、用 Partclone 加 Zstandard 压缩。</li><li>排程「立即」捕获。FOG 只复制已用区块，一块 32GB 的盘实际只占约 3GB，抓图不到一分钟。</li></ol>



<h2 class="wp-block-heading">四、崩了就一键还原</h2>



<p class="wp-block-paragraph">在 Dashboard 给注册主机建一个「部署」任务——注意别误建「捕获」任务，否则好镜像会被覆盖。下次 PXE 启动，FOG 自动重建分区表与 EFI，把文件系统原样写回。前面那位撰稿人把 EFI 引导目录改名弄崩后，正是靠这一步 16 秒救回。</p>



<p class="wp-block-paragraph">注意事项：FOG 需要服务器、独立存储、DHCP/TFTP/iPXE/NFS 和隔离网段，不是几分钟能搞定的轻量方案；还原会重启客户端、中断当前系统；它也不是增量备份，同名镜像再次捕获会覆盖，可在 Dashboard 改名做版本管理。物理机还要额外处理驱动、固件与 Secure Boot。但它换来的是：一台坏掉的电脑，只要网启正常，就能退回你上次存好的状态。</p>



<p class="wp-block-paragraph">来源：MakeUseOf</p>
]]></content:encoded>
					
		
		
			</item>
	</channel>
</rss>
