硬盘安装debian的问题

实验室机器要进行保密检查,硬盘全部格式化了。顺便装一个debian吧。

不想刻碟,所以用硬盘安装。下了一个grub for dos,这样就可以从硬盘引导了。然后下载了一个debian的网络引导iso文件。从该文件里面的install目录中提取出vmlinuz和initrd.gz文件。

进入grub,从vmlinuz和initrd.gz引导,可以成功的引导起来。但是每次都会停在寻找CD上,说电脑中没有插入CD。

百思不得其解,以前每次都是没有问题的。这次为什么不行呢?

过了几天,突然发现了问题所在。那个 vmlinuz和initrd.gz是光盘的引导文件,自然要找光盘了,如果是从硬盘安装的话,则需要硬盘安装的引导文件。

其实,那两个文件就在http://debian.cn99.com/debian/dists/sarge/main/installer-i386/current/images/hd-media/2.6/,下载那两个文件就好了

算是低级失误吧,不过也有前科,记得以前配置linux0.11的时候就是,用了一个软盘的root文件,一直引导不起来,kernel panic。后来用了一个硬盘的文件就好了,呵呵
-____- b!

ODT

ODF(OpenOffice.org Open Document)是一种office文档的格式,现在已经被OASIS(The Organization for the Advancement of Structured Information Standards,很巧,我老是也是这个名字,呵呵)通过了,成为了Office文档的标准,请注意,这里的office可不是ms office。

事实上,ms office的标准是不公开的,而 ODF却是可以被公众浏览的,所以大家可以基于ODF的标准,进行定制开发。ODF已经被OO2和KOffice的下一个版本采用。

今天简单的看了看ODF的标准,觉得挺像FF的扩展的。ODF的定义是:a royalty-free, XML-based file format that covers features required by text, spreadsheets, charts, and graphical documents。可以看出,它是基于xml格式的,换句话说,它类似于html格式的超文本页面,但它的格式要求更加严格,一定是良构的,此外,还有一些样式的xml文件,这个类似于xsl文件,定义一些主xml文件的样式之类的。

举一个简单的helloworld例子吧。例如有一个hello.odt文件,其实它是一个zip格式的压缩文件。解压后,可以发现有一系列的文件和目录。挑重要的说罢吧。

  • mimetype

这个是唯一的非xml文件,它只是说明了该odf文件的类型。例如,文本处理文件的内容为 application/vnd.oasis.opendocument.text。

  • META-INFmanifest.xml

这个文件在META-INF目录中,它列出了odf文件的压缩包中所有的文件和目录集合。

  • meta.xml

该文件类似于odf文件的摘要,列出了文件作者、时间等信息。

  • settings.xml

该文件列出odf文件的所有设置,就像一个配置文件。例如,列出了文档页面的长宽等信息。

  • styles.xml

这个文件有点类似于xsl文件(之所以不说类似于css文件是因为它是xml格式的@@),它给出了文档所需的样式。

  • content.xml

这个才是odt文档的主文件,给出了所有内容,当然是以xml格式的。

[coolcode lang=”xml”]

<office:document-content
xmlns:office=”urn:oasis:names:tc:opendocument:xmlns:office:1.0″
xmlns:style=”urn:oasis:names:tc:opendocument:xmlns:style:1.0″
xmlns:text=”urn:oasis:names:tc:opendocument:xmlns:text:1.0″
xmlns:table=”urn:oasis:names:tc:opendocument:xmlns:table:1.0″
xmlns:draw=”urn:oasis:names:tc:opendocument:xmlns:drawing:1.0″
xmlns:fo=”urn:oasis:names:tc:opendocument:xmlns:xsl-fo-compatible:1.0″
xmlns:xlink=”http://www.w3.org/1999/xlink”
xmlns:dc=”http://purl.org/dc/elements/1.1/”
xmlns:meta=”urn:oasis:names:tc:opendocument:xmlns:meta:1.0″
xmlns:number=”urn:oasis:names:tc:opendocument:xmlns:datastyle:1.0″
xmlns:svg=”urn:oasis:names:tc:opendocument:xmlns:svg-compatible:1.0″
xmlns:chart=”urn:oasis:names:tc:opendocument:xmlns:chart:1.0″
xmlns:dr3d=”urn:oasis:names:tc:opendocument:xmlns:dr3d:1.0″
xmlns:math=”http://www.w3.org/1998/Math/MathML”
xmlns:form=”urn:oasis:names:tc:opendocument:xmlns:form:1.0″
xmlns:script=”urn:oasis:names:tc:opendocument:xmlns:script:1.0″
xmlns:ooo=”http://openoffice.org/2004/office”
xmlns:ooow=”http://openoffice.org/2004/writer”
xmlns:oooc=”http://openoffice.org/2004/calc”
xmlns:dom=”http://www.w3.org/2001/xml-events”
xmlns:xforms=”http://www.w3.org/2002/xforms”
xmlns:xsd=”http://www.w3.org/2001/XMLSchema”
xmlns:xsi=”http://www.w3.org/2001/XMLSchema-instance”
office:version=”1.0″>

