我的一个文件系统有许多符号链接,链接到文件系统中的目录。
是否可以创建链接备份起作用的文件系统的备份(即仍然指向文件系统备份中的正确目录)?我目前用于rsync
创建备份。谢谢。
答案1
是可以复制的相对的使用--links
选项的符号链接:
-l, --links When symlinks are encountered, recreate the symlink on the destination.
还:
请注意,--archive 意味着--links。
例子:
$ mkdir /tmp/tarsnap-test/
$ cd /tmp/tarsnap-test/
$ mkdir orig backup
$ cd orig/
$ mkdir dir
$ ln -s dir symlink
$ ll
total 4.0K
drwxr-xr-x 2 ja ja 4.0K Mar 4 14:26 dir
lrwxrwxrwx 1 ja ja 3 Mar 4 14:26 symlink -> dir
$ cd ../backup/
$ rsync -avz /tmp/tarsnap-test/orig/ .
sending incremental file list
./
symlink -> dir
dir/
sent 88 bytes received 22 bytes 220.00 bytes/sec
total size is 3 speedup is 0.03
$ ll
total 4.0K
drwxr-xr-x 2 ja ja 4.0K Mar 4 14:26 dir
lrwxrwxrwx 1 ja ja 3 Mar 4 14:26 symlink -> dir
但是,无法使用 rsync 复制绝对符号链接。如果包含绝对符号链接的原始目录被复制到目标目录中,符号链接仍然指向原始文件系统。您可以使用symlinks
工具来清理这个混乱。