解决itunes无法上传音乐到icloud的问题(上传下载极慢)

经过几天折腾总算搞定,说到底还是墙的问题。问题详情不再描述,反正就是各种恶心传不上去,20多个mp3一个通宵传不完,偶尔一两个可以成功,要么失败要么上传时间无限长不说有多恶心了。

解决方法1:

使用VPN并配置所有接收流量都走VPN。

解决方法2(推荐):

itunues使用全局http代理,所以用shadowsocks就可以搞定,shadowsocks我这边用的pac控制(非浏览器插件),每次切换全局模式经常忘了换回来,这么做不科学。从apple官网查到itunes使用的服务器和端口(關於 macOS、iOS 和 iTunes 伺服器主機連線與 iTunes 背景程序),经过测试,代理其中*.amazonaws.com即可,pac规则如下:

||*.amazonaws.com^

如果不行,可以重启itunes试试。

弄上之后上传速度极快。

问题是aws全走代理了,实际上是没必要的,只不过没有分析出具体的子域名,通过charles抓包找到对应子域名,这个子域名可能不同地区有区别或者会变,目前正在观测中,发现规律改下pac匹配即可。

||s3-external-1.amazonaws.com^

手机上同理,我用的是Shadowrocket软件,配置如下:

版本信息如下:

freefilersync和rsync解决不同mac机器本地文件同步问题

补充:如果能满足需求,直接以文件夹形式共享有更合理的方法,以ShadowsocksX-NG为例

ln -s /Users/Ares/Library/Mobile Documents/com~apple~CloudDocs/Ares/.ShadowsocksX-NG ~/.ShadowsocksX-NG

多台机器使用软链即可!

 

场景如下:

shadowssocks 用户PAC需要不同机器全自动同步(通过iCloud),shadowssocks用户pac没有相关配置文件指定配置目录,默认在$HOME/.ShadowsocksX-NG/user-rule.txt。使用硬链接或硬链接套软连接都不行,因为通过shadowsocks内部修改user-rule.txt会导致文件inode变化,inode>1通过vi修改不会导致inode变化,但是icloud同步文件inode会变化,结论:只能通过外部实现。

mac下比较著名的是goodSync,大家伙100Mb,破解版安装也是非常麻烦,因为没安装成功,找到了一个更好的软件,freeFileRsync,内部有一个RealTimeSync可以完美达到目的。

需要解决的问题是

  1. iCloud死循环
  2. RealTimeSync自身死循环
  3. RealTimeSync命令中rsync死循环。

1的产生主要是由于3,2通过修改空闲时间解决(应该大于命令执行时间即可,默认10是个不错的选择),3通过 tu参数解决。

命令行:

rsync -tu /Users/Ares/.ShadowsocksX-NG/user-rule.txt /Users/Ares/Library/Mobile\ Documents/com~apple~CloudDocs/Ares/Document/shadowsocks/user-rule.txt;rsync -tu /Users/Ares/Library/Mobile\ Documents/com~apple~CloudDocs/Ares/Document/shadowsocks/user-rule.txt /Users/Ares/.ShadowsocksX-NG/user-rule.txt

所有需要同步的机器上都配置相同的RealTimeSync即可。

本套环境的强大之处在于可以同步任意非iCloud文件。

freeFileSync下载:

https://www.freefilesync.org/download.php