<style:font-face style:name="Times New Roman"
svg:font-family=”‘Times New Roman'”
style:font-family-generic=”roman”
style:font-pitch=”variable”/>
<style:font-face style:name="Arial"
svg:font-family=”Arial” style:font-family-generic=”swiss”
style:font-pitch=”variable”/>
<style:font-face style:name="SimSun"
svg:font-family=”SimSun” style:font-family-generic=”system”
style:font-pitch=”variable”/>
<style:font-face style:name="Tahoma" svg:font-family="Tahoma"
style:font-family-generic=”system” style:font-pitch=”variable”/>

Hello world!

ssssss

[/coolcode]

基本上就是这样了,还是很清晰的。

开源软件竞赛

晚饭的时候,对面坐的两个同学。由于他们刚到,要去打饭,所以先把东西放在椅子和桌面上占座。桌子上放了两张一样的宣传纸,我好奇,瞅了一眼。原来是开源软件竞赛的宣传纸,想不到今年搞得这么大,想想去年还是听说这件事情的呢,网址还是向高策要的。

那两个人打完饭菜回来,吃的时候开始聊了,从代码量到开发语言。我只是装作在吃饭,没有插嘴,毕竟这不是我的作风。

A:用什么语言写呢?最好是编写界面方便一些的。
B:用Delphi吧。(呵呵,我没说话,当我什么都没有听到,反正我没有用过那个东东,没有发言权。)
A:用C#吧。(嗯,挺亲切的,不错不错)
B:现在我不考虑界面这个问题,我在考虑内核(我差点把饭给喷出来,这个词够专业)

后来,两人基本上没有说话,可能都在思考问题吧。其实,我还是有一些想说的,但是都忍住没有说,每一个人都要有一个成长的过程。像cliff说的那样,经历过失败,才能记得住。

说界面不重要,那是假的,我们的项目无论是在ibm的创新大赛上,还是在开源软件大赛上,输人家一筹,最主要的原因就是没有可视化的东西,虽然idea够好,做的够“深”,但是评委们不可能在这么短的时间内了解你的系统,只能够通过感官刺激的强烈程度来判断你的东西的好坏。

这就是为什么李宇春能够一鸣惊人的很重要原因,她的外形、嗓音,对大家的冲击还是很强烈的,当然我没有对她的任何不敬,说这件事情也只是举一个例子:)

不过还是很钦佩那个老兄说的“内核”问题的,毕竟系统的运行机制搞明白了,整个系统基本上就没有问题了,用什么语言做只是小case了。

修改signitureswitcher

用thunderbird用久了,觉得它的签名挺有意思,可以从一个文件中读取签名。特别是一个signiture switcher的扩展,甚至可以根据发件人的邮箱来自动选择签名。

例如,发给cs的邮件,签名档自动用我的cs的个人信息,而发给pact518的,则用我实验室的信息。这样,我发每一封信的时候可以不用考虑签名档了。

不过这个扩展也有一个bug,我的签名档文件是有好多行组成的,但是到写信的时候却变成了一行,让人看得有点晕。

今天闲下来,终于可以看看这个问题,反正修改firefox/thunderbird 的扩展以前也做过,没什么了不起的。

读了一下代码,发现原来我写信的时候一直使用的html格式,我的签名档文件换行是“rn”的,而“rn”在html中是被免疫的,所以所有行走在一起了。

