Blog on 27th Floor
主页 随便 电脑 电影 社会 阅读 下载 本站 存档
主页 随便 电脑 电影 社会 阅读 下载 本站 存档

07/26/07

Mozilla准备剥离Thunderbird

cathayan.org版权所有,保留一切权利。转载请保留此说明。谢绝商业转载。
Mozilla组织的老大mitchell的blog上说,要为Thunderbird找个新组织,原因是Mozilla目前的任务是集中在Web也就是Firefox的开发运营上,而Thunderbird不符合这个方向,人手上也搞不过来。她提出的选择方案包括成立一个新的非赢利组织,在Mozilla下面开个新的分支,以及直接把Thunderbird交给社区管理,就如同现在的Mozilla套装——SeaMonkey一样。

以前,我也是用Thunderbird的,但是后来就转向Gmail了,在一个Gmail里管着2个常用信箱。当然这是因为单位也没啥要求才敢这么做。但是直到现在,我都在所有机器上装了最新的Thunderbird,虽然不再收发信件,但也要维护以前的600多MB的信件;而那个Gmail信箱,已经用到55%了。

Thunderbird其实超级好用,多编码支持能力很强(但至今仍有一个Bug,有人在BBS上提到的),并且还有很多创新功能,像搜索成文件夹,过滤器+动作,标签等等。但现在是网络的时代,还是最好能在网上有一份。在这方面,TB能做的工作似乎不多,所以有些跟不上时代了,除非到处带着电脑。

这也说不上什么好事坏事,也许这种应用就是慢慢变得无聊了;也就又有人想出什么好主意。

说到这个主意,有人已经在Fx平台上搞出了一个“站点专用浏览器”,称之为WebRunner,差不多就是单独起动一个Firefox,上面加载这个站点用的一些功能。目前它的页面上可以下载0.5版,并且提供Gmail、Gcal等几个Web服务的Profile。

07/26/07 16:18:51,由 cathayan发表。 本文链接

CK内核

cathayan.org版权所有,保留一切权利。转载请保留此说明。谢绝商业转载。
这个报道之前,都不知道这个-ck补丁包。它的作者Con Kolivas日前宣布不再进行开发,结束这个项目,转向另一个巧克力挑战项目:学日语。其实不如学汉语。

这个Linux内核的补丁包专门针对桌面应用的性能提升,起因是CK觉得Linux在桌面上太慢,经常有各种慢的问题吧,于是就自己动手,改了许多东西,其中有一些改进已经进入了官方内核,但还有不少没有进入。

CK认为,他之所以进行这项活动,有三个原因,第一有乐趣,他很享受在电脑前搞这个;第二是智力上有挑战;第三也是一种自我实现,被众人认可的感觉。他本人是澳洲墨尔本医院的一名麻醉师,只在业余时间搞黑客活动。而在2002年之前,他甚至不知道C代码长什么样子!他也没有受过专门的计算机科学教育,这一点实在是太惊人了。不知道是不是英语人士更容易进入这些领域,或者消除了一些内核Hacking的神秘感?

而他之所以停止开发,就是因为第一项,已经没有乐趣了。或者是搞烦了,许多东西得不到重视,比如访谈中他讲了很多CPU Scheduler,他觉得他的方案更好,而内核维护者不接受他的代码。但似乎也没有特别好的评测可以比较明确地支持他,他的Fans们之所以支持他也都是因为他们感觉这个-ck补丁包确实有用。

说起来,早前Linus改了什么东西,之后X下鼠标反应明显好转,不知道是不是他的功能。

CK对目前的Linux内核开发有不少意见。一是现在的内核开发受到商业应用及大公司的支持,而他们都集中在服务器领域,他们都力图让Linux支持更多的CPU,更大的内存,更好的服务器性能;与此同时却忽略了桌面应用的需要;二是内核开发虽然也很公开,邮件列表也在那里,但一般用户根本不敢上去发言,就怕显出自己太傻,从而造成开发与用户之间完全脱节。

第一点应该也是事实,但感觉现在桌面性能也还可以吧,至少同一机器上并没有觉得X就比XP或者更慢的Vista差劲太多;第二点应该更是事实 :P 但现在也有越来越多的公司推出Linux桌面机器,像Dell,还有传说HP也会跟进。有大的电脑公司的动作和像Ubuntu这样比较有进取心的发行版,Linux桌面没有问题。

CK也讲了很多电脑史,因为他在24年前就用上个人电脑了,还不是PC。他认为当年的电脑业是硬件驱动,竞争激烈,很有趣;而后来IBM PC和微软兴起,硬件成了操作系统的奴隶,这个行当就变成很无聊了。而Linux属于有趣的。之所以会出现这种转变,他只是认为市场推广做得不好,让微软的破烂系统抢了先机。

具体的技术不懂,还是希望桌面也能有进步吧,谁用过-ck的可以谈谈感受,是不是比普通内核就快很多?像访谈中提到的某内核维护者回信说,他不能重现那个慢的问题,因为——因为他的机器是4CPU,4GB内存,硬盘都是SCSI+Raid几几几的,这是2002年,这也过分了点,也应该准备个PIII试试嘛。

07/26/07 11:07:51,由 cathayan发表。 本文链接

07/22/07

Dell 640m上的Debian Linux CPU/风扇/按键

cathayan.org版权所有,保留一切权利。转载请保留此说明。谢绝商业转载。
又调了一个Dell 640m上的Debian sid,把CPU频率方案换成了OnDemand,风扇用了Dell的小程序来显示和自动调节,也试了一下这个本上带的多媒体按键的设置。

CPU的频率由cpufreqd来管理,记得这个是针对英特尔的,虽然AMD也能用,但AMD似乎还有更好的;这个daemon运行之后,可以为它设定使用的方案,这些方案在/etc/cpufreqd.conf文件中,其中的设置意思都很明确,一看便知。要想用这些方案,还要加载相应的内核模块,如cpufreq_ondemand和cpufreq_conservative等,这些模块可以在/lib/modules/2.6.21-2-686/kernel/drivers/cpufreq下找到,加载要用的即可。现在CPU频率高,还有双核,通常都不需要太高。现在运行几个程序,再加上打字,竟然基本停留在800MHz上。

