删除文件花费的时间太长
简短版本:rm -rf mydir,mydir(递归地)包含250万个文件,在大多数空闲的计算机上大约需要12个小时。 更多信息:大部分要删除的文件是指向其他目录中文件的硬链接(实际上,删除的目录是由进行的最旧的备份rsnapshot;rm命令实际上是由提供的rsnapshot)。因此,大多数目录条目都将被删除-文件内容本身并不多。它大约是几十GB。 我不确定btrfs是罪魁祸首。我记得在开始使用备份之前,备份也非常慢btrfs,但是我不确定删除是否缓慢。 该计算机是具有4 GB RAM的Intel Core i5 2.67 GHz。它有两个SATA磁盘:一个有操作系统和其他一些东西,备份磁盘是1 TB WDC WD1002FAEX-00Z3A0。主板是华硕P7P55D。 编辑:该机器是Linux的Debian狂潮3.16.3-2~bpo70+1。这是文件系统的挂载方式: root@thames:~# mount|grep rsnapshot /dev/sdb1 on /var/backups/rsnapshot type btrfs (rw,relatime,compress=zlib,space_cache) 编辑:使用rsync -a --delete /some/empty/dir mydir大约需要6个小时。与相比有很大的改进rm -rf,但我认为仍然太多了。(为什么rsync会比rm以下解释更快:“ [大多数文件系统以btree格式存储其目录结构,删除文件的顺序[...]很重要。执行取消链接时需要避免重新平衡btree。 .... rsync -a --delete...按顺序删除”) 编辑:我附加了另一个磁盘,该磁盘在目录中(递归)有220万个文件,但是在XFS上。以下是一些比较结果: On the XFS disk On the BTRFS disk Cached reads[1] 10 GB/s 10 …