2005-12-31

HELLO MY BABY lyrics (Phish) ♫

Hello my baby, hello my honey
Hello my ragtime, summertime gal
Send me a kiss by wire, by wire
Baby, my heart's on fire, on fire
If you refuse me, honey, you lose me
And you'll be left alone, oh baby
Telephone, and tell me, tell me
Tell me I'm your very own, ohhhh

Hello my baby, hello my honey
Hello my ragtime, summertime gal
Send me a kiss by wire, by wire
Baby, my heart's on fire, on fire
If you refuse me, honey, you lose me
Then you'll be left alone, oh baby
Telephone, and tell me, tell me
Tell me I'm your very own
Tell me that I'm your own

Read more at phish.lyrics-songs.com/...

2005-12-29

这套小游戏好玩


Simon Tatham's Portable Puzzle Collection”收集了很多耐玩的小游戏,都可以同时运行在*nix/Windows/Mac OS X中,而且还移植到了Palm上。太棒了,我可以在所有这些平台上玩一样的游戏了,呵呵。
补充:在Debian里,可以直接sudo apt-get install sgt-puzzles安装该游戏包。

完蛋,freebsd.org已经被!@#$,mozilla.org好像也要不行了

最新消息,freebsd.org已经不通了,mozilla.org在某些地方也已不通,gnu.org有时下载文件也会出问题……

Orz

在firefox上共享文件,那会有多妙

这两天关于这个firefox上的P2P插件的消息满天飞,今天又顺着slashdot的链接过去看看看……呵呵,又有一个被slashdot攻击的网站诞生liao:
Sorry, the good news is that we have been slashdotted...
The bad news is that our main server is down...

Please try our mirror site or come back later !

We apologize for the trouble.

这说明大家都很期待这个神奇插件的诞生,呵呵。期待在浏览网页的时候,可以随时跟朋友共享自己的上网经历、有趣的文件、图片、网页,这感觉肯定会很妙的。

2005-12-23

XChat-GNOME翻译完毕

这两天上班的事比较琐碎,而且感觉比较累,想休息休息,所以有机会就抽空 翻译 一下 XChat-GNOME 。托Rongjun Mu的福,我要翻译的部分实在已经很少了;所以在扫荡光了未翻译的条目后,又校对了一遍,疏漏应该相对少多了。有时间的朋友请帮忙再校对一下,谢啦。按照 GTD 做完第一件事,很开心,给自己记下一笔 :)

另外,这个翻译用的 rosetta 系统确实不错;从UI和URL上看来,应该是基于 Zope3 开发的。除了偶尔有点慢、偶尔会提交出错以外,用起来还是很方便的。可惜暂时还不会开放源码,而且项目大都是 ubuntu 相关的;不然在国内搞这么一套系统,就可以把很多亟需翻译的项目都很快的组织起来,让大家翻译PO、文档就像在线制作“ 文泉驿 ”字体一样方便。关注一下,看它准备什么时候把代码放出来。

Read more at xchat-gnome.navi.cx/

Python创始人Guido van Rossum去Google工作了

说Google在网罗全世界的IT精英,真的一点都不为过。希望中国也会出现像Google这样的公司,也许我们一起努力,10年之内“Google的中国版”公司能够出现?

Read more at www.oreillynet.com/pub/...

在 GNOME 里养小鱼(彩蛋)

上次看到OOo的彩蛋,这次又有GNOME的彩蛋。没事看看小鱼在面前游来游去,生活也会变得有生气起来。

GNOME彩蛋的启动和退出方法:使用 Alt+F2 打开“运行”对话框,输入free the fish并回车,开始养鱼;在小鱼身上点鼠标左键或右键,赶小鱼出家门。

OOo彩蛋的启动方法:在 OOo2 calc任意一个格子中输入=GAME(”StarWars”),然后回车。

Read more at www.gnome-cn.org/newsit...

2005-12-22

快换SHA吧,MD5真的不能再用了

“md5 已经能够在很短的时间内被破解...”这下原来还存着侥幸,认为之前的论文只是理论研究成果,现实世界里MD5还是很安全的人们没有话说了吧。演示算法能45分钟破解MD5,足够让每个人都警惕了。要是觉得SHA1也不行,也可以试试HMAC,基于RFC2104的算法。换了换了,我先去查查自己的代码里有什么地方用MD5……

Read more at plog.longwin.com.tw/pos...

备案大限到期,FreeBSD中文站遭殃

