最近感悟越来愈多,女儿越来越大,头发越来越少,我知道,自己老了。
30岁之后,时间仿佛开闸的河水一样滚滚而去,感觉自己浪费的时间太多。我们不得不承认,先知先觉的人会比我们领先10年甚至更多的身位。所以我们唯一能做的就是,奔跑和追赶。
岁数大了之后,会变的唠叨,此言非虚,现在常常回想起自己走过的道路,一路走来,我必须得承认自己是个普通的不能再普通的人,但是,引用电影里的一句话“保安怎么啦,保安也是人啊”,所以还是觉得有必要去总结一些东西。很早就有这样的念头,但是一直没有动笔,想必是在等一个引子。期盼已久的Mac OS X10.7发布了,好吧,那就拿这头狮子(Lion)为引,先说说Mac那些事。
2011年7月20日,Mac OS X的Lion终于正式发售了,也就是10系列的第七个版本。
Lion的发售终于让我下定决心,对我的MBP进行一次全面整合,乾坤大挪移,告别MBR分区,改为GUID。我再也不想为每次大版本的升级修改那该死的OSInstall了。
说起Mac,还得从2001年说起,那是我第一次接触Mac OS X体系,当时由于与一家厂商合作,需要把我们的软件移植到Mac Server上。软件是BS架构的,基于JDK1.3构建,由于一直在linux上编程(当时Java几乎没有像样的IDE,Eclipse、NetBeans、IDEA等后来如日中天的工具,有的刚刚起步,有的还在孵化器中),所以Mac基本上是被我们当做Unix用的,印象中移植并没有太大的工作量,细节也不记得了,反正当时Mac对我来说就是一个Unix Server。后来有另外一个组的兄弟是给软件做音乐的,公司专门给他配了一台Mac Pro,价格相当昂贵,那个兄弟护的很紧,基本不让我们这些土鳖程序员靠近,那时候Mac OS X已经告别了9,进入了10。如果记忆没有失误的话,那个系统用的是Mac OS X 10.2 Jaguar,其华丽的界面让一直用土土的windows的程序员留了一堆口水,但当时我们已经被Liunx下各种华丽但不实用的GUI伤透了心,像GNome,KDE基本都是浮云。于是苹果在我眼中就是个酷酷的操作系统,界面优美,适用于图形图像视频制作,价格贵的离谱,用来工作娱乐神马的,基本上是天方夜谭了。当时留下的印象就是留着长发的流浪歌手,谈着吉他,安详的坐在Mac Pro前调音和谱曲的画面。那个兄弟叫老郭,专门为软件做音乐,经常对我们这些不懂艺术的程序猿说,嗯,你们都是土鳖,就知道编程,多无聊。当时我想,这话反过来说,也成!
后来工作上兜兜转转,使用的技术越来越多,工作范围也越来越广,但一直没忘关注Apple和Mac,先是iPod火的一塌糊涂,之后Mac OS X相继发布了10.3 Panther,10.4 Tiger,10.5 Leopard。GUI一直是Apple的强项,界面越来越炫,新功能也层出不穷。类似窗口管理器Expose,全文搜索Spotlight,智能文件夹,Dashboard,强悍的备份工具TimeMachine等等,变得越来越吸引人,尤其是2006年Mac硬件进行了重大的架构调整,开始全面采用Intel系列CPU,Power渐行渐远。架构的调整和Bootcamp的推出,使得在Mac上安装双系统变得触手可及,这一点在当时还是非常吸引我的。在这期间,微软这个巨人似乎步履蹒跚,Vista恶评如潮,被window折腾的不轻的我失去了尝鲜的勇气,所以从2001年到2009年我始终如一的使用XP,只是不断的更新微软的补丁,不断的重装系统。2007年Apple推出了iPhone,如出一辙,又一次重新定义了产业格局,我想是时候尝试一下Mac了,而且手里的IBM Thinkpad已经用了4年,Mac的价格也不那么离谱了,除了GUI的吸引力,作为多年的linux/unix用户,Mac下的原生shell也是吸引我的重要原因之一。
从经济角度而言,MacbookPro的价格对工作多年的我来说,已经没有什么压力了。好吧,开始动手。
2009年入手购置了一台MBP985,操作系统是Leopard,也就是10.5,雪豹还没有出。当时对在Mac下能否完成日常的工作还是有一定担心的,而且对Bootcamp和windows下的C盘D盘划分充满迷恋。自己亲手对Mac做了分区,分区方案为MRB,320G的硬盘,给xp分了200G,而且做了C盘和D盘,同时为了能让Mac的Vmware Fusion能识别D盘,还修改了虚拟硬盘分区表。当时做了很多操作,以至于现在我基本记不起来到底修改了什么东西。现在看来,这些工作除了让我提高解决问题的能力和更好的使用Google之外,基本没起什么好作用。
很快我就从双系统(Leopard+虚拟的XP)切换到了单系统(仅使用Leopard),由于自己是重度Liunx用户,所以Mac下的Shell对我来说简直是天赐良缘。早期工作常年在Linux服务器端编程,那时最爱的工具就是SecureCRT,每天的工作就是从Windows下打开SecureCRT,登录服务器自己的帐号开始编程。以至于后来我一直在Windows下构建自己的Linux环境,每个使用过系统,VIM/Grep等工具是必须要装的。所以我从XP切换到Mac下基本上是非常自然的,以至于我的感觉是,为什么没早点使用Mac OS X,并发出了“这tmd才是电脑!”的吼声。我为自己在Mac下打造了全新的工作/娱乐/阅读/学习环境,后来基本上只有需要网银或通过docbook生成chm文件时,我才会切换到Windows下。
2009年8月28日,Snow Leopard全球发售,我撑到11月,终于忍不住升级了,于是又开始为了把SL无缝安装到我的MBR分区上而苦苦思索,后来花了一个周末,在不影响全部数据和程序的基础上把雪豹安装成功了,一直用到现在。
当初分区的不合理性造成的影响是显而易见的,首先无法升级固件,其次没法直接升级大版本的Mac OS X(岁数大了,有折腾这个的时间我宁愿看书),第三当初磁盘空间的不合理造成很大的资源浪费,已经很少用Windows了,却划了200G空间,Mac这边呢,磁盘经常满,我像个小蚂蚁一样,满了就搬一部分数据到移动硬盘上,让我很不爽。很早就像把整个系统重装上阵,一直迟迟没有动手。直到Lion的发布。
Lion已经宣传了很久,2011年6月苹果的WWDC大会上,Phil Schiller对Lion的介绍给我的影响非常深刻,看完WWDC的KeyNote,我对自己的MBP说,该对你动手了。
Lion如期发售,我用Time Machine备份了SL,WinClone备份了BootCamp,分区修改为GUID,然后重新恢复SL,购买、下载、安装、升级Lion,目前运行良好,空闲空间200G。至于Windows,我准备装个XP的虚机,应该足够了。
一个有趣的发现是,使用win非常熟练的老鸟,转到mac会很别扭,因为win的环境和mac区别很大,熟练的人往往依赖自己搭建的环境。反而是win菜鸟,一转到mac,会有一种,“嚓,原来这才是电脑”的感觉。
现在人们看到iOS、Mac OS X技术如日中天,其实基础是90年代初打下的。当时乔帮主成立了NeXT公司,一帮天才程序员搞了一套基于Objective-C语言的NEXTSTEP操作系统,也就是后来的Mac OS X和iOS的前身。在20年后Objective-C及其相关技术名满天下,开发出炫目的应用时,我们只能敬畏的惊叹,这也太tm超前了。