它不需要由 完成rsync
,但是不必编写脚本来执行此操作会很好,并且rsync
非常接近我想要的。
rsync -a
( 或-l
) 可以保留符号链接,并且-L
可以取消引用符号链接并将其复制为普通文件/目录。但是,是否可以保留符号链接,并复制链接指向的文件/目录?
这是一个例子。假设我们有这个文件夹层次结构:
dirA/link_to_file -> ../dirB/file
dirA/link_to_dir -> ../dirC
dirB/file
dirB/not_this_file
dirC/file
dirC/file2
dirD/others
Run Code Online (Sandbox Code Playgroud)
当我这样做rsync -aR dirA dest
(或其他事情)时,我希望这些出现在dest
:
dirA/link_to_file -> ../dirB/file
dirA/link_to_dir -> ../dirC
dirB/file
dirC/file
dirC/file2
Run Code Online (Sandbox Code Playgroud)
这可能rsync
吗?谢谢你。
让我们假设可以忽略具有绝对路径或指向源目录外部的符号链接。
我的文件系统中有一些复杂的只读数据。它包含数千个 svn 存储库某些修订版的快照,以及回归测试的输出。快照之间的相同文件已经使用硬链接进行了重复数据删除。这样,存储容量不需要很大,但仍然消耗大量的inode,这让我的主文件系统的fsck痛苦地长。
我想将这些数据移动到另一个文件系统,这样它就不会对主文件系统产生太大影响。你有什么建议吗?Squashfs 似乎是一个可能的选择,但我必须检查它是否可以有效地处理硬链接。