Rsync:跳过设置了粘滞位的文件
Rsync: skip files with sticky bit set
我正在 Linux 上备份一个 ext4 磁盘,其中一些文件的长度为零并且这些有趣的权限:
------------T。 2 myuser mygroup 0 2019 年 3 月 5 日文件名
据我了解,它们是该磁盘上以前的 glusterfs 运行 的残留物,在复制数据时可以安全地跳过它们。但是 rsync 给了我这个一般错误,可能是因为缺少读取权限:
rsync:send_files 无法打开“文件名”:权限被拒绝 (13)
如何根据设置的粘性位告诉 rsync 跳过这些文件?我想将这些问题与其他可能的文件权限问题分开。
rsync 似乎没有任何专门处理这种情况的方法,但您可以做的是预先使用 find
构建要排除的文件列表。例如:
find dir -type f ! -perm /777 >list
rsync -a --exclude-from=list dir destdir
-perm /777
查找在模式 777 中设置了至少一位的文件,而 !
否定了这一点。
我正在 Linux 上备份一个 ext4 磁盘,其中一些文件的长度为零并且这些有趣的权限:
------------T。 2 myuser mygroup 0 2019 年 3 月 5 日文件名
据我了解,它们是该磁盘上以前的 glusterfs 运行 的残留物,在复制数据时可以安全地跳过它们。但是 rsync 给了我这个一般错误,可能是因为缺少读取权限:
rsync:send_files 无法打开“文件名”:权限被拒绝 (13)
如何根据设置的粘性位告诉 rsync 跳过这些文件?我想将这些问题与其他可能的文件权限问题分开。
rsync 似乎没有任何专门处理这种情况的方法,但您可以做的是预先使用 find
构建要排除的文件列表。例如:
find dir -type f ! -perm /777 >list
rsync -a --exclude-from=list dir destdir
-perm /777
查找在模式 777 中设置了至少一位的文件,而 !
否定了这一点。