据可靠消息,由于没有进行备案,freebsd.org.cn被有关方面关闭。由于最近刚刚进行过数据备份,网站资料没有遭受损失。目前该网站维护人员正计划迁移到海外主机。

2005-12-21

Wikipedia Founder Edits Own Bio

最近这几天关于Jimmy的事真是连续不断呀,这都怎么了?是不是上次BBC报道过后,大家都盯上Wikipedia、盯上Jimmy了?Slashdot有人提到了Jimmy编辑过自己在维基百科上的自传曾经有18次之多,指责他违反了编辑自传的原则。不过,我也持一些评论的网友的意见:如果有人恶意修改你的自传,加上些莫须有的东西,你都必须袖手旁观,这样才算中立,才算客观吗?要是非得那样那才是真见鬼了呢。那个原则,也确实只是SHOULD BE,而非MUST BE,不是强制性原则:

This page is considered a guideline on Wikipedia. It illustrates standards of conduct, which many editors agree with in principle. However, it is not policy.

另外,指责还包括另外一些道德上的事,比如Jimmy抹掉了Larry Sanger也是共同创始人的部分;并修改了Bomis.com的部分,据说那是一个色情图片网站。如果Larry是维基百科的共同创始人的话,那就是事实;这个事实也就不会因为Jimmy的自传里没有提到就混淆不请了。关于Bomis.com,厄,等有时间再研究吧;不过按照Slastdot上网友的考证,Jimmy修改之后的描述也许更恰当一些。更详细的讨论,还是请诸位朋友去看Slashdot吧。

Read more at slashdot.org/article.pl...

2005-12-20

NewsForge | IT management in Asia

看看亚洲的兄弟们多么艰苦呀:
Managing an IT concern in Asia presents its own special set of challenges in addition to those faced by CIOs in other parts of the world. When asked what his worst nightmare scenario might be, Kim Carter, CEO of Carsena Technology Services in Thailand, responded, "The first thing I hear in the morning is: 'Hey, Boss, the server's down.' 'Then reboot it!' 'Can't, boss, the power's out, too.'"
LOL
据说国内一些互联网公司也基本处于这个水平。

Read more at business.newsforge.com/...

听Google工程师讲讲“性能的代价”

相比较国内粗放的项目开发,Google公司的工程师真是像在做博士论文的课题呀。Google的首席工程师Luiz André Barroso在 ACM Queue 发表了“ The Price of Performance ”,这里是“ 胡说袋鼠 ”翻译的 译文 。我在想,是不是中国也该培养点IT方向的清算师,帮我们算算自己公司里的糊涂帐。

Read more at spaces.msn.com/members/...

2005-12-19

谣传?维基百科创始人Jimmy Wales遇刺身亡?

Jimmy遇刺身亡?第一感觉就是--谣传。但愿如我所想。

Read more at hopesome.com/archives/6...

del.icio.us的官方解释来了

del.icio.us对最近事故的官方解释如下:

Due to the power outage earlier in the week, we appear a number of continued hiccups. We've taken everything offline to properly rebuild and restore everything. I apologize and hope to have this resolved as soon as possible. Thank you for your continued patience.

Updates will be posted on our blog as we have them.


不过我访问他们的blog有点问题,始终连不上。恩,此刻访问他们blog的人肯定不少。

Read more at del.icio.us/

C语言的代码检查及单元测试

最近写C比较多,不过C的单元测试一直也没做起来,只能用shell写一些功能测试顶上了。先把找到的一些资料放着里,回头再研究吧。有那位朋友有C Unittest的经验,给提点建议吧。

检查内存泄漏
http://www.gnome.org/projects/memprof/
http://valgrind.org/

代码安全性审计
http://directory.fsf.org/devel/build/RATS.html
http://www.dwheeler.com/flawfinder/

C语言单元测试
http://simplectest.sourceforge.net/index.php
http://gethos.net/opensource/cunit.php
http://www.recursism.com/s2004/zp/products/gnu%20autounit
http://cutest.sourceforge.net/
http://check.sourceforge.net/
http://www.falvotech.com/projects/cut.php
http://sourceforge.net/projects/cut
http://cunit.sourceforge.net/
http://c2.com/cgi/wiki?PoorMansTestingFramework

备份有多重要

即使是自己最信赖的服务,也会有出错的时候。航天飞机都不能幸免,何况del.icio.us呢:
del.icio.us is down for emergency maintenance. we'll be back as soon possible.

还好我前些日子把自动备份加到crontab里了,阿弥陀佛:
0 23 * * * curl --user myuser:mypassword -o /home/xyb/netbackup/delicious-xyb.xml http://del.icio.us/api/posts/all

每天一备,再加上Simple Backup,我基本上可以回朔到前一两个月的任何一个版本了。欧耶~
这事让我又温习到的一个教训是,该出事的总会出事。还有,对一个服务太依赖了不好:如果有很多理由离不开它,那最好在“上瘾”之前先确定一下,它是不是提供了良好的备份支持或者后背方案。

2005-12-18

SSH穿梭机

许多人都经常在Linux/UNIX/*BSD的系统中来回穿梭,这是他们的日常工作,是养家糊口的方法。我也是其中的一员。在系统中跳来跳去、来回登录、传输文件,是挺烦人的;为了减少点麻烦,让日子过得更舒服一些,大家都积累了一些小手段,让事情变得更简单一些。今天记录一下我自己做这些事的方法。我的系统是Debian,下面也以它来讲解;但在其他的大多数系统中也都差不多,Windows系统则可以通过Cygwin来得到下面的这些程序。

一般来说,这些系统都是通过ssh来维护的;要使用它,得先安装openssh-client:
sudo apt-get install openssh-client

然后为自己创建用来进行登录认证的密钥,它可以帮助我们在登录时更安全和方便,也可以让一些工作实现自动化:
test -d $HOME/.ssh || mkdir -m 0700 $HOME/.ssh
ssh-keygen -f $HOME/.ssh/id_rsa -t rsa -b 2048

在创建过程中,要输入两次passphrase。passphrase是只有主人知道的密码,是密钥的最后一层安全屏障;有了它,即使你的.ssh/id_rsa文件被人偷走,盗贼不知道passphrase也一样不能冒用。

不过passphrase带来的一个问题是,每次使用密钥之前都要被提问,但ssh-add可以解决这个麻烦。不过我一般不直接使用ssh-add,有了更方便的Keychain,还可以更省心一些。安装Keychain:
sudo apt-get install keychain ssh-askpass

其中ssh-askpass是用来提问passphrase的小程序。也可以选择安装ssh-askpass-fullscreen或者ssh-askpass-gnome。然后
mkdir -p $HOME/.keychain

并把一下语句放入自己的shell rc。比如我是用bash,则加入~/.bashrc:
keychain ~/.ssh/id_rsa
. ~/.keychain/${HOSTNAME}-sh

这样,可以在第一次登录shell的时候,自动加载密钥,而后就再也不会提问它了。

至此我自己的工作环境就准备完毕了。为了登录到其他主机,还需要把密钥放入主机的~/.ssh/authorized_keys文件中。我通常使用下面的脚本来做这个工作:
#!/bin/sh
#sshpubkey.sh
#Here's a little one liner that'll do the trick (for passwordless auth) after you've done the ssh-keygen:
target="$1"
ssh "$target" 'test -d .ssh || mkdir -m 0700 .ssh ; cat >> .ssh/authorized_keys && chmod 0600 .ssh/*' < ~/.ssh/id_rsa.pub

给要访问的主机添加认证时,只需执行:
sh sshpubkey.sh xyb@my.host.com

就自动设置完毕了。

下面我们就可以开始工作了。要登录它,就:
ssh xyb@my.host.com

要上传文件时,执行:
scp -r mydir/ xyb@my.host.com:/path/to/save

要下载文件时,执行
scp -r xyb@my.host.com:/path/to/ mydir

这样就方便很多了。

不过,有些文件可能经常需要更新。比如,我喜欢在自己的机器上编写程序,然后在另一台主机上编译和调试。所以,我需要有个工具能帮我把文件和目录“同步”到主机上去。这是lftp的长项:
lftp -c "open sftp://xyb@my.host.com; mirror -R /my/dir /path/to/dir"

这一条命令就把数据从我的/my/dir目录“镜像”到了远程主机的/path/to/dir了;而且聪明的lftp会自动判断那些文件是被修改过的,它只更新那些新文件。实际上,我更喜欢这样使用:
lftp -c "open sftp://xyb@my.host.com; repeat 2 mirror -X '*.swp' -v -R /my/dir /path/to/dir"

这条命令会把我的目录每2秒向远程主机同步一次,同时显示它做过那些更新,并忽略所有.swp文件:那是我的编辑器vim创建的临时文件。这样,我就可以放心的编辑我的源代码,每次保存的新代码,至多2秒钟之后就会出现在我的调试主机上了。是不是很方便呢 :-D