Rsync 仅创建符号链接
Rsync 仅创建符号链接
我目前使用rsync非常顺利。它将我的所有文件从一个目录复制到另一个目录。唯一的问题是它会实际复制文件。\n我有很多大文件,我不想在所有文件上都有一个副本。我只想在新目录中创建一个符号链接,以便在网页上提供数据。源目录中有一些脚本和文件,我不希望公众看到。我正在将安全数据移动到Web根目录(目标)。\n我希望rsync能够在源目录中创建任何新文件的符号链接到目标目录。这样我就不会像现在这样占用硬盘空间了。我目前的方法很完美,只是缺少符号链接的部分。有没有办法让rsync跟踪并创建符号链接?\n
rsync -aP --exclude="file.sql" --exclude="*~" --exclude=".*" --exclude="*.sh" . ${destination}
Rsync仅创建符号链接的问题出现的原因是,当使用lndir创建符号链接并且在源目录中移除文件时,这些文件会在目标目录中丢失。
解决方法是使用rsync命令的--link-dest选项,该选项可以在目标目录中创建指向源目录中已删除文件的硬链接。
以下是解决该问题的示例代码:
rsync -av --link-dest=/path/to/source /path/to/source /path/to/destination
在上述代码中,/path/to/source是源目录的路径,/path/to/destination是目标目录的路径。通过使用--link-dest选项,rsync命令将在目标目录中创建指向源目录中已删除文件的硬链接。
使用上述解决方法,您可以确保即使在源目录中删除文件,目标目录中的符号链接也不会丢失。