解决Btrfs文件系统ext2_saved文件磁盘占用异常

最近在 `OpenMediaVault 4.1.22-1(Arrakis)` 进行磁盘文件占用分析的时候,发现磁盘空间异常占用问题,如下:

root@openmediavault:/media/6357625f-c966-49ba-9c90-9e8f8ff50433# du -ah --max-depth=1
0	./lost+found
1.5T	./MyCloud
8.0K	./aquota.user
8.0K	./aquota.group
1.3T	./ext2_saved
4.0K	./WDMyCloudSync.sh
2.7T	.

这个 `1.3T ./ext2_saved`  文件是不存在的,并且没办法通过常规命令删除。

这个文件产生的原因是,执行过 从 `EXT3/4` 转换转化分区到 `Btrfs` :

$ btrfs-convert /media/6357625f-c966-49ba-9c90-9e8f8ff50433

完成转换需要删除备份的 `ext2_saved` 子卷,否则空间会不能释放。 请注意,如果没了它(备份子卷),你将没办法还原回 `EXT3/4` 文件系统。

$ sudo apt-get install btrfs-tools

# 执行,然后无视报错
$ btrfs subvolume delete /media/6357625f-c966-49ba-9c90-9e8f8ff50433/ext2_saved

可能会报错:

ERROR: cannot access subvolume /media/6357625f-c966-49ba-9c90-9e8f8ff50433/ext2_saved: No such file or directory

无视这个报错即可。

完成后再次查询文件占用空间:

root@openmediavault:/media/6357625f-c966-49ba-9c90-9e8f8ff50433# du -ah --max-depth=1
0	./lost+found
1.5T	./MyCloud
8.0K	./aquota.user
8.0K	./aquota.group
4.0K	./WDMyCloudSync.sh
1.5T	.

可以看到空间已经被释放了。

参考链接