风扇这东西,因为笔记本的设计各家差异比较大,这个属于监控/散热/耗电的设置也没有统一的管理工具,不同品牌可能都有各自的程序。属于Dell的叫i8kutils(这里是Win版,不知道Linux版是怎么回事),它包括了Dell笔记本的一些控制,其中有风扇,CPU温度,BIOS版本,fn功能键等。现在刚装上,弄了个gkrellm来管理风扇状态,可以设定不同的启动温度。gkrellm的插件管理还不错,比较直接地设定温度,确定哪个风扇来转,最后一个温度是上下偏差,缺省是5,也就是说如果设定40度转,其实在35度就开始了。

多媒体按键用的程序是lineakd,它也是个daemon,可以设定几个多媒体按键的功能,刚才设了两个,增减音量,还不错,也可以在屏幕上显示大大的图形。配置上可以从网上抄,也可以用klineakdconfig这个程序也设。这个设置可以分用户,通常放在~/.lineakd/下面。调音量以及保存音量用aumix相当不错。这个东西感觉没有太大用处么,一直想要没这几个键就好了,也省得几G硬盘。

本来这些工作,应该是微软写好程序,管它用不用,都给它带上,再由笔记本厂商进行定制和调整,可惜Linux还没有这个福利。

07/22/07 16:23:13,由 cathayan发表。 本文链接

07/21/07

Linux上U盘自动挂载混乱总结

cathayan.org版权所有,保留一切权利。转载请保留此说明。谢绝商业转载。
为这个问题,重启机器好多次,虽然总算工作正常,但完全没有明确的认识。系统情况:Debian sid,xfce4.4,gnome-core也安装,但没有用过;文件管理使用xfce4的thunar,volume-manager使用thunar的thunar-volman。

mount输出:

/dev/sdb1 on /media/usbdisk type vfat (rw,noexec,nosuid,nodev,iocharset=utf8,umask=0000)

/etc/fstab里加的这一行:

/dev/sdb1 /media/usbdisk vfat iocharset=utf8,users,noauto,umask=0000 0 0

其他地方没有改变,包括/etc/hal/fdi/policy目录下和/usr/share/hal的fdi文件都没有动。

感觉中情况是这样的:

  1. thunar的volman不会看那些hal和fdi文件,在里面加多少iocharset=utf8也没用;
  2. thunar-volman可以和gnome-volume-manager共同存在,但thunar-volman会弹出thunar窗口,而gvm会弹出nautilus的窗口,于是一插入U盘会先后弹出两个文件管理器;
  3. 虽然fstab里设定了U盘的加载点是/media/usbdisk,但thunar挂载后在窗口里还是显示KINSTON的名字,但在term里查看,实际上还是在/media/usbdisk目录下;
  4. gnome-volume-manager可能会看那些fdi policy设定,不确定,同时存在thunar-volman的时候,似乎thunar运行的早一些,所以没看清gvm的情况。


目前,thunar-volman配合fstab的选项和thunar文件管理器,工作正常,反正是用xfce4的桌面,就先这样吧。

看上去这个技术又是一个正在发展中的东西,各家的处理都不一样,统一的规范也没有,听说kde还有不同的处理。大体就是得有个volume-manager,加上一个文件管理器,这种东西自然是一家的配合比较方便,但配置显然有所不同,一个fstab,一个是/etc/hal/fdi/policy下面的fdi文件,具体哪个管用,只好根据自己机器实验了。

某大侠给的fdi文件:

 1 <?xml version="1.0" encoding="UTF-8"?>

 2 <deviceinfo version="0.2">

 3   <device>

 4      <match key="block.is_volume" bool="true">

 5          <match key="@block.storage_device:storage.hotpluggable" bool="true">

 6             <match key="volume.fstype" string="vfat">

 7                <merge key="volume.policy.mount_option.iocharset" type="string">utf8</merge>

 8          </match>

 9        </match>

10      </match>

11    </device>

12 </deviceinfo>


07/21/07 10:28:39,由 cathayan发表。 本文链接

07/19/07

在Debian上用iPod还挺简单

cathayan.org版权所有,保留一切权利。转载请保留此说明。谢绝商业转载。
很早前在老机器上试过一回,当时/media目录下已经出现了ipod的名字,×××的ipod这样的,但是gtkpod启动后死活说找不着/media/ipod,搞个连接过来似乎行了,但操作似乎都没有效果,就像ipod完全不存在。

刚才又试,居然一点问题也没有发生,传了首ace of base进去也非常顺利,真是进步很大啊。可能和现在Xfce4对这些设备的自动挂载有关系。现在Xfce4的文件管理器,叫做Thunar的,直接有个thunar-volman,也就是volumn-manager,这些usb设备挂上去都能直接出来,工作得很好。如果是gtk的话,可能需要的是gnome-volumn-manager。然后又装了Rhythmbox这个媒体管理器,里面也自动地出现了ipod的身影。Rhythmbox自动把gnome-volumn-manager给装上了,也没有引发什么冲突问题。

总之没有什么不能做的吧,并且gtkpod还能把ipod里的歌曲直接拷贝出来,往里面拷贝歌曲也不用非要和本地同步,比itune还方便。

07/19/07 00:01:00,由 cathayan发表。 本文链接

07/17/07

Linux/Xorg上的字体微调

cathayan.org版权所有,保留一切权利。转载请保留此说明。谢绝商业转载。
刚才查Firefox用Pango的问题,想把这个去掉,不小心看到个西文用户说,Linux上的字体还是个噩梦 :P 其实他那里不过是因为开启了Pango支持而把MathML搞乱了一类的错误,要他碰到破碎的中文字或者一个页面上根本不显示中文,只显示西文,只怕就要疯掉了。

说实话,现在X上处理字体已经是大大地进步,也就是这4、5年的时间,freetype/xft这套技术发展起来,对字体的支持程度和效果基本接近Windows了。但是同样的,为了得到较好的效果,克服一些小bug,还是要自己动手调不少东西。

好在网上已经有人总结了“字体配置-local.conf详解”,还有“Linux字体微调-Windows效果篇”这样的详细文章,前者全面清晰又简单,很实用,后者可以在有兴趣有时间时慢慢琢磨──连设置显示dpi都算上了,还列出微软对不同字体不同字号下的设置,可以一对一地把字体调到Windows的效果──微软开发软件的价值啊!