解决方法很简单,将所有的“rn”替换为“
”即可,如下。
[coolcode lang=”javascript”]
if (GetCurrentEditorType() == “textmail”)
{
if (signature.indexOf(“– n”) == -1)
signature = “– n” + signature;

currentEditor.insertText(signature);
}
else
{
if (signature.indexOf(“– n”) == -1 && signature.indexOf(“– <") == -1)
signature = “

--

” + signature;

if (signature.indexOf(“n”) > -1)
signature = signature.split(“n”).join(“
“);

currentEditor.insertHTML(signature);
}
[/coolcode]

当然前提是你知道如何添加进去,呵呵。如果想要现成的话,就mail给我,或者留言,我发过来:)

A Trick in FF Extension Version

自己做的Firefox扩展觉得很爽,但是官方的版本老是在更新,现在xyzproxy的版本比我当时定制的版本高了不少,一直现在Firefox对addon更新的时候老是提示我是否更新。

更新吧,用的又不顺手了;不更新吧,有老是提示我,很烦。干脆,来一个无赖的招式,人家老外叫做trick,差不多吧。就是把我定制的addon的版本调高一点,这样FF自然就不会提示我了,呵呵。

具体做起来也很简单,找到相应扩展的目录,例如我的 xyzproxy目录就在C:Documents and SettingsMarvelApplication DataMozillaFirefoxProfileswxec0cta.defaultextensions{3EA1289D-F5EF-4272-9CAF-159E1F661BFD},找到install.rdf文件,打开。

会看到下面一段,不同的扩展不一样,但是基本都差不多,想要知道更深的可以参考这里

[coolcode lang=”xml”]
xyzproxy
{3EA1289D-F5EF-4272-9CAF-159E1F661BFD}
1.12
To manage proxy ezly.
Xiang wei. Email:aubucu@hotmail.com
http://xyzboard.com/
http://xyzboard.com/firefox/update.xml
[/coolcode]
修改em:version的值,将1.12改为9.12,这样就OK了。估计xyzproxy的版本出到9的时候还久着呢呢。

eclipse的插件

以后的研究可能会用到eclipse的插件功能,所以先看起来。

看了一个hello world的实例,觉得eclipse的插件有点像firefox的插件,它们都是由一个menifest的描述文件,说明了插件的简单情况,以及插件所用到的资源(按钮、菜单等),格式为文本形式的(主要是xml格式),然后就是具体的功能代码了。

仔细想想也应该是这样子,先是对这个插件的简介,让eclipse和firefox对它有一个了解,并且加载它描述的控件,然后根据用户触发的控件事件来调用具体的处理代码。还好eclipse的后台代码是java,有反射的功能,而firefox扩展的后台处理代码是java  script,干脆是解释性的语言,所以使得宿主程序能够在运行时动态的调用方法。

外篇:王院士

昨天说好要写一下王院士的外篇,所以我就花一天时间来写一下。要知道IBM院士(IBM Fellow)在IBM可是很牛的,一共才50个,这里是他的简介

王院士,我们通常称之为王老师,如上篇说的,是一个十分善谈的人。不过之所以要写他,是因为他说的话引发了我的一些思考。

  • 兼收并蓄

IBM 之所以能够在业界长期扮演一个leader的角色,一个很重要的原因是它不是闭门造车,而是兼收并蓄。IBM在很多领域都是一个领跑者,一个标准的制定者。而在现在的IT界,想要一直走在最前面、掌握技术在若干年后的走向,那是十分困难的事情。第一要把握技术的发展方向;第二要有相当的实力。所以,IBM有一个“智囊团”,比如王老师也曾在那里工作。他们都是某领域十分厉害的人,掌握了自己现有的技术,了解竞争对手现有的技术,进而预测将来业界的发展方向,为公司的发展和决策提供依据。这些人可以说是该领域的大家了,我想这些人才真的是国内公司最缺少的人。所以它们只能做到人云亦云,始终落后人家一步。

同时,做技术的时候,IBM也不是闭门造车,而是根据自己的情况,参考别人的成就,做到技术的融合。IBM的五大品牌中的三大品牌Lotus、Tivoli和Rational就是收购了其他公司的产品,但是这些收购不是像中国的领导那样心血来潮完成的,而是根据公司当时的情况和需要所作的决策。也就是说,IBM是关注业界其他公司的情况,吸收它们的精华,来补充自己。我想,这种思想与现在IBM参与到开源运动的动机一定有一种必然的联系。

  • 服务科学

服务科学是去年IBM提出来的一个观念,开始我以为服务是单纯的提供各种服务,可是后来听了王老师的回答之后才知道,这里的服务其实等同于业务(Business)。
to be continued…

无用功

写了几篇流水账,记了这几天发生的事情.实在太不正常了.

辛辛苦苦忙了一个晚上,昨天下午准备给专家们演示,结果就只是老板和专家们说话,说话就pass了.我在那里就像一具木偶一样.

今天是参观,应该也能演示一下.结果院长带着一群专家过来,看了一下我的界面,说了一声,这是运行结果呀,然后就走了.

我当时那个ft啊.

站在巨人的肩上[征文]

如果说我看得比别人更远,那是因为我站在巨人的肩上。牛顿,1676

在同龄人中,我也许算是比较成功的。做了一些项目,获得了一些奖,得到了大家的认可。但是我自认为天资一般,为什么能够走得比较好呢,我曾经很认真地思考过这个问题。

其实答案很简单:IBM。我站在了蓝色巨人的肩上,我与他解下了不解之缘。

IBM Club

早在大二的时候,我加入了哈工大的IBM俱乐部,现在我意识到,这是一个多么棒的选择!

在俱乐部中,我第一次感受到了学习的快乐。有些人一辈子都无法感受这种快乐,因为他们学习的东西恰恰是他们不喜欢的。

俱乐部的氛围十分融洽,俱乐部中有很多十分厉害的师兄。我与他们相处,向他们学习。耳濡目染,我开始喜欢上了Linux

学习Linux并不容易。我想起了IBM的一幅宣传海报:一座宏伟的图书馆,一个小孩坐在中间,形成了强烈的反差。图书馆中到处都是书籍,小孩的眼神中透出了一种敬畏和渴望。海报的标题是:Linux is Education。那时,我觉得自己就是那个小孩,师兄们将我引到了一座城堡,当我打开大门,才意识到里面是一个如此神圣的大堂,我自己是如此的渺小。

然而,在俱乐部的老师和师兄们的指导下,我渐渐地克服了最初的恐惧感,开始迷恋起这个图书馆来了。我平时研究自己感兴趣的内容,有时候还和大家一起讨论,进行讲座,向大家介绍自己学习的心得体会。

这种学习的过程无疑是快乐的,而与别人分享这一份快乐,这份快乐就变成了好多份,我们就是这样将自己的快乐最大化。

在俱乐部中,我学习到的不只有技术,还有思想,或者说是一种哲学,一种如何学习、如何工作,以及如何开发的哲学。俱乐部的Cliff老师在平时就潜移默化的向我们传输这种哲学。在GNU/Linux社区,这叫做GNU哲学,就是一种自由的精神。所以,我时常会觉得Cliff是一个传教士,而俱乐部就是一个教堂,而我们是一群信徒。这是一种很奇妙的感觉,当我看完《Free as in freedom》之后,我才明白,这个教堂是建立在计算机科学之上的,用RMS的话说,就是Church of Emacs。而我们做的,就是将自由的思想传播给尽可能多的人们。

可以说,俱乐部是一个磁场,它用一种魔力吸引每一个进来的人。如果能够在这个地方呆上几年,那不能不说是一种幸运了。

创新大赛

在我即将离开俱乐部的时候,我参加了第二届“IBM杯”高校校园创新设计大赛。借这个机会,我开始和我的师弟们,做一个自己感兴趣的项目。

从选题到定题,从分析到设计,从实现到测试,我们都一丝不苟地完成,在这个过程中,我深深地感受到了“Think”的内涵。这种勤于思考、善于思考精神是IBM的特色和标志,唯有如此,IBM才能做到专利申请数多年榜首。我们要做的是,如何使自己的项目做的更有新意,更适合用户。幸运的是,在俱乐部中,我们早已习惯了去思考,去了解用户的需要。

尽管定题花费了一番时间,不过良好的开端是成功的一半。我们在项目的整个开发工程中比较顺利。前期大量的分析准备和开发时良好的Teamwork发挥了巨大的作用。

一路杀入决赛,在整理完文档、代码和Demo后,我到了北京。在这里,我见到了一样怀有技术热情和理想的同学们。我觉得那几天最重要的不是比赛的胜负,而是能够和这些同龄人一起交流彼此的看法。

虽然只有短短几天,但是这次大赛开阔了我的视野,了解了最新的技术发展。我从中也是受益匪浅。

回顾我的种种经历,其中始终伴随着IBM的影迹。是的,IBM这个蓝色的巨人,对我的影响无处不在,无论观念上、思想上,还是技术上、处事上,我已不是当初图书馆内坐着的那个懵懂小孩了,我已开始用自己的方式,研究那浩瀚的书籍,也许若干年之后,我也能写出自己的著作来,留在图书馆的名人堂中。

我不能不感谢IBM俱乐部、Cliff和我的师兄们,而他们也是站在巨人的肩山。今天我站在他们的肩上,今后必定有人站在我的肩上。所以我想,蓝色巨人会越来越高,也会越走越远。