Answers:
首先进行完整备份,这样即使出现问题也不会丢失任何内容。
我相信你正在寻找 duperemove -d
“ Duperemove是一个简单的工具,用于查找重复的扩展区并提交以进行重复数据删除。当给定文件列表时,它将逐块对它们的内容进行哈希处理,并将这些哈希值相互比较,查找并分类彼此匹配的扩展区。当提供-d选项时,duperemove将使用btrfs-extent-same ioctl提交这些重复数据删除范围。
Duperemove有两种主要的操作模式,其中一种是另一种。
只读/非重复数据删除模式
在不使用-d(默认值)的情况下运行时,duperemove将打印出一个或多个匹配范围的表,该表已确定是重复数据删除的理想候选者。结果,只读模式对于查看duperemove与'-d'一起运行时可能会做什么有用。某些其他软件也可以使用输出来提交扩展数据块,以便在以后的时间进行重复数据删除。
重要的是要注意,此模式将不会打印出所有匹配范围的实例,而只会打印那些会考虑重复数据删除的实例。
通常,duperemove并不关心其处理范围的基础表示。其中一些可能已压缩,正在进行I / O,甚至已经进行了重复数据删除。在重复数据删除模式下,内核会处理这些详细信息,因此我们尝试不复制该工作。
重复数据删除模式
此功能与只读模式相似,不同之处在于,在“读取,哈希和比较”步骤中找到的重复范围实际上将被提交以进行重复数据删除。操作完成后,将打印已重复数据消除的总数据的估计值。通过比较重复数据删除前后每个文件中共享字节的总数来计算此估计值。
有关运行duperemove的更多详细信息,请参见duperemove手册页。”
这似乎没有出现在btrfs-tools包中,但是这里有一个git hub页面。此处提供最近的未解决和已解决的问题(又名脉冲)。
可在此PPA中找到所有当前受支持的Ubuntu版本的软件包
我必须重申,强烈建议进行备份。参见:https : //github.com/markfasheh/duperemove/issues/50
引用来源:https : //github.com/markfasheh/duperemove
手册页:https : //manpages.debian.org/testing/duperemove/duperemove.8.en.html
duperemove [options] files...
duperemove -rdh path1 path2 pathn
,-r
用于递归,-d
实际重复数据删除以及-h
便于人们阅读的数字。