Big Fish

Saturday, June 03, 2017

NotifBot

自从去年买了房,我就开始折腾智能家居。

具体历程可以参看我的这篇英文 blog,两个 SmartThings 代码在 GitHub 上:MyQ车库控制。当前结果见下面这条 tweet:

这里主要要说的,是我为了能在 Android Auto 里面及时看到 SmartThings 通知而写的 NotifBot

NotifBot 是一个 Android appTelegram bot。Android app 用来读 SmartThings 的通知,然后 Telegram bot 用来把通知转发到 Telegram 中。

在用了几天 NotifBot 后,我突然意识到,除了本来的转发 SmartThings 通知的功能外,我还可以用它来解决两个完全无关的问题。

第一个是收国内短信的问题。

现在有了 NotifBot,我就可以把我国内的 sim 卡放在某个闲置手机上,放在家里接着充电器,连着网,然后让 NotifBot 转发所有 Android Messenges 的通知,这样我就可以在所有登录了 Telegram 的设备上实时看到国内的短信了。

另一个问题是微信的通知问题。

我从来不掩饰我对微信的厌恶,但是因为种种原因,又不得不用。我用 Android Wear 手表,所有的 app 的 Android Wear 提醒都是很普通的震动,独独微信在 Android Wear 上的弄了个怒刷存在感的超长震动。所以,很显然的,我把微信的 Android Wear 通知给禁掉了。

但是因为我手机上连接了 Android Wear 后自动 mute 掉手机上的所有通知,所以别的 app 来通知的时候手机并不会响,但是我的手表会震动。微信因为我禁掉了 Android Wear 提醒,所以就被完全静音哪里都不会响了。

现在有了 NotifBot,我只要把微信的提醒转发到 Telegram,结果就是我用 Telegram 的正常提醒替代了微信的扰民提醒。完美解决问题。

友情提醒:NotifBot 的 server 端用的是 Google 的 AppEngine, 所以墙内是没法用的。



tags: , , ,

21:11:47 by fishy - 程序网络 - 永久链接

3 条评论 - 还没有引用通告 - 得分: 7 [+/-]

Monday, March 11, 2013

Raise the bar!

今天松鼠会翻译了 xkcd #208,就是挺著名的正则表达式的这篇:

Regular Expressions

说挺著名是因为一是这篇挺早了,二是 xkcd store 里面都有相关 T-Shirt 在卖。

松鼠会的翻译在此。这个翻译就漫画本身来说没啥问题,但是:

  1. 这篇漫画的标题叫 "Regular Expression",这词有个标准的翻译叫『正则表达式』,不翻译成『能力越强,想的越多』;
  2. 这篇漫画的隐藏文字写着:

    Wait, forgot to escape a space. Wheeeeee[taptaptap]eeeeee.

    大概可以翻译成:

    等等,有个空格忘了转义了。咦咦咦咦[敲敲敲]咦咦咦咦。

    反正怎么着都跟这个翻译没啥联系:

    托尔金、乔治·马丁这种人到底掌握了什么?

松鼠会的这篇文章虽然标注了『原作:xkcd』,但是却没有给出链接,然后又在翻译中进行了『再创作』。虽然我是看不懂这样的『再创作』对他们有何好处和意义,但是总之作为译者的这种行为都是没有节操对读者非常不负责的。

也许这已经不是松鼠会第一次没节操了,不过反正以后我是不会再把松鼠会当作严肃媒体看待了。

注:本篇 blog 标题的出处在此



tags: , , ,

19:39:44 by fishy - 程序网络 - 永久链接

3 条评论 - 还没有引用通告 - 得分: 2 [+/-]

Tuesday, June 19, 2012

新闻道德是什么?能吃么?

在新浪上看昨晚意大利对爱尔兰的集锦,连着的两个镜头分别是两边射门被门将扑出:

吉文没名字吗?意大利是在打十一个桩子还只能进两个球吗?