这回我加的是替换Simsun字体中的英文,因为指定用宋体的时候,其中的英文会在加粗时显示极为破碎,这方面Windows显示效果好很多;另外加上了分自由字体和微软字体来分别设置hint的方法,效果确实不错。宋体英文破碎的效果可以用前一篇freebsdchina论坛的页面来检查,或者看水木的版面文章列表也可以。

最后给常用的关闭宋体某些字号的AntiAlias语法补了一点,就是在粗体时继续保留AA,这样粗体的效果要好一点;当Firefox使用Pango时,保留粗体的AA也会在几个字号上采用内嵌的点阵,而关闭Pango时,则不论什么字号的粗体都不用点阵。这是在Debian sid的Iceweasel上观察到的。

有些情况下Firefox使用Pango会有问题,比如上面说的MathML,或者是以前有过的显示速度慢等等,这时可以在~/.mozilla/firefox目录下建立一个文件,名为rc,其中写上这一行:MOZ_DISABLE_PANGO=1.

只对正常字体关闭AA,而对粗体继续AA的方法:

 1 <match target="font">

 2         <test name="family" compare="eq"><string>SimSun</string></test>

 3         <test target="pattern" name="weight" compare="less_eq">

 4                 <const>medium</const>

 5         </test>

 6         <test name="pixelsize" compare="less_eq"><int>19</int></test>

 7         <test name="pixelsize" compare="more_eq"><int>11</int></test>

 8         <edit name="antialias" mode="assign"><bool>false</bool></edit>

 9 </match>



本文的主要目的是推荐那两篇文章。

07/17/07 22:56:29,由 cathayan发表。 本文链接

07/14/07

Redhat邀请Yuking加入

cathayan.org版权所有,保留一切权利。转载请保留此说明。谢绝商业转载。
从BBS上看到的消息,不错。说是stardict的作者huzheng给他发了信,请他加入并继续开发fcitx,但Yuking回信说他现在工作不错,是在成都,暂时就不考虑了:
我只是一个业余和选手啊,现在在中国物理研究院工作(我们国家搞核武器的地方),工作上还不错,因此谢谢您的好意啊。这次说放弃fcitx的开发,的确是因为被BS的次数太多了,所以突然就觉得不想做了。不过还是没想到会导致这么大的争论,因为我发那个贴子的时候只是有点伤心,并不想出现这种局面,如果知道这样肯定是不会这样写的。

从第一句话里的“和”字来看,Yuking确实是用五笔的 :D

总之祝他好运!也希望Fcitx有人接手。

这些公司还是国外的有点眼光,这些人都是人才啊。还看到CUPS的作者刚加入Apple了,也还会继续开发,不过是Apple把CUPS代码也拿下了。

07/14/07 10:45:36,由 cathayan发表。 本文链接

07/13/07

About协议

cathayan.org版权所有,保留一切权利。转载请保留此说明。谢绝商业转载。
From MozillaZine Knowledge Base

Mozilla系列浏览器支持一些特殊的URL地址,都用about:开头,在浏览器地址栏里输入即可看到效果。

about: — 显示"Help -> About"这一页的内容。
about:about — 列出所有的about: URL。(Firefox不能用,Mozilla Suite only)。
about:blank — 空白页,可设置为浏览器首页。
about:bloat — 显示BloatView输出,正式发行版里关闭了。
about:buildconfig — 显示所用的浏览器编译时的选项。
about:cache — 显示缓存统计及硬盘缓存的位置。
o about:cache?device=memory — 列出内存中的缓存内容。
o about:cache?device=disk — 列出磁盘缓存的内容。
about:cache-entry — 显示某条缓存内容的详细信息。在about:cache的链接中使用,需要参数。
about:config — 修改用户首选项的界面(其实内容都存在prefs.js中)。
about:credits — Mozilla计划贡献者名单。
about:logo — 显示Mozilla的图标(Mozilla Suite only)。
about:kitchensink — Mozilla系列都不包括此功能,但可以安装扩展加上它。
about:license — 显示Mozilla Public License和Netscape Public License. (仅限Gecko 1.8及更新版)。 现在的Firefox应该显示MPL/GPL/LGPL这三个协议了。
about:mozilla — 著名的Book of Mozilla书中的一条。
about:plugins — 列出系统安装的所有插件。

里面的奇怪名词可以继续Google,还是挺有趣的。不过平时常用的也就是config/plugins/cache这三个,除了blank之外。Config用来配置很常见了,Plugins可以用来显示当前装的插件,Cache可以看缓存内容,同时它也提供链接可以另存,把浏览器已经读下来的内容存下来,这些内容直接在缓存目录下看的话是不容易找的。

07/13/07 23:24:21,由 cathayan发表。 本文链接

07/10/07

Yuking要放弃fcitx了?

cathayan.org版权所有,保留一切权利。转载请保留此说明。谢绝商业转载。
真是惊闻啊,下面是Yuking发表在Fcitx主页上放弃fcitx的贴子,不过现在我看不到这个主页了,甚至linuxsir.org也看不了了,不知道怎么回事,下午还可以看的。


昨晚云帆论坛上某个编程高手说小企鹅这儿不好那儿不好,比如,代码写的很差,用中文配置文件就说明我本人很“幼稚”等等。也许某些能人的确能从程序代码上看出作者的本性来吧。

但,也许现在我就是在做一个“幼稚”的决定,即决定终止这个程序的开发。

从最初的“G五笔”到现在的fcitx,已经经历6年左右的时间了,感情还是有那么一些的。不过,作为一个业余的编程爱好者,以GPL的方式发布这样一个软件,那些编程高手们自然有很多理由来BS我,比如坚持使用中文配置文件,代码写的一塌糊涂等。我也可以选择找个高手重新构建整个程序,但实在不想了,至少是现在不想了,让它就这样终止吧──反正主要也只是我一个人的东西。

这种想法其实由来已久,这次这事只不过是个导火索而已,终于决定让自己彻底离开这个圈子──我本来就不该属于这个圈子的。

如果您真的喜欢这个小程序,那真的不好意思啊,请使用其它的输入法吧…… :D


鄙视这种无聊的所谓高手!道理就不讲了,懒得。

