我正在复制许多大文件(每个 50-500MB)。我观察到的是,即使df
报告没有剩余磁盘空间,rsync 仍然认为它正在同步文件。 (或者实际上,它报告的数量比下一个要同步的文件少一些。)当我注意到这种情况发生时,我在 rsync 进程上按了 Control+C,并且只然后它是否突然报告磁盘空间不足,报告其磁盘空间不足的文件大约是 20 个文件!
我有一个很多RAM 的大小,所以我假设所有内容都不会立即同步到磁盘,但是文件系统是否必须跟踪 RAM 中的已用空间才能知道空间何时耗尽,即使实际数据尚未写入?df
显示没有剩余磁盘空间的事实似乎支持这一假设。
如果情况有所不同,这是在两个 NTFS 格式驱动器之间运行 rsync 的 Linux 机器上。
当磁盘空间不足时,如何让 rsync 立即失败?
答案1
如果不再有磁盘空间,rsync
则应报告故障。
rsync
如果您以身份运行root
,您必须知道在某些系统上,root
用户可以享受普通用户无法获得的磁盘空间的好处。后者将得到 100% 的使用,df
而root
用户仍然有 1 到 5% 可供自己使用。
对于 NTFS 我无话可说。但是,以 ext4 为例,您可以使用以下命令获取保留块的数量dumpe2fs
:
dumpe2fs -h /dev/sd... | grep ^Reserved