然后居然有人指望新浪这样的毫无基本新闻道德的网站开办的微博能提升新闻自由?你们还是指望买个 VIP 后能约到炮更实际一点。



tags: , , , ,

21:20:02 by fishy - 程序网络 - 永久链接

- 还没有引用通告 - 得分: 5 [+/-]

Wednesday, May 09, 2012

不得不吐槽一下豆瓣阅读

首先我要说豆瓣阅读是一个我需要的东西。现在中文正版高质量电子书市场基本就是个零,豆瓣阅读以及其它已有的或者将来的产品是这个市场所急需的。这一点上应该鼓励。

但是鼓励归鼓励,豆瓣阅读在具体的细节上的某些方面让我实在是没法不吐槽:

  1. 电子书分册卖:纸版书因为厚度等原因分上下册可以理解(但是也没哪个出版社分上下册卖的吧?),电子书分上下册有哪怕是一丁点的意义么?就算是为了把所有卖的东西(书或者『作品』)的价钱都压缩在¥10 以内,这个理由在上下册导致的麻烦下面也显得苍白可笑啊。
  2. Android 阅读器的权限要求:作为一个电子书阅读器,豆瓣的 Android 程序居然要求读系统 log 和拿物理位置这种完全不相干而且极度侵犯隐私的权限,然后对此没有任何解释,反正我是不会装的。
  3. 充值:豆瓣不支持直接根据需要扣信用卡而是只能预先充值,充值最小金额 ¥2 而且均为 ¥2 的整数倍,与此同时所有的收费图书/作品的定价都是 ¥X.99。我可以理解网上支付的国情,但是这么做的结果就是每次买东西剩下的 ¥0.01 都是别想要回来的了——除非你能买满 100 个作品。


tags: , , ,

01:07:24 by fishy - 程序网络 - 永久链接

1 条评论 - 还没有引用通告 - 得分: 8 [+/-]

Friday, January 06, 2012

Android Intent: the UNIX pipe for GUI

UNIX 哲学中有很重要的一点,就是 pipe (管道) 的运用。正是由于管道的存在,才使得另一个著名的 UNIX 哲学成为可能:"Write programs that do one thing and do it well." 每个程序完成自己的工作,然后用管道串起来,然后多复杂的工作都能轻松搞定了。

但是 UNIX pipe 处理的是标准输入输出,因此只能用在 CLI 上。在 GUI 上一直没有类似的东西出现。 Apple 在 Mac 上做过 AppleScriptAutomator 两个尝试,可以部分实现 UNIX pipe 的效果,但是它们使用起来都过于麻烦,需要太多的用户操作。

第一个在 GUI 上基本实现了 UNIX pipe 的,我觉得要算 Android 中的 Intent 接口。文档中的概括性介绍是这样的:

An intent is an abstract description of an operation to be performed.

Intent 是个贯穿 Android 核心的概念/接口,在 Android 中大部分的操作都是由一个 Intent 发起的。在桌面上点了个 Gmail 的快捷方式来 打开 Gmail?那其实是你的桌面程序 (Launcher) 发起了一个「我要启动 com.google.android.apps.gmail.MainActivity」的 intent 而已;在 Gmail 里菜单里面选了「选项」?那其实也是 Gmail 发起了一个「我要启动 com.google.android.apps.gmail.SettingsActivity」的 intent 而已。。。

当然这里举的例子跟 UNIX pipe 无关,咱们再来看下面几个例子:

我在 Google Currents 上看到了一篇不错的文章,想分享给朋友们。跟大多数 Android app 一样, Currents 里面也有个分享按钮的:

Screenshot_2012-01-06-17-04-08

点了后会给出一个可以处理这个格式的内容的程序列表 (可以处理的程序太多,截图中只是其中一部分而已):

Screenshot_2012-01-06-17-07-36

然后你可以选 Gmail:

Screenshot_2012-01-06-17-08-06

或者 Google+:

Screenshot_2012-01-06-17-13-30

或者 Twitter:

Screenshot_2012-01-06-17-22-34

或者 Facebook, Path, 新浪微博,豆瓣说。。。只要你装了相应的程序,你就能分享到你想分享到的地方。

这里的分享动作就是一个 Intent。 Currents 只用管告诉系统说我这里有段文字要分享,然后后面的事情就完全不用操心了。系统自然会找出用户安装的所有可以用来分享文字的程序,让用户来选择自己想要的那个,然后把文字传给相应的程序,由程序来完成分享的工作。这样做的好处是什么?好处当然是 Currents 的程序员不需要在自己的程序里面写上一大堆分享到 twitter 的代码,分享到 google+ 的代码,分享到 facebook 的代码。。。

「什么?还有中国人用我们的程序?那我们是不是还得写分享到新浪微博和入人网的代码?」
「有日本用户抱怨我们不支持 mixi 了,咱是不是考虑加一下?」
...

iOS 5 说他们终于深度集成 twitter 了,在任何程序里面都可以直接分享到 twitter 了。但是其实 Android 从第一个版本开始,早就「深度集成」了所有社交网站了。。。

上面的例子是文字的,如果你要分享的是图片,体验也是相似的:

Screenshot_2012-01-06-17-51-15

你看,你想用什么就能「深度集成」什么。在没有 Intent 的系统上,如果你不幸是个不像 Flickr 这么主流的图片站的用户,你能想象每个能输出图片的程序都写分享到 SmugMug 的代码么?

通过 Intent,你完全可以轻松完成任何图片处理流程,比如:拍照,分享到 Skitch 用红圈圈出重点,然后分享到 Facebook。

也正是因为如此,每个 Android app 都只需要管好自己的工作就行了。比如 Flickroid 就是一个优秀的 Flickr 上传工具,在早期版本中甚至在安装完后你都不能在 Launcher 中找到程序入口,因为它唯一的功能就是把图片上传到 Flickr,所以你只用在相册或者别的程序中把图片分享给 Flickroid 就行了。

"It just works."

分享只是 Intent 的无数种用法中的一种而已。除了分享外, Intent 还可以拿来干很多别的事情,比如要数据。Google Authenticator 是一个给 Gmail 或者别的账户生成登录时使用的基于时间的临时密码的程序。在设置账户的时候,需要扫描一个二维码,但是 Google Authenticator 完全不需要自己实现这个功能, Barcode Scanner 或者 Google Goggles 或者别的程序已经实现好了:

screenshot-2012-01-06-18-37-37

所以 Authenticator 只需要给系统一个 Intent 说我要扫一个二维码就行了。系统会让用户选择一个程序来完成这个工作 (或者如果只装了一个或者选过默认程序的话,直接打开那个程序),然后把扫描后的结果返回给 Authenticator。

btw, 昨天在网上看到一篇吹微信的文章,于是我去 Android Market 上看了一眼,结果就被截图震惊了 (原图在此,我这里留了个备份):

微信官方截图

这群人能放着 Android 基于 Intent 的分享功能不用而用这种山寨 iOS 的实现,不得不说很符合腾讯一贯的山寨本色。



tags: , , , , ,

18:53:46 by fishy - 程序网络 - 永久链接

5 条评论 - 还没有引用通告 - 得分: 8 [+/-]

Wednesday, March 30, 2011

百度文库他是个什么平台?

针对众位作家的维权,百度文库发布了一个声明,摘要如下 (随便搜的出处):

针对近日连续遭遇的侵权指责风波,百度公司今日发表声明,称百度文库产品在前期的运营过程中伤害了一些作家的感情,对此表示抱歉。同时表示,加速对文库中可能侵犯他人著作权的文档清理,预计未来3天内百度文库中文学作品类别的文档凡未获版权方授权的将得到彻底处理。
百度同时强调,百度文库作为免费文档分享平台,此前没有任何广告或盈利。

那么百度文库真的是个如他们所说的“免费文档分享平台”么?

本着“人之初,性本善”的善意推断原则,我们不妨相信百度这个声明说的是真话,也就是说,百度真的要删掉所有侵犯版权的文档。

那么那之后百度文库里面还能剩下哪些文档?我们不妨来列举一下:

  1. 上传者原创或者取得了原作者授权的文档,注意是“上传者”而不是而不是“网友”,A上传B原创的文章还是有可能构成侵权的。根据兲朝的现状,这种情况不会很多。
  2. Public domain (公有领域)的文档。这类应该在剩下的文档中占多数,包括:
    • 作者主动放弃所有版权的文档。
    • 政府公文,比如法律条款等。这一条依国家的不同而不同,我不太确定兲朝的法律是怎么规定的,我在百度文库里面搜索“知识产权法”,第一页结果里面没有法律全文,全是各种讲义和考试大纲。
    • 纯粹为了描述发生事件而写的新闻稿。这一条也依国家的不同而不同。
    • 年头足够久的文章。这个“年头足够久”的定义是已发布超过一定年份(一个参考值是95年,各国的法律可能不同,下同),最后一个死亡的作者已经死了一定年份(参考值70年)。注意对于译文来说,译者也算做作者之一,所以也要等到译者死亡满70年才能算是进入 Public Domain 的。也就是说,你可以放个Pride and Prejudice的英文版上去,但是不能放《傲慢与偏见》的中译版;你可以放个《三字经》的原文上去,但是不能放加上了很多现代人的注释的版本。
    • 其它不受版权保护的文章,比如美国有个案例是电话号码本不受版权保护。
  3. 需要注意的是,GNU Free Documentation License 授权的文章 (比如维基百科的文章)以及 Creative Commons Attribution-ShareAlike 授权的文章 (常见于 blog 文章的授权,比如本 blog 文章的授权都是 cc-by-nc-sa,包含了 Attribution-ShareAlike 的限制) 都不能在没有得到作者允许的情况下传到百度文库上,因为百度文库不能满足这两个协议的限制条款。

OK,在弄清楚这个问题之后,我们来看看百度文库这个平台的现状。

我今天第一次上了百度文库,给他的首页截了个图,首页上推荐的这些文章大概可以分为这么几类:

所以说百度文库首页推荐的文档有至少一半是侵权文档应该是个比较合理的估计。百度可以说那些名作家的书是某些用户偷偷上传的,百度没有发现,但是都上首页了的文章百度还能说自己没有发现么?这个理由是不是可笑了点?

再来看百度文库上这些属于 Public Domain 的文章,比如这篇《三字经》。我在百度文库上看到这篇文章了,觉得不错,想写文章的时候引用一下。咦?为什么不能选文字复制?原来百度文库上如果你想复制文章内容,必须先下载。而要下载,就必须先“登录,并付出相应财富值”。但是我怎么拿财富值呢?上传一篇文档上去?传啥文档?再传一份《三字经》还是写一篇 blog 发上去?

对大部分用户来说,貌似还是随便传个网上找的文档比较快。但是这个行为又很有可能构成了盗版。

到了这里,说百度文库是个鼓励大家传播盗版的平台,这个结论貌似还是比较自然吧?

其实你要想看《三字经》,去维基文库上可以随便看,随便复制。想看《三国演义》或是《红楼梦》也没问题。如果你想看英文的 Public Domain 的文档,比如莎翁的剧本奥斯丁的小说,那选择就更多了,随便 Project Gutenberg, Google Books或者别的什么 Public Domain 的线上图书馆多的是,想在线看或者下到手机上看都没问题,也从来没有听说过哪个网站限制你要先“登录,并付出相应财富值”才能复制文章的。

你说你是为啥非要用一个在太监裤裆底下茁壮成长的东西呢?



tags: , , ,

23:37:08 by fishy - 程序网络 - 永久链接

3 条评论 - 还没有引用通告 - 得分: -7 [+/-]

Monday, March 28, 2011

版权

有人觉得,版权这个东西是邪恶的,是阻碍社会进步的,是应该予以废除的。或者有的人觉得那本书/那首歌/那个软件卖(那么多)钱是邪恶的,完全没有道理的。OK。这个立场的对错我无法评价,但是我捍卫你抱持这个立场的权利(至于你的宪法有没有捍卫你的这个权利,就麻烦您老人家自己去研究了)。那么你应该做什么?

如果你不知道你应该做什么,你可以参考一下前人先辈们。Richard M. Stallman 是一个跟你抱持类似立场的人,他发起了 GNU 项目,发起了自由软件运动,起草了 GPL。如果这些名词对于你来说都太绕,那么通俗的解释一下。就是他,以及他的追随者们,给大部分收费的、不自由的软件重新写了免费的、自由的替代品,有些替代品甚至有比原本(收费的、不自由的)软件更强大的功能。更重要的是,他们对这些替代品使用的授权协议,GPL 或者 LGPL,具有传染性——强迫所有这些替代品的衍生产品都必须同样的自由,来维持整个自由软件社区的活力。

结果呢?他成功了,或者说基本上成功了。现在人们在软件上拥有丰富的选择。如果你完全不想花一分钱,那你也能有高质量的软件可以用。

那么他有没有违反版权法?或者通俗的说,盗版?貌似是没有。在某个访谈中(出处不可考了),他提到过因为他的信念,他从来不看电影(包括去电影院看正版和在家下盗版)。

相反的,他的整个行动中的核心,具有传染性的 GPL,反而是因为受到版权法的保护才有意义的。因为若没有版权法的保护,GPL 软件的用户,或者说 GPL 软件的衍生产品的作者,就不用遵守 GPL 的任何限制了。

所以我对你的建议是,可以像 rms 一样行动起来,自己创作免费的作品来改变版权的现状。软件你可以用 GPL 授权,文章和音乐你可以用 Creative CommonsShareAlike 授权。比如本 blog 的文章,在非例外(目前为止好像还没有例外)情况下都是 cc-by-nc-sa 授权。

或者如果你特别懒,你也可以等着别人行动起来改变现状。但是你用盗版对改变现状没有任何作用,相反,你伤害了别人改变现状的努力。

为什么?我们假设有这么一个传统版权的作品 A,要收很多钱。有人对其不满,于是创造了一个免费的替代品 B。但是因为种种原因(可以是因为能力有限,或者是因为这个只是自己的业余时间作品所以投入不够等),B 在很多可见的方面都略差于 A。对于普通用户来说,在做选择的时候,B 唯一显而易见的优势就是价格(也许有些不那么明显的优势,但是普通用户是无法分辨的)。这时,如果大家都用盗版,于是 A 也“相当于”不要钱了,那么对于普通大众来说,B 的这唯一的优势就没了。那么谁还会选择 B?于是 B 没有人用,作者也就没有持续改进的动力,慢慢的 B 就消亡了,又回到了只有那个要收很多钱的 A,没有任何选择余地的境地了。如果某天因为种种原因你不能再用盗版了,那你也就只好为 A 付钱了。所以最后你得到了什么好处?消灭了 B?

当然现实总是跟理想有差距,总有些东西因为种种理由你还是会用盗版。这些理由可能是这玩意不在这个国家公开发行所以你没有方便的渠道取得正版,可能是这玩意正版为了版权保护损害了你的体验(常见于各种电脑游戏),也可能是因为你实在是没钱,等等等等。那你用了就用了吧,怀着一刻感恩的心偷着乐就行了,大部分版权持有者不会也懒得跟独立用户过不去。但是如果你用了盗版还理直气壮,说得好像你盗版了是在拯救这个畸形的社会救苍生于水火,那你其实只是在彰显你的无赖、无知和不要脸而已。

btw, 这篇文章不代表我支持微软中国关于盗版和Windows的虚假广告的观点,特此声明。



tags: , , , , ,

00:22:47 by fishy - 程序网络 - 永久链接

1 条评论 - 还没有引用通告 - 得分: 11 [+/-]

Saturday, January 29, 2011

闪开,让专业的来

副标题:Mashup vs. All-in-one (last.fm vs. douban)

Web 2.0浪潮中有一个概念,叫Mashup。意思是说尽可能的利用已有的网站提供的资源/API,来搭建自己的网站,并且自己也提供这样的资源/API来供别的网站使用。比如我常用的GPS track记录站gpsed,就是自己只提供GPS track的功能,并不去管理照片或者全世界的地图。但是整合了Google Maps的地图和Flickr(或者picasa)的照片,于是可以在显示GPS track的同时显示出地图并把照片放在拍照的地方

Last.fm也是一样。在last.fm上面的Event页面(主要是演唱会或者音乐节之类的活动)中,活动照片并不是存放在last.fm上的,而是last.fm根据一个特定的标签自动从Flickr上加载的。比如去年我参加的Tizzy Bac北京巡演,我拍的照片并不需要在往flickr传了一遍后又往last.fm上再传一遍这么蛋疼,而是直接加上一个"lastfm:event=1407759"的标签就会自动出现在last.fm的Event页面了。于是在last.fm上看到的照片,点开后就能轻松的看到Flickr提供的各种信息,比如EXIF,黑底大图,原始大图等。

除了调用Flickr的照片API外,last.fm自己同时也是一个数据的提供者。它提供了日历的输出,于是在简单的设置后我要参加的演出就会自动出现在我的Google Calendar上、手机上或者电脑上(这个是我为了截图随便加的一个演出):

演出活动也是豆瓣力推的一个功能,那么文青最爱的豆瓣上是怎么做的呢?他们除了地图实在是没能力自己做外,其它的啥都是自己做的。比如同一场演出,豆瓣上有一个专门的活动照片页面。里面没有EXIF,没有大图,也只能用豆瓣那个网页界面来上传而不能用各种好用的上传工具,什么都没有。你就只能看到你拍的照片被缩成一个拿到手机上看都撑不满屏幕的小图而已。

当然,我也不能把豆瓣上的活动加到我的日历上(蛋疼得手工输入时间地点人物除外)。

造成这个结果的原因也很简单:不专业。但是问题是,既然你丫没打算做个专业的图片站,干嘛不闪开让专业的来?

每次看到文青们把从各种地方看到的有趣图片搬到豆瓣去,有的被缩小后连文字都看不清了,于是下面的留言里面一堆堆的“求大图”,我都觉得蛋疼得紧。我可以理解文青们放弃了对质量的追求以及因为智商的限制,只想用一个最傻瓜的上传图片并显示的功能而已。但是当你从别处搬运过来的图片被缩放得连J点都没了的时候你都没发现,难道你传上去后就再也没看过么?

不是题外话的题外话,UNIX哲学中最重要的一点是:“Write programs that do one thing and do it well”。这句话翻译成通俗的中文,就是:一个程序只用把自己该做的事情做到极致,其他的“闪开,让专业的来”。

在这样的哲学下,才能诞生诸如grep, awk, sed之类的伟大程序。它们只专注于自己应该做的事情,比如awk不会去管排序的事情,grep只管过滤不管替换。你需要它们不提供的功能?管道一下用别的干这个的程序继续处理就好了。这样的结果就是用来干你的复杂需求的每一个功能的程序都是最专业的最好的,最后得到的结果自然也是最快最好的。一个常见的例子是列出apache log中排名前20位的访问IP:

cat /var/log/apache2/access.log | awk '{print $1}' | sort | uniq -c | sort -nr | head -n 20

Mashup显然也是来自于此。



tags: , , ,

23:42:54 by fishy - 程序网络 - 永久链接

4 条评论 - 1条引用通告 - 得分: 5 [+/-]

Thursday, November 04, 2010

在五十步和百步里面二选一

最近你们兲朝互联网热闹了,两大巨头打起来了。

当然我既不是你们兲朝互联网用户也不是你们兲朝Windows用户,这俩傻逼掐架当然是与我无关,我恨不得这俩同归于尽才是最好。但是理想跟现实总是有差距,想让两个都死是不大可能的,最好的结果也就是死掉其中一个。