Yuking大侠根本就不要理会这种人的说法啊,理他还让他兴奋了。根本无所谓。我不知从哪里听说有传闻,说是Yuking本是文科出身,不知真假──就算不是真的,那位高手在fcitx这个程序面前只怕也没有拿得出手的作品可以比较;就算您在什么牛B大公司默默无闻地或者不得不默默无闻地,为全人类或是为某个牛B人物作贡献,在面对开放源代码的程序时,又何必无聊发骚呢?

Linux平台上输入法选择不是很多,趁手的五笔我只找到Fcitx这一个。如果以后真的不再开发,等什么库升级之后老版就不能用,那可是比较惨。今天下午看fcitx主页时就发现下载那里真的都下不了了 :(

可惜现在我已经只会写Hello world了 :p 不过,如果不想默默无闻的话,或者是在校的想满足李老师说的10万行代码的要求的话,这是多好的出手机会啊。

07/10/07 22:28:07,由 cathayan发表。 本文链接

07/09/07

comScore的亚太区网络调查

cathayan.org版权所有,保留一切权利。转载请保留此说明。谢绝商业转载。
这是comScore今天发表的亚太区10个单位的互联网行为调查,时间设定在5月份。在这个月中,这10大单位共有2.84亿独立的、15岁以上的网民、从家中或从工作场所上网。这是该地区15岁以上人口的10%。平均下来,该区人民在5月中有13.8天上了网,用时20.2小时,浏览了2171个页面。同时,全球这三个数据分别是17.1天,25.2小时和2519个页面。说明亚太区网民活跃程度不是很高。

comScore发现:
  • 韩国网络普及率最高,达65%,其次是澳大利亚的62%,新西兰60%,香港59%。印度最低,只有3%。
  • 中国网民总数最大,达9150万(15以上),普及率仅为9%。日本有5370万网民,占人口49%,韩国有2630万。这三个地方的网民是该区网民的60%。
  • 韩国人上网最活跃,5月上网17.4天,花费31.2小时,浏览了4546个页面。
  • Yahoo是这个地区最受欢迎的网站。

评:这个调查不包括网吧数据,所以中国网民数目比CNNIC的1.3亿小了不少,很可能还有3000多万人会在一个月中至少进一次网吧。而网吧用户确实少有浏览页面的。Yahoo中国这么惨,居然还能在亚太区成为第一,实在是出乎意料;而微软竟然能在大陆占到第一位,简直不敢相信,它有什么服务这么吸引人?难道是升级Windows?如果不算它,百度是第一,腾讯是第二,几大门户的身影在哪里呢?

下面是数据。

亚太在线受众Asia-PacificOnlineAudience
2007年5月
所有亚太——家族及工作场所,15岁以上*
来源:comScore WorldMetrix

 月份独立用
户数(千人)*
互联网 
渗透率**
每日平均
用户数
(千人)*
平均每用
户月份上
网天数
平均每用
户月份上
网时数
平均每用
户月份浏
览页面数
全球771,99716%427,005 17.125.22,519
亚太283,51910% 126,39813.8 20.22,171
澳大利亚10,10962%5,147 15.821.21,758
中国大陆91,5279%38,023 12.919.32,279
香港3,55059%1,924 16.825.52,545
印度22,8053%8,415 11.414.71,400
日本53,68249%26,157 15.119.22,200
马来西亚7,52145%2,362 9.715.21,239
新西兰1,94960%1,030 16.420.71,824
新加坡2,22658%1,113 15.525.72,406
韩国26,27865%14,718 17.431.24,546
台湾9,31950%4,814 16.027.42,659


*排除来自公共场所电脑的流量,比如网吧,以及通过手机或PDA的接入。
**30天内从家庭或工作场所上网的15岁以上人口占该国/地区全部15岁以上人口的比例估计值。

亚太在线受众
2007年5月
所有亚太——家庭和工作场上网,15岁以上
来源:comScore WorldMetrix

月份独立用户数前三名的公司(应该是包括旗下所有网站)
 123
全球GoogleMicrosoftYahoo!
亚太*Yahoo!Microsoft Google
澳大利亚Microsoft  Google Yahoo!
中国Microsoft 百度腾讯
香港Yahoo!MicrosoftGoogle 
印度Yahoo!GoogleMicrosoft 
日本Yahoo!MicrosoftGoogle  
马来西亚Yahoo!GoogleMicrosoft  
新西兰Microsoft Google  FairfaxMedia
新加坡Yahoo!MicrosoftGoogle  
韩国NHN CoLycos Microsoft 
台湾Yahoo!Microsoft  Google 


07/09/07 22:43:26,由 cathayan发表。 本文链接

07/06/07

Linux下系统时间快8小时问题综述

cathayan.org版权所有,保留一切权利。转载请保留此说明。谢绝商业转载。
在这次给Dell 640m装Debian sid之前,还真没遇到过这个“常见问题”。这次遇到之后果然很郁闷,于是刚才Google了一圈,把它给解决了。以下针对Debian sid。

先说时区的配置。以前Debian有个好胜的时区配置工具,叫tzconfig,现在也没有了。但配置时区倒也简单,主要是两个文件:

/etc/localtime
/etc/timezone

timezone这个文件是个文本,里面只需要写一行自己的时区就行,我们这里就是上海,Asia/Shanghai(谁知道为什么不是北京呢?)。localtime这个文件的类型不清楚,里面就写了些timezone data,它可以从系统自带时区文件那里拷贝,位置在:

/usr/share/zoneinfo

从这个目录下找到Shanghai拷贝到/etc下的localtime即可。有人说建个连接也可,这样还可以保证系统数据有变化时不必再管。

设定了时区,还要确定Linux的时间方案。Linux支持UTC时间,Coordinated Universal Time,也就是世界协调时,也就是本初子午线上的时间,它和以前的格林威治标准时(GMT)的区别似乎是它是由多个原子钟平均出来的。在/etc/default/rcS这个文件中,设定了系统是否使用UTC,UTC=yes就是用。

计算机自己还有自己的时间,也就是硬件时间,hard clock,也就是存在BIOS里那个时间,关机也不会丢失。计算机启动时,就要读取这个时间。这个时间如果设定为UTC(GMT),也就是伦敦那地方的时间,就要在rcS文件中设定UTC=yes,反之则要设为no。

总之就是两种正确的设置:

BIOS=本地时间,UTC=no
BIOS=UTC时间,UTC=yes

一般来讲,BIOS里面都设定为当地时间,这是因为如果装双系统的话,Windows似乎不懂utc,就会出问题。这时UTC=no。

如果一切顺利,到这时,进入Linux之后显示的时间应该是正确的了。但不少人的机器,包括这回这台640m,仍旧不正确,而是比正确时间再往前跑了8小时。这里的问题出在Linux读取硬件时间上了。

Linux读取这个硬件时间要用到hwclock这个命令:

hwclock --show :显示硬件时间
hwclock --systohc :将系统时间写入硬件
hwclock --hctosys :将硬件时间写入系统时间

在出问题的时候,hwclock 这一组命令的运行通常是不能成功的,错误经常是这样的:

select() to /dev/rtc to wait for clock tick timed out

也就是不能读取/dev/rtc,也就是硬件时间。这又是因为某些机器的BIOS处理方式和Linux的rtc内核模块之间出现了问题。

Linux又有3个这类模块,rtc/genrtc/rtc_dev,似乎是一个比一个新,而debian通常自己用的是rtc这个老模块;但Dell/ibm/acer等等厂商现在都可能使用新的BIOS,这种BIOS和这个rtc就可能不对付。如果出现了上面那个timeout的问题,有两种方法可以解决:

1, 给hwclock加参数,--directisa,也就是:

hwclock --directisa --show

如果运行成功,说明这个办法可行。则把此参数添加为hwclock的缺省参数即可。在debian 4.0之后,可以直接在/etc/default/rcS中添加一行:

HWCLOCKPARS="--directisa“

而在4.0以前,可能只能在hwclock启动脚本中添加,/etc/init.d/hwclock.sh,把里面的”/sbin/hwclock“ 全部替换为 ”/sbin/hwclock --directisa"。现在在debian sid中,这个脚本的第一行其实是HWCLOCKPARS=,也可以像rcS一样添加参数了。

2, 换用其他内核rtc模块,用如下方法测试哪个模块好用:


没有显示time out的就是好用的了,然后可以在blacklist中阻止不好用的,在modules里面加上好用的那个。

用完这两个方法,hwclock应该能直接工作了,也就是可以读取硬件时间了。再配上utc设置正确,重启之后时间就是对的了。

为了让BIOS时间更准确,除了可以找个精确的时间源,比如CDMA手机或是GPS,靠自己的手指来精确设定BIOS时间之外,还可以用hwclock把准确的时间写入BIOS。前一种方法细心点可以做到几秒误差,而后一种怎么也在1秒以下了。

安装ntpdate这个包,它可以从时间服务器上读取到正确的时间,精度还是很高的:

aptitude install ntpdate
ntpdate pool.ntp.org

此时系统时间就已经是ntp的时间了,相当精确,把它写入硬件:

hwclock --systohc

这样BIOS时间也就很准了。以后开机没网络,没办法运行ntpdate的时候也都是准的。

这里的关键有:bios时间,utc设定,rtc模块,hwclock读取,ntpdate对时。

在Debian的老bug里还看到因为系统有多个分区,比如/usr单独分,fsck运行时会对时,并因为又造成快几个小时的问题,不知道怎么处理的。

07/06/07 00:05:00,由 cathayan发表。 本文链接

07/05/07

Xfce4的音量/关机/GL驱动/休眠

cathayan.org版权所有,保留一切权利。转载请保留此说明。谢绝商业转载。
又解决了Dell 640m笔记本上Debian的几个Xfce4小问题:

这次安装Debian,声卡直接驱动了,模块是snd_hda_intel,然后有许多带oss字样的模块加载,应该不是alsa,工作完全正常,包括放歌,mplayer放片,以及Youtube网站上看Flash视频。使用xfce4-mixer-oss来调音量,来回换了几种方式,都不能保存,刚才又试了把其中的Vol/igain之类都勾上,似乎能保存音量了。

Xfce4的普通用户直接关机也要一点设置,主要是给予这些用户使用那个关机程序的权限,使用visudo命令,在sudoers文件中添加一行:

%shutdown ALL=(root) NOPASSWD: /usr/sbin/xfsm-shutdown-helper

这就表示shutdown组的成员都可以无密码来调用这个关机命令,于是就可以直接关机和重启了。

GL驱动,本来X工作很好,用dmesg来看,DRM/AGP都有了,看xorg.log,DRI也有了,xorg.conf里面也不用加什么options,以前为了打开dri,还费了牛劲。但是装上Googleearth之后运行却很慢,查了一下,原来还要装一些libgl的库。有如下一些:

* xlibmesa-dri
* xlibmesa-gl
* xlibmesa-glu
* mesa-utils
* libgl1-mesa-dri
* libgl1-mesa-glx

其中的mesa-utils包中含有glxinfo/glxgears等命令。Intel 950gma的显卡在glxgears上可以在到接近1000fps。装完这些包,Gearth运行就完全没问题了。

这回还顺手装了个hibernate包,它又连带装了hdparm/dash等包,用root身份输入 hibernate 出错,提示是ipw3945这个模块无法卸载,只好加上-f,忽略这个错误,成功地休眠到硬盘,再开机到某一步就直接进原来的X桌面了。但其实Linux开机直到进入Xfce都相当地快,所以也没再折腾,也许今后还是用关机/开机吧。

07/05/07 23:47:13,由 cathayan发表。 本文链接

07/03/07

公司Blog的101法则

cathayan.org版权所有,保留一切权利。转载请保留此说明。谢绝商业转载。
其实没有那么多条,这是著名Google Blogger,Matt Cutts搞的标题,他就发生在他们公司一个Blog上的事,讲了一些公司Blog的法则。【roy_hu同学纠正说,这个“101”不是数目,而是编号,表示入门课程的意思。那这里就是基本规则的意思了。谢。】

这件事是一位管理G公司健康计划的员工,Lauren Turner,在Google的官方的健康广告Blog(是专门做健康相关广告的部门?)上发表了对迈克·摩尔最新记录片Sicko(IMDB 8.4分)的看法,似乎是反面的——当然了,据说摩尔这个片子里对美国的医疗体系大加抨击,说它是广告和金钱驱动的,不为国民健康着想之类的;而这位女士,偏偏和这个业务有关。更加重要的,这个Blog是Google的官方Blog,于是这就成了公共事件,批评这位女士及Google公司的人很多,连NYT的Blog都上了:

Ms. Turner went on to suggest that Google could help much-maligned health care companies to “Get the Facts” out. How? By buying ads on Google, of course.

当然,Turner很快就回应说这只是她个人意见,不代表Google等等。事情就是这样,Cutts以一个老牌Blog熟练工的技巧,并没有再行反驳或是懊恼,而是就此事推出了这些规则,并说如果在考虑开通公司Blog的话,这些是“常青的”技巧:

1, 起步时最容易犯错误。刚开始Blog的时候要慢一点:
1) 请一些有经验的人来阅读你写的头几篇,他们可以指出不准确的地方,或者告诉你是否语气不当。
2) 写几篇很乐意发出去的。这样也是实战,但没有太多压力。
3) 先在其他人的Blog上写一两篇客座文章。
4) 先在论坛里练一下。Google员工可以去一些Google官方论坛,其他公司也可以去最相关的论坛,主要是练习同人们对话的技巧,这里最好声明自己的公司身份,否则难免被人当成网络推手

