Quantcast
Channel: 同步控 » Apple & iPod & iPhone
Viewing all articles
Browse latest Browse all 4

【案例分享】丁宇:我的移动 Mac 解决方案

$
0
0

# 编者按:本文作者 @FelixDing 系盛大创新院项目经理,人本设计沙龙活动创始人。

因为颈椎病的原因,我不堪忍受每天背着重达3公斤的 Mac Book Pro 上下班长途跋涉,因此在公司申请了 iMac。可是如何使两台电脑的数据保持同步?对于多少有些数据洁癖的人来说,这可是很重要的。

我所说的数据同步,不仅仅是指某个文件夹或某些程序的数据保持同步,而是当我需要时,我可以完整地使用 MBP 上的全部数据。比如我的照片、音乐、邮件、Adium 聊天记录,乃至各种系统设置、自己编写的 cron 脚本和通过 Port 安装的软件包。简单地说,就是两台电脑的数据必须保持严格一致。

有人说这不难,市面上有很多现成的方案。开始我也是这么想的,但我查阅大量资料并逐一实践过去后,发现它们几乎全都不可行,好在最终我找到了自己的解决方案,这篇小文就是可谓一部血泪史。

Dropbox/SugarSync

这是我最初想到的方案。它们设置简单,并且因为支持增量备份,我不需要太多的存储空间和高速网络,花费虽然高了些但还勉强可以接受。

但试用下来很快发现两个问题:一是我严重地低估了每天使用电脑所产生的数据量,大量的数据在备份时还好,但在恢复时就会慢得无法接受;二是对于一些跟启动有关的文件,因为在恢复时系统肯定已经启动完毕了,所以此时再恢复它们就会失效或者冲突,并且这一点非常麻烦。

因此不仅是 Dropbox/SugarSync 不可行,其它的网络同步方式也都行不通。既然如此,要传输数据只能靠外置存储了。USB 速度不够快,eSATA 在 Mac 上没有接口,所以唯一可用的就是火线 800,也就是 1394 B。下面就要考虑如何利用外置硬盘同步数据。

Apple Backup、Time Machine 和 Carbon Clone Copy (CCC)

这三者都是非常漂亮且稳妥的数据备份方案(Apple Backup 不能备份所有数据),前两个是官方软件,老牌的 CCC 则有很好的口碑,所以我开始的想法是:能不能利用它们把数据备份到硬盘上,然后在另外一台 Mac 上恢复?

查阅资料后放弃了此类方案:它们无一例外不支持增量恢复,要让我每次在使用电脑前都花数小时恢复数据,那我肯定是疯了。

rsync 及类似的实时同步工具

rsync 还算是一个基本靠谱的方案,经过简单的测试,rsync 配合 cron 脚本,可以比较好的完成两块硬盘间的实时同步工作。

rsync 唯一的缺点是:它是黑箱的,你不知道在同步的过程中哪些文件出了问题,并且即使你愿意去看 log,手工处理问题的成本也高到了你没办法做这事儿。

不过,既然已经用了外置硬盘,已经能够忍受 rsync 所带来的磁盘性能的降低,何不直接……

把 OS X 安装在外置硬盘上!

这是我最终选择的方案。具体地说,我是这样设置的:

  1. 买了320G 2’5寸硬盘,和元古双火线 800 接口的硬盘盒,拿到手才想起来这硬盘盒居然比硬盘还贵;
  2. 把硬盘分成两个区。一个是大容量的主分区,另外一个用来存放音乐、电影、下载和临时文件。这个分区被我命名为 Second Sun,玩过 COD 6 的人应该对这个名字有印象吧。至于为什么要给硬盘分区,一会儿再说;
  3. 用 CCC 把 MBP 上的硬盘数据整个复制到外置 USB 硬盘的主分区上,然后把启动磁盘设置为外置硬盘并用它启动,此时算是完成了基本的工作,如果你不想继续折腾,到此为止也是可以的;
  4. 把主分区上所有你认为不涉及到隐私的数据,都复制到另外一个分区上去(对我来说就是那块 Second Sun),然后在终端下用 ln 命令把这些目录链接回来;
  5. 如果你用 Time Machine 的话,你需要修改它的配置文件(一个 plist),才能让它不会忽略/Volumes,具体方法 Google 即可。

现在来解释一下为什么要分区,并把不敏感的个人数据从用户目录中拿出来。这是因为我觉得比起一部电脑来说,一块硬盘丢失的可能性大大提高。一旦丢了,各种私人敏感和工作相关的数据都会泄漏,这可不是闹着玩的!因此必须对这些数据进行加密。

从易用性的角度考虑,OS X 自带的加密方案 FileVault 是个很不错的选择。FileVault 会对整个用户目录进行加密,而且要开启 FileVault,你必须保证分区剩余空间至少是已使用空间的1倍,因此把大量的非敏感数据转移出去,既可以节省空间,又能大幅度地减少 FileVault 加解密的时间。

FileVault 的负面影响

第一次使用 FileVault 的经历,大概比做一场恶梦好不了多少。

首先,如前面所说,FileVault 要求用户目录所在的磁盘剩余空间,必须大于用户目录已经占用的空间,换句话说,FileVault 使得硬盘的容量至少直接减少30%。

其次,如果你在开启 FileVault 时选择了“安全抹除原有的未加密数据”,那么在相当长的时间里你的硬盘都是满负荷工作的,因为所谓“安全抹除”,就需要在硬盘保存原有数据的扇区位置上进行大量的写操作。我一共开启过 2 次 FileVault,平均来看它需要半个月的时间才能完成这个工作。在这段时间里磁盘性能会低到什么程度呢?这么说吧:连收到一条 Adium 的消息,UI 都要停止响应3秒左右。一点不夸张,我当时和朋友聊天前都要先解释一下。更搞笑的是,两次安全抹除无一例外以失败告终。每次 OS X 在折磨我许久后,都弾出个框告诉我安全抹除失败。哦,对了,这个框不是在你打开 FileVault 的设置界面后弹出的,而是在操作电脑的任何时刻都有可能弹出来……这东西真不是 Apple 的临时工做的?

再次,开启 FileVault 后,Apple 禁止在用户操作电脑时使用 Time Machine 备份,要备份只能在注销账户时。好么,它不是要花上半个月时间安全抹除吗?所以如果你刚开启 FileVault,然后接上备份硬盘,规规矩矩地从系统注销,运气好的话你可以马上看到系统开始备份,但进度条绝对连动都不会动一下,我有一次等了一夜后早上起来看到进度条大概走了1/100。等吧,等安全抹除结束后就没这么慢了,你顶多需要猜测在注销系统后几秒、几分、还是几小时后TM会开始备份,因为注销后 Apple 不会给你任何有关的提示或按钮。

再再次,FileVault 让 Time Machine的 时空隧道失效。你无法再使用官方提供的界面恢复单个文件,当然了,通过 Finder 手工恢复仍然是可以的。如果你看懂了的话,本段第一句是个一语双关的冷笑话。

最后,FileVault 不支持 OS X 的“迁移助理”。用过迁移助理的人都知道这是个多么神奇的程序,它可以把你的数据几乎毫发无损地复制到另外一个 OS X 里,Time Machine 和 CCC 都是整盘复制,而迁移助理能做到只复制用户数据(不仅仅是用户目录里的)。但对于开启了 FileVault 的用户数据,迁移助理无能为力。因此上次为了解决 OS X 10.6.5 更新带来的 WIFI 失效问题,我一狠心先备份数据再重装系统,结果恢复数据时十分杯具的只能先关闭 FileVault、迁移,然后再开启,又是一次上述的痛苦过程……

当然了,数据加密就像数据备份一样,只有在出问题时,才会知道其好处,所以至少我现在不担心数据泄露或遗失。我使用这个方案有几乎 5 个月的时间了,成功减负以后我还能带着 iPad 或一本书在地铁上看会儿。


Viewing all articles
Browse latest Browse all 4

Latest Images

Trending Articles





Latest Images