我想备份一个包含大量小文件的共享目录,这些文件经常被我的用户更改(添加/删除/编辑)。像往常一样,我通过/tar
等压缩程序使用和过滤内容。xz
lzip
我们将操作开始后的文件称为“旧文件”,将用户添加/删除的文件称为“新文件”。我可以接受新旧文件混合在一起,但是备份一个文件,其二进制文件的一半是旧的,另一半是新的,这是完全不可接受的。我已阅读以下答案这个问题并发现使用tar
根本不安全。
如果我首先使用命令将该目录复制到临时位置是否安全cp -r
?如果不是,我还有其他选择吗?使用 LVM 卷快照对我来说不是一个选择,因为我使用的是插入 OpenWrt 路由器 USB 端口的单个 2TB 便携式驱动器,我用来samba
共享它。此外,我还希望备份尽可能小,以便我可以将其上传到另一个文件服务器。
答案1
我建议您避免这样做,cp
因为您的文件内容会不断更新。仅根据属性cp
将新文件添加为复制文件时效率更高。cp
rsync
在这里将是更好的选择,因为您的文件内容会不断更新。因此,在这种情况下,rsync
在复制任何内容之前将确保源目录和目标目录之间是否存在任何差异。
我用于rsync
备份日志文件,该文件以 1.78 MB/s 的速度写入,没有出现问题。
您可以使用以下命令来备份目录rsync
,
rsync --archive --verbose [source] [destination]/
在哪里,
--archive
:启用存档模式--verbose
: 增加详细程度