2, 不要批判其他公司或人。这不是个严格要求。但对公司Blog来说,通常朝其他公司扬灰不必要也不聪明。它还会降低对话的层次。硅谷和Blog圈子都不大,你骂的人也许就在你旁边楼上干活。有时难免会气不顺,但尽可能坚持这一点。

3, 生气时不要发贴。生气时发的贴子过后都会后悔。Blog圈子里的讨论会很热,快速反应对于让自己的意见快速出现在圈子里很重要。但如果有时间,多等一天会看得更远。有时会有人发表和你同样的看法。

4, 学习判断哪个贴子有意义,哪个没有。你不需要回应每一个批评。如果有的贴子是有点攻击性,也许你也可以练一点厚脸皮。有时有些人骂你只不过是为了吸引人注意。只处理核心问题,别理会那些攻击。

5, 如果你犯了错误,不要闭口不谈。只要你工作足够努力,干得足够长,你肯定会犯大错。重要的是一直参与对话。再发表一贴来阐释你的立场,不要复制原来那贴的观点。如果必须修改原贴,一定要说清楚哪些改了,比如加一个附注,或者用删除线来表示哪些是正确的。

最后一条:每一贴都要有日期。必须有年月日,这可以读者明白这是哪天的事,以及几天内就有澄清的新贴。


有贴子表示不希望看到Google因此就约束它的Blogger员工,Matt Cutts表示赞同。

>>Google中国的员工也有些Blogger,通常他们不谈自己的公司(这是自己没空,还是不想写,没得可写,还是不能写?),也曾经有一位写了些左手螃蟹右手龙虾就被批判了。还有Googlechinablog,它有无违反以上几条?起码有一点吧:它从来不对话。

[新]另一位著名Google员工Blogger,Niniane王,说要“Playing it safe”。影响还挺大的,真是不必要啊。米国的Blog圈子太严肃了,把人都搞得不好玩了。

07/03/07 10:53:46,由 cathayan发表。 本文链接

07/01/07

笔记本WiFi上网半自动解决方案

cathayan.org版权所有,保留一切权利。转载请保留此说明。谢绝商业转载。
用Windows连无线网的时候,通常是检查现在可用的无线信号,再选中一个点“连接”,如果加了密,第一次会要求输入密码。平时Windows还会尝试自动连接。Linux上面似乎还没有很好的自动连接的方案──如果无知了请一定指出。

每次输入那4行命令不算特别烦,但也不轻松,在Debian系里写入interfaces是个好办法。刚开始是因为不会写那个key,因为我设的是一串字母,看Google出的结果都是神奇的16进制,刚才按iwconfig命令的写法试了下,居然成了,就是加个s这个写法。样子就是下面这样,意义还是比较明显的。

iface home inet dhcp
wireless yes
wireless-mode managed
wireless-essid bolomi
wireless-channel 11
wireless-key s:bolomikey
wifichoice ap A0:14:78:C7:CF:75

其实,在连通之后,再运行iwconfig,会列出所有这些参数,包括16进制的key。

这里还发掘了一个interfaces的小用法,就是在iface之后可以不写网卡设备名,而写其他名字,比如这里写的是home,到了要连接无线网的地方,用这个命令:

ifup eth2=home

eth2就是网卡。同理可以有office或是public的设定。到一个新地方,搞清楚状况,比如用

iwlist eth2 scan

来扫描,或者干脆问主人,再写一段temp的,一句ifup就可以启动了。

07/01/07 22:24:15,由 cathayan发表。 本文链接

在Dell 640m上安装Debian sid (unstable)

cathayan.org版权所有,保留一切权利。转载请保留此说明。谢绝商业转载。
说明】本文写得很长,但绝不是因为Debian装起来麻烦,实际上认真看完全文就会发现只有无线网部分是有编译和自己手工设置的,其他的无非是些出于个人喜好的微调和出于记录目的的长篇大论,另一个原因是我用五笔。

再另一个原因是希望给想在笔记本上装Debian/Linux的人们一个概观,在我安装之前Google的时候,文章基本上全是西文的。

基本上从快中午装到晚上10点多,差不多算是12个小时。Dell 640m在这段时间内一直是高速运转,大量下载,读写硬盘,到现在也没有出任何问题,温度也完全没有问题,手放在上面打字基本没有感觉。

今天在Bios里改光盘启动时看到硬盘还有性能模式和安静模式,于是换成了性能模式,读写时就能听到声音了;风扇现在一直在转,晚上静下来之后能听到声音。

安装盘



网上Google时排名靠前的一篇教程文章里说,在640m上装Debian遇到了不能识别硬盘和DVD光驱的问题,但这次我用Debian 4.0r0的安装盘来装,完全没有任何问题,从分区到安装后启动都能正常识别。那位大侠用的是Testing的安装盘,看来还是正式发行版测试更完善一些。

我用的是100来兆的net install光盘(现在Debian官方提供BT下载,随时都有接近200人在线提供),可以装出基本系统,但似乎连wireless-tools都装了。装到最后会问网络,但当时网还没通,也就中止了。

Vista据说启动方面有些特殊,但装Linux的启动管理器倒没什么问题。Grub还是选择装在了MBR,并且自动识别出了硬盘上已经装了Vista。Dell搞的Media-direct也被识别出来了,居然说是WinXP-embedded。


以太网



这个640m自带的网卡是BCM4401-B0 100Base-TX,似乎没有自动识别,modprobe b44之后正常工作,b44就是它的模块了,完了后可以在/etc/modules文件里写上b44,重启后能自动加载。


升级到sid



安装用的正式的stable版,装完后就设了apt源,就aptitude update/aptitude upgrade升了级,要删一两个老的包,装了全新的。Linux-image的虚拟包不知道什么问题,装不上最新的2.6.21的内核,只好手工直接装这个Linux-image-2.6.21的包,也没有什么问题。

那个教程说可以在内核启动时给个vga=791的参数,免得启动后在控制台上把1440x900的屏幕当成字符终端,但是791也不过是1024x768,字倒是小了,效果还不如大的粗字好看,最后又去掉了这个设置。


时间设置



安装时要求设定时区,似乎是因为语言上选了美国英语,到时间那一步居然只让选美国的时区,感觉像是犯了逻辑错误,没办法,只好选了一个,先放在那里。

装完基本系统重启,就发现时间同北京时间差了15小时,想用tzconfig来改,才发现Debian sid里面已经没有这个小工具了,以前用这个工具省了事,不知道要改什么,只好再去Google,终于找到办法:

在/etc/timezone里面写上中国的时区,Asia/Shanghai,在/etc/default/rcS里面把UTC设成yes,也就是用utc,这是Debian推荐做法。最后也是最重要的,把/etc/localtime删除,再从/usr/share/zoneinfo/Asia里面拷贝Shanghai这个文件到/etc下,名字还是localtime。这样做完,不需重启,过会就自己生效了。

这样的设置,如果网络不通,没有ntp服务可用的话,它只能用bios里的时间(通常是当地时间)来做为基础,由于我国时间是+8,所以这样就会出现显示时间快了8小时的问题,所以还是要用ntp获取真正的UTC时间才是对的。推荐安装ntpdate这个工具,它会自动在启动时运行,如果网络没通而没有在启动时获取到正确的时间,则需要在网络设通之后运行它来校正时间:

ntpdate pool.ntp.org

这个pool是ntp.org提供的,似乎是一堆时间服务器的别名。

还有一个etherconf的小工具,现在也不见了,逼得我学会了ifconfig和route的基本用法。另有一个rcconf幸好还在,它可以修改启动的服务。


Xorg和Xfce4



通常装完基本系统,我的习惯就是装xfce4,顺便就把Xorg的那一套就给装了。今天有点不巧的是,有个xfdesktop4出了问题,小版本号升了2就装不上,再去packages.debian.org上面下载了小号的那个手工先装上,才算是顺利装上了xfce4,然后再装上了gdm来管理启动。

装xserver-xorg时会进行X的设定。显卡它自己就探测出来了,intel gma950,显示模式里直接就列着1440x900这一档,其他还有1600/1152等众多邪门分辨率,这个根本就不再是问题了。不过现在有点记不清这个分辨率是X的设置还是915resolution的设置了,因为这几个包是一块装的。

915resolution是专门的Intel显卡的分辨率设置程序,还是个服务,装完后再没有做任何设置,它就自己有了自启动。GMA950的显示驱动是i810,倒不是915。

在xorg.conf的设置里,还需要看一下有没有1440x900这个分辨率,如果没有,就手工加到分辨率的最前面,反正液晶屏只有一个最佳分辨率。再设1024的分辨率大体只会在接投影仪时用得到。

xorg.conf基本是系统自己设置生成的,HorizSync和VertRefresh这两个常见的出错数据也根本没有,反正也没有出错。那人教程中说这两个参数分别是30-80,和60-70,也没用上,先记在这里吧。


启动X



经过上面那点设置,X就正常地启动了,分辨率已经是1440x900,USB的鼠标和触摸板自动驱动了,声卡也自动了,所以现在也不知道这个声卡具体是什么型号。触摸板右边和下边分别是竖起和水平滚动条,也完全没有问题,也不需要任何设置。

在这里,又装了Gnome-core,本来想装gnome算了,可一看居然要1.4GB的空间,就只装了core,也要400MB。KDE系的没再单装。


Locale设置



现在Debian似乎倾向于装一个叫Locales-all的包,取代了locales,这个all的包包括了所有Locale的已经编译好的数据,据说可以节省安排时间,但它似乎没有了直接的配置工具,必须在/etc/locale-gen里写。很不方便,这回Debian自己装的是locales,我就没有再换,这个可以用dpkg-reconfigure locales来设定。这回选了en_US.UTF-8作为系统设置。


中文输入



中文输入有一阵子快要没有问题了,现在似乎又有了许多问题,似乎就是因为勤勉的程序员又发明了许多工具导致的。这回装fcitx,它非要装im-switch,那就装吧。然后用它来设定:im-switch -s fcitx,倒是在xinit以及Xsession.d下面生成了几个文件,可惜根本不管用,不但XMODIFIER变量没有设定,CTYPE也没管,总之是重启了下X,Fcitx根本没影。几番试验不能成功,只好卸了它,还是用我一直以来的设置,就是在/etc/X11/Xsession.d下面建个启动脚本,内容如下:

export LC_CTYPE=zh_CN.UTF-8

export XMODIFIERS="@im=fcitx"
export XIM=fcitx
export XIM_PROGRAM=fcitx
export GTK_IM_MODULE=xim
export QT_IM_MODULE=xim

fcitx

系统还是en_US。这个设定我用了有一阵子了,从来没有任何问题,像双输入,Firefox不能输入,Qterm不能输入,等等,从来没有见过。

中文字体主要还是xfonts-wqy,ttf-arphic的一系列,以及从ntfs分区上拷贝来的一些。同一机器上的Vista,反正不会和Linux同时使用,这种情况下Linux借用一下它的字体,应该算是合理的吧。


无线网(WiFi/WLan)



以前只用过XP那种无线连接方式,就是浏览一下可用网络,点连接,输入密码,然后就接通。Linux下无线网还是挺麻烦的,尤其是相比其他硬件来说,基本上是这个笔记本里面配置最复杂的硬件了。

但和网上有关Linux下安装ipw3945无线网卡的文章相比,Debian sid已经进步了很多,ieee80211的模块自己就能装,ipw3945d也有,还有firmware-ipw3945,这三个用aptitude就能装(也许在non-free组里吧);还有wireless-tools,这个在装基本系统时就自动装上了。

还有一个最重要的模块,也就是ipw3945-module,本来看apt里面也有,但装的时候总是报告依赖于linux-modules-2.6.21这个虚拟包,但现在又没得装,于是就装不上。没办法,只好这样:

aptitude install ipw3945-source
m-a a-i ipw3945

也就是装ipw3945的源码包,然后用Debian的模块工具module-assistant来帮助自动化编译安装这个模块,其中要装linux-headers/g++等众多包,都是自动的,最后没有错误。

到这里,似乎是需要的包已经都全了。modprobe ipw3945之后用iwconfig应该能看到

eth2 unassociated ESSID: off/any

这样的一串东西,这里就是无线网卡了,eth2是它的名字。

下面还是要用iwconfig来设置这个无线网卡的参数。

iwconfig eth2 key [1] s: asdfksdflksdfjdsfj
这是说eth2要用到WEP的认证,钥匙是1号,密码是“asdf....”这一串,这里又要用括号,又要用s:打头;如果是16进制密码,可以不加s:。

iwconfig eth2 essid adsdkf
这是设定eth2要连接的无线网的essid是“adsdkf”

iwconfig eth2 mode managed
设定模式,什么意思,还没搞懂

dhclient eth2
这里就是上dhcp,获取地址。如果没有用dhcp,就需要用ifconfig/route那一套来设定网络,再ifon来启动这个设备。

然后无线网就通了。此时可以看到wifi信号灯也常亮了;在没有配通之前,按fn+f2也会打开无线,但只是一闪一闪地亮。

除去iwconfig很有用之外,还有个iwlist,如下

iwlist eth2 scan
这个是扫描eth2能接收到的无线信号,可以看到essid,模式,频道和支持的速率等。

按说iwconfig设定的那些东西应该都能用interfaces文件来设定,但暂时还没找到怎么写,尤其是那个key怎么写。


dpi问题



dell 640m的屏幕是1440x900,14寸,字会显得比较小,这一点除了在桌面上把窗口显示的字体调大点,在Firefox里面把最小字体设大一点之外,改变dpi是另一个方法。实际上在Vista系统中,Intel的显卡设置界面就直接有这一项,可以把一般的96dpi提高到120dpi,这样字会变得略大一些。

要达成这一点,需要了解自己屏幕的物理尺寸,基本上可以用1440*24.5/dpi来计算宽,用900*24.5/96来算高,但这样实际上还是名义的,直接拿尺子量才是比较准的。如果生产商负责任,说明书里会写上这个尺寸──Dell还不错。如果没有,可以用xdpyinfo |grep dimension来看,或者是xrandr --query,后面这个可能是比较准确的,前面那个是名义的。

知道了这个尺寸,比如Dell 640m的屏幕尺寸是304mm x 190mm,在xorg.conf的Monitor段中加上

DisplaySize 304 190

即可让X以比较标准的真实的尺寸来显示。按640m的实际情况,写上这个之后,实际的DPI是120,比常规的96dpi显示字要大一些了。


CPU频率



迅驰Centrino的CPU可以调节运行频率,在Linux下面也有一些程序来处理这件事。这个不懂,就按教程来做,加载了一堆模块:

acpi-cpufreq
speedstep_centrino
cpufreq_ondemand
cpufreq_userspace
cpufreq_conservative
cpufreq_powersave

然后再装了一个调用这些模块并根据实际情况来设定CPU运行频率的Daemon程序,我装的是cpufreqd,它的配置文件看上去就不错,也懒得改了。不过现在一直是接电工作(有个叫ac的模块也会自动加载运行,专门来指示是否接了外接电源),也没有看到它有什么用。

电池也没有试过能用多长时间,都等以后再说了。


挂载Windows分区



现在Linux支持ntfs,模块是ntfs-3g,在mount中写参数时也要带上这个3g。在/etc/fstab中这样写的:

/dev/sda3 /media/c ntfs-3g defaults 0 0

在defaults那一段,以前都要加许多参数,才能正常地显示Win分区上的中文文件,这回加了参数却不行,只保留一个defaults,却竟然一切完好。

如果不清楚硬盘上Windows分区是哪个号,可以用

fdisk -l /dev/sda

来显示分区情况。


基本就是这样了。Dell 640m装Debian sid还算是比较容易,硬件基本上全部支持。其他没碰到的就要在今后的使用中再修补了。


http://krammer.info/it/debiandell-inspiron-640m/
网上排名靠前,讲得比较全面的640m装debian的文章。

http://contrib.lynuxsolutions.com/doku.php?id=documentation:ipw3945_on_debian
http://www.wirelessdefence.org/Contents/LinuxWirelessCommands.htm
http://madwifi.org/users-guide/node11.html
这三个都是和无线网ipw3945相关的,包括装驱动以及iwconfig用法等。

07/01/07 00:36:27,由 cathayan发表。 本文链接

我的E-Mail


Copy&Paste Exchange

访问CPeX Group

订阅Feed

订阅Feedburner
Feedsky订阅
本站订阅

请登录

导航

cathayan.org Web

最新贴

RIME 小狼毫/鼠须管的极点及五笔拼音配置
Software that rocks or sucks less
一棵热带的树换新叶的过程
几个有用的Vim招术
论语七 述而
Nomacs 图像浏览器
Windows 文件校验
Windows 10 文件批量命名简单方法
Windows 10 文件删除高级操作
本站也算是有响应式设计了

最新评论

Powered by

Powered by Nucleus CMS

版权声明

Creative Commons License
Blog on 27th floor by Cathayan is licensed under a Creative Commons Attribution-NonCommercial-ShareAlike 3.0 Unported License.
Powered by Nucleus CMS v3.71. Best view with Mozilla browsers.