约 600 字
2 分钟
为什么我把 /home 换成了 Btrfs
-
-
无标签
摘要
从 ext4 切到 Btrfs 一年半的经验。Copy-on-Write snapshot、透明压缩省 170G、send/receive 增量备份,以及踩过的碎片化等坑。
从 ext4 切到 Btrfs 一年半了,写一下心路历程和踩过的坑。
为什么换
2024 年初,连续两个月笔记本硬盘做了两次 e2fsck。每次都折腾半天,ext4 没 snapshot 没办法无痛回滚。
Btrfs 的几个特性正好对症:
Copy-on-Write snapshot:几乎无成本创建文件系统级快照
透明压缩:写时压缩,读时解压
subvolume:可以独立挂载、独立备份
send/receive:增量备份协议
迁移过程(不重装的方案)
用 btrfs-convert 从 ext4 在线转的:
bash
坑: 转换完之后 不要立即删除 ext2 镜像,至少保留一周。
压缩效果
开 compress=zstd:3 之后:
bash
多出来 170G 空间。CPU 占用几乎看不出差异。
snapper 配置
配了三层 snapshot:
timeline:每小时一次
pre/post pacman:每次装包前后自动 snapshot
手动:重要操作前手动创建
回滚测试
故意 rm -rf ~/important/,然后:
bash
成功。important/ 完整恢复。
踩过的坑
碎片化:虚拟机 qcow2 镜像直接放 Btrfs 上,半年后性能掉一半
swapfile 不能用:用 swap partition
scrub 必须定期跑:每月一次
balance 别乱跑:单盘场景下意义不大
压缩用 zstd,不要用 lzo
send/receive 增量备份
bash
比 rsync 快很多,块级别去重。
一年半下来,回不去了。snapshot + 透明压缩 + send/receive 已经深度绑进工作流。
相关文章
暂无相关文章
