温馨提示×

如何备份ubuntu fromscratch

小樊
45
2026-09-19 14:51:53
栏目: 智能运维

“Ubuntu From Scratch(UFB)”通常指从零开始手动构建 Ubuntu 系统(类似 LFS,但面向 Ubuntu),而不是用 ISO 安装好的系统。
因此,“备份 Ubuntu From Scratch”和备份普通 Ubuntu 不同,重点在于保存你构建过程和成果

下面按可恢复程度从简单到完整说明。


一、最推荐:备份整个构建目录(最简单)

如果你是在某个目录里构建的(如 /ufb~/ubuntu-from-scratch):

tar -czpf ufb-backup.tar.gz /ufb

恢复:

tar -xzpf ufb-backup.tar.gz -C /

✅ 适合:

  • 构建未完成
  • 想换机器继续构建

二、备份最终根文件系统(最常用)

当 From Scratch 已经变成一个可启动系统(在 /mnt/ufb 或类似目录):

cd /mnt/ufb
tar -czpf ufb-rootfs.tar.gz --one-file-system .

恢复:

mkdir -p /mnt/ufb
tar -xzpf ufb-rootfs.tar.gz -C /mnt/ufb

⚠ 注意:

  • 不要包含 /proc /sys /dev(用 --one-file-system
  • 启动相关文件(grub、kernel)要单独处理

三、用 rsync 增量备份(推荐长期使用)

rsync -aAXH --exclude=/proc --exclude=/sys \
      --exclude=/dev --exclude=/tmp \
      /mnt/ufb/ /backup/ufb/

优点:

  • 可多次备份
  • 占用小
  • 适合调试 From Scratch

四、整机镜像备份(最安全但最大)

如果你已经把 From Scratch 安装到真实磁盘:

dd if=/dev/sda of=ufb.img bs=4M status=progress

或更好用:

partclone.ext4 -c -s /dev/sda1 -o ufb.partclone

五、不要忘记这些“非文件”内容

From Scratch 很容易丢的:

1. 引导信息

dd if=/dev/sda bs=446 count=1 of=mbr.bin

或备份 grub:

tar -czpf grub.tar.gz /boot/grub

2. 分区表

sfdisk -d /dev/sda > sda.sfdisk

3. 内核与 initrd

cp /boot/vmlinuz-* /boot/initrd.img-* .

六、最“From Scratch”的备份方式(进阶)

构建脚本本身当备份:

ufb/
├── build.sh
├── packages.list
├── configs/
└── patches/

这样你可以:

在任何机器上重新生成 Ubuntu From Scratch

✅ 这是最干净、最“from scratch”的哲学


总结建议

场景 推荐方式
正在构建 tar 构建目录
已构建完成 rsync 根文件系统
已装到硬盘 partclone / dd
想完全可控 保存构建脚本

如果你愿意,可以告诉我:

  • 你现在是在 chroot 里还是已装好
  • 用的是 ext4 / btrfs / zfs
  • 是否要 可启动恢复盘

我可以直接给你一套可复制命令

0