那么死哪个呢?还是得在五十步和百步里面选一个。

水木上前两天有篇文章写得不错,不过被合集了,这里转载一下,原作者swiftcar

good, 被m了,我说也一个事,希望版主也标记一下。
我来说说360跟QQ的区别。

我们以跟百度竟争为例,来说明360和QQ会如何对付百度。
比如,现在百度出了搜索了,很赚钱,360跟QQ都想做搜索。

QQ会怎么做呢?会做一个搜索,跟你正面竟争,希望用户来用
最多在QQ里推广一下,最多在安装QQ的时候给个选项把浏览器默认
搜索引擎设置为QQ的搜索,然后默认勾上,必须手工去勾才不设置。
最多也就这样,用户选择余地还是很大,QQ的搜索也很难成功推广。

360会怎么做?首先,说你不安全,然后给用户个很低的评份,
只有把搜索换了,分才会高。然后,会去掉你的搜索结果里的所有推广
说这些都是广告,害人的啥的(尽管很大程度的确是)然后用户欢心
终于出来一个帮我们的人了。然后说360搜索没广告,更快,更安全
没骗子。然后你要是手工输入baidu.com , 360实时监控会说你尝试
进入不安全的网站,给你重定向到360搜索。

总的来说,QQ虽然有点霸道,但也是名门正派,360就是背后插刀子。
所以QQ并没有干倒百度,也干不倒淘宝。充其量只有很大的威慑力存在。
而360要是大了,中国还能不能存在其它互联网公司,就很难说了。

另外我要补充一点的是,以后各位兲朝Windows程序员写程序不用看Windows API的文档了,反正所有的API都被他们hook掉了,直接看360的文档就好了(如果有的话,360 bless you)。

虽然你们兲朝互联网已经足够悲哀了吧,但是如果最后被一个靠收保护费过活的公司控制,还是会更加悲哀一点的。



tags: , , , ,

12:58:26 by fishy - 程序网络 - 永久链接

3 条评论 - 还没有引用通告 - 得分: 2 [+/-]

Sunday, August 15, 2010

换硬盘倒Mac OS X

SC2 is coming! 然后我辛辛苦苦下下来后发现,这玩意又是一个不支持case-sensitive分区的东西。

为什么要说“又”呢?目前已知的不支持case-sensitive分区的程序包括:

所以你看,基本上对生活影响不大的。所以作为一个程序员,我自从被case-insensitive分区搞过一次后,就在06年硬盘坏掉换硬盘的时候,顺便改用case-sensitive分区了。

但是还是Blizzard面子比较大,因为SC2,我决定换回case-insensitive了!于是我就上网订了个500G的硬盘回来换上,然后开始装系统倒数据。

在Mac下想要换硬盘倒数据,有这么几种方法:

  1. 原来的数据备份,然后安装的时候选从Time Machine备份恢复;
  2. 原来的盘接上安装的时候直接用disk utility的restore功能全盘复制;
  3. 装一个新系统,装好后接上原来的盘用Migration Assistance。

因为以前我有过从Time Machine备份恢复的成功经历,于是这次首选的是这个方案。结果悲剧发生了,恢复到一半的时候,安装程序崩了。。。

于是接下来尝试restore的方案,结果虽然我先创建了case-insensitive分区然后从之前的case-sensitive分区恢复,最后恢复的结果还是case-sensitive的。。。于是又是失败。

最后只好选择重新安装然后用Migration Assistance。装完系统后装更新,然后用Migration Assistance。第二天早上起来看这个东西到底给我转移了哪些文件:

于是我又挂着老硬盘rsync了半天,最后终于搞定。搞定后顺便也装了个Steam,不过啥游戏都没从那上面买。。。



tags: , ,

18:25:58 by fishy - 程序网络 - 永久链接

2 条评论 - 还没有引用通告 - 得分: 1 [+/-]

May the Force be with you. RAmen