昨天被一个小问题折腾了很久很久,决定把它记下来。
原本用的好好的Debian GNU/Linux 5 (Lenny),在经历了以下操作后出现了问题:更新了一下系统;安装配置了NetworkManager;把内核从2.6.31.5升级到2.6.31.6(同时把内核选项中的CPU类型由686改成CORE2); 把ATI显卡驱动从9.10升级到9.11。出现的问题是:重启或注销GNOME时系统失去响应;Firefox在链接上点右键,菜单弹出前软件失去响应。
为了排除这两个问题,做了很多的努力:Google寻找解决方案;把内核恢复到老版本;把CPU类型恢复成686重新编译内核;降级显卡驱动;重新配置Xorg.conf;以上几种方案的各种组合……均无果而终。(重点怀疑显卡驱动的原因是ATI的fglrx驱动在新内核中总是会触发一些oops)
山穷水尽之际,决定用strace看看Firefox在弹出菜单时到底在做什么事,为什么会卡住。
connect(88, {sa_family=AF_INET, sin_port=htons(16001),
sin_addr=inet_addr("127.0.0.1")}, 16...
127.0.0.1……我自己ping了一下这个本机回环地址,Request timed out。啊……
原来,这次安装了NetworkManager后发现它不工作,查了一下才知道只要是在/etc/network/interfaces中有配置的网卡都不会被NetworkManager管理,于是不管三七二十一把interfaces这个配置文件给清空了。遗憾的是原本在interfaces配置文件中配置的Loop Back网卡lo不会被NetworkManger管理的,于是127.0.0.1这个地址就不通了。
这个故事也告诉我们,lo网卡在Linux中非常重要。
1999年第一次安装Linux,2006年参加工作开始试图把Linux作为日常的操作系统,到目前为止,却还是没有办法完全离开Windows。不过对于Linux的看法早就已经从欣喜的发现“Linux也能做这件事”演变成了“遗憾,Linux还做不了这件事”,或者,更确切的说“遗憾,Linux还不能兼容这个东西”。毕竟,外面的世界还不是这么美好。Linux自身做为桌面系统来说,也还有不少的路要走。
昨天Google开会正式介绍了深度整合Linux和浏览器的操作系统Chrome OS,大概在一年多前在参加UCDChina书友会时,大家就曾经聊到过浏览器是不是可能变成操作系统,在来看来,这个理想已经更接近现实了。第一时间下载了Chrome OS镜像在VMware上体验。不过实话说,现在所看到的Chrome OS并没有给人特别惊喜,几乎纯粹Web OS的概念很领先,但就目前来看似乎并不具备足够的吸引力,毕竟现在Web还没有能力提供足够丰富和复杂的应用。更不提那众所周之原因所导致的Chrome OS的桌面无法打开,一些应用无法正常访问了。
跑题了……