能否通过修改目录 extended attribute 的方式来同步 Downloads 目录到 iCloud Drive 中?

2019-01-04 22:35:56 +08:00
 yclissetj

因为 iCloud Drive 的空间比较大,所以想把 Downloads 目录也同步进来,但是苹果只有同步 Desktop 和 Documents 的选项呀,于是去研究了下。。
看了一下 iCloud Drive 目录感到非常奇怪: Desktop 和 Documents 目录显示的竟然不是快捷方式或者说替身 alias,左下角没有那个小尖头,为了确认在终端里再看一下: 是的没错同学,你们明明是软链接呀! 于是我尝试也做一个 Downloads 的软链接到 iCloud Drive 中来,可是同步到的仅仅是链接本身,对应的整个目录并不能被同步过去。 于是再仔细看了看,是不是那个 @ 符号的作用,查了之后知道这个东西是 Extended Attribute,是 MacOS 独有的用来记录文件属性用的。 可以在 ls 命令后加参数查看:

于是尝试用 xattr 命令为 Downloads 这个软链接也加上这个属性:

遗憾的是,这并不能帮助我成功的同步 Downloads 目录。因此想要请教各位大佬:

  1. 通过 ls -l@xattr -l 所看到的属性并不相同,这两者存在什么区别?
  2. 是因为这个属性才使得 iCloud Drive 目录下的软链也可以被同步其对应的原目录内容,还是说又是苹果在背后自己设置的允许 Desktop 与 Documents 通过这样的方式来同步。。

PS:感谢看到这里 😂 过程写的不是很详细,希望能抛砖引玉了~

1615 次点击
所在节点    macOS
8 条回复
zhaidoudou123
2019-01-04 22:47:57 +08:00
要不要考虑把整个目录移进去,然后原本的下载做一个软连接呢?
Sylv
2019-01-04 23:16:17 +08:00
iCloud Drive 不支持软链接,Desktop 和 Documents 应该是进行了特殊处理,肯定不是仅靠 Extended Attribute 来实现的,应该是没有办法把其它目录软链接到 iCloud Drive,只能反过来。
clavichord93
2019-01-05 10:06:18 +08:00
直接 hard link 呢
xjbeta
2019-01-05 13:12:01 +08:00
cd ~
ln -s Library/Mobile\ Documents/com~apple~CloudDocs/ icloud

之后怎么搞就不知道了
yclissetj
2019-01-05 15:34:45 +08:00
@zhaidoudou123 @Sylv 反向软链接应该是可以的 😂 就是强迫症有点受不了 😝 要是系统能优雅的实现是最好了 🐶
yclissetj
2019-01-05 15:35:47 +08:00
@clavichord93 MacOS/Linux 应该都不支持硬链接吧? 因为会有目录循环这种逻辑错误
clavichord93
2019-01-05 18:35:18 +08:00
@yclissetj 都支持吧,你直接 ln 试试?
lrigi
2019-01-06 10:45:59 +08:00
要不写个同步脚本?
freefilesync 应该就行

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/524009

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX