Btrfs 命令速成指南

家里的第二个磁盘阵列使用小主机,由于其内存有限,所以不再采用之前的zfs方案,转而使用Btrfs(B-Tree File System,一种现代的、高级的文件系统,支持快照、克隆、RAID、在线文件系统检查和修复等功能)。
最近简单折腾了下,这是一些常用的Btrfs命令及简要说明。
创建文件系统

mkfs.btrfs /dev/sdX

/dev/sdX:要格式化的磁盘或分区。

挂载文件系统

mount /dev/sdX /mnt/btrfs

/dev/sdX:包含Btrfs文件系统的磁盘或分区。
/mnt/btrfs:挂载点。

查看文件系统信息

btrfs filesystem show /mnt/btrfs

显示文件系统的详细信息,包括设备、UUID等。

创建子卷

btrfs subvolume create /mnt/btrfs/subvol_name

/mnt/btrfs/subvol_name:子卷的路径和名称。

列出所有子卷

btrfs subvolume list /mnt/btrfs

创建快照

btrfs subvolume snapshot /mnt/btrfs/subvol_name /mnt/btrfs/snapshot_name

/mnt/btrfs/subvol_name:源子卷的路径。
/mnt/btrfs/snapshot_name:快照的路径和名称。

删除子卷或快照

btrfs subvolume delete /mnt/btrfs/subvol_name

检查文件系统

btrfs check /dev/sdX

平衡文件系统

btrfs balance start /mnt/btrfs

重新分配数据块,优化存储空间。

调整文件系统大小

btrfs filesystem resize +10G /mnt/btrfs
btrfs filesystem resize -10G /mnt/btrfs

查看磁盘使用情况

btrfs filesystem df /mnt/btrfs

启用压缩

btrfs property set /mnt/btrfs compression zlib

启用压缩,支持的压缩算法有zliblzozstd

禁用压缩

btrfs property set /mnt/btrfs compression none