2010年11月1日星期一

GNOME使用技巧之一——隐藏家目录下的文件


在家目录创建.hidden文件,然后把要隐藏的目录或文件名写到.hidden文件里面,那么这些文件就在Nautilus里面隐藏了。如果该文件内容为:
bin
Templates
那么bin和Templates在Nautilus里面就看不到了,需要在View菜单里面勾上Show Hidden Files才能看到。该方法只能隐藏位于家目录下的文件。其实在Nautilus里面:'.'开头的文件是标准的隐藏文件,~结束的文件是备份文件,默认也是隐藏的。

PS:linux相关的tip,一直纠结是发在这里好还是贴在twitter上好。在twitter发过几条,但是总觉得那里信息太杂,也不好找,所以又返回这里了。

关闭笔记本电脑的触控板

笔记本的触控板移动效率低,用的时候手完全脱离键盘,很不方便,而且打字的时候碰到更烦人。我想把我的Dell Inspiron 14v笔记本电脑的触控板关掉。在Ubuntu下触控板可以用,但是在鼠标设置里面看不到。用xinput查看,原来是把触控板认成一个普通鼠标了。 用xinput工具即可关掉。

xinput原初的输出:
tux@dell:~$ xinput list
⎡ Virtual core pointer                        id=2    [master pointer  (3)]
⎜   ↳ Virtual core XTEST pointer                  id=4    [slave  pointer  (2)]
⎜   ↳ 2.4G Receiver                               id=11    [slave  pointer  (2)]
⎜   ↳ 2.4G Receiver                               id=12    [slave  pointer  (2)]
⎜   ↳ PS/2 Generic Mouse                          id=14    [slave  pointer  (2)]
⎣ Virtual core keyboard                       id=3    [master keyboard (2)]
    ↳ Virtual core XTEST keyboard                 id=5    [slave  keyboard (3)]
    ↳ Video Bus                                   id=6    [slave  keyboard (3)]
    ↳ Power Button                                id=7    [slave  keyboard (3)]
    ↳ Sleep Button                                id=8    [slave  keyboard (3)]
    ↳ Laptop_Integrated_Webcam_0.3M               id=9    [slave  keyboard (3)]
    ↳ 2.4G Receiver                               id=10    [slave  keyboard (3)]
    ↳ AT Translated Set 2 keyboard                id=13    [slave  keyboard (3)]
    ↳ Dell WMI hotkeys                            id=15    [slave  keyboard (3)]
把触控板暂停掉:
tux@dell:~$ xinput float 14
tux@dell:~$ xinput list
⎡ Virtual core pointer                        id=2    [master pointer  (3)]
⎜   ↳ Virtual core XTEST pointer                  id=4    [slave  pointer  (2)]
⎜   ↳ 2.4G Receiver                               id=11    [slave  pointer  (2)]
⎜   ↳ 2.4G Receiver                               id=12    [slave  pointer  (2)]
⎣ Virtual core keyboard                       id=3    [master keyboard (2)]
    ↳ Virtual core XTEST keyboard                 id=5    [slave  keyboard (3)]
    ↳ Video Bus                                   id=6    [slave  keyboard (3)]
    ↳ Power Button                                id=7    [slave  keyboard (3)]
    ↳ Sleep Button                                id=8    [slave  keyboard (3)]
    ↳ Laptop_Integrated_Webcam_0.3M               id=9    [slave  keyboard (3)]
    ↳ 2.4G Receiver                               id=10    [slave  keyboard (3)]
    ↳ AT Translated Set 2 keyboard                id=13    [slave  keyboard (3)]
    ↳ Dell WMI hotkeys                            id=15    [slave  keyboard (3)]
∼ PS/2 Generic Mouse                          id=14    [floating slave]
如果需要,再恢复:
tux@dell:~$ xinput reattach 14 2
tux@dell:~$ xinput list
⎡ Virtual core pointer                        id=2    [master pointer  (3)]
⎜   ↳ Virtual core XTEST pointer                  id=4    [slave  pointer  (2)]
⎜   ↳ 2.4G Receiver                               id=11    [slave  pointer  (2)]
⎜   ↳ 2.4G Receiver                               id=12    [slave  pointer  (2)]
⎜   ↳ PS/2 Generic Mouse                          id=14    [slave  pointer  (2)]
⎣ Virtual core keyboard                       id=3    [master keyboard (2)]
    ↳ Virtual core XTEST keyboard                 id=5    [slave  keyboard (3)]
    ↳ Video Bus                                   id=6    [slave  keyboard (3)]
    ↳ Power Button                                id=7    [slave  keyboard (3)]
    ↳ Sleep Button                                id=8    [slave  keyboard (3)]
    ↳ Laptop_Integrated_Webcam_0.3M               id=9    [slave  keyboard (3)]
    ↳ 2.4G Receiver                               id=10    [slave  keyboard (3)]
    ↳ AT Translated Set 2 keyboard                id=13    [slave  keyboard (3)]
    ↳ Dell WMI hotkeys                            id=15    [slave  keyboard (3)]
把xinput float 14放到~/.gnomerc里面就可以了。放到~/.xinitrc里面竟然不行,原因懒得找。

2010年10月5日星期二

VPN的流量转发

开的PPTP一直能连上,但是连上后一个包也收不到。知道是防火墙的路由设置有问题。这几天终于搞定了,其实和OpenVPN的文档里面介绍的方法一样,就是加上类似下面的防火墙规则:

iptables -t nat -A POSTROUTING -s 10.8.0.0/24 -o eth0 -j MASQUERADE
-s后面的是VPN内网地址。还是以前任晓磊说的对,就一个MASQUERADE设置对就可以转发了。

2010年10月3日星期日

从未完成的翻译

给爸爸的电脑装了Ubuntu 10.10 beta,除gnome-games外,还安装了kdegames。kdegames默认是英文界面的,需要汉化。为此安装了KDE的systemsettings以及language-selector-qt来把kdegames的界面改为中文。为了能够看帮助,又安装了khelpcenter4,但是kdegames的帮助仍然是英文的,并没有翻译过来。

kbounce为例,帮助文件位于/usr/share/doc/kde/HTML/en/kbounce/index.docbook。在Launchpad上kbounce的翻译页面,显示的翻译进度是100%。在上面列出的翻译项中,只有软件界面的文字,并不包括帮助文件的内容。

再以GNOME下的俄罗斯方块游戏quadrapassel为例,帮助文件的中文翻译位于/usr/share/gnome/help/quadrapassel/zh_CN/quadrapassel.xml。这样游戏的界面是中文,帮助文件也进行了翻译,但只是部分的。这好歹要比kbounce要强,至少还翻译过。在Launchpad上gnome-games的翻译页面,显示的翻译进度也是100%。这仍然也只算界面,不算帮助文件。在里面搜索quadrapassel,只有4条结果,更可证明帮助文件是不算在翻译任务里面的。

看来Launchpad上面的翻译进度都是虚高,看起来是100%,其实远远没有达到完整的本地化。这也难怪你装了中文的Ubuntu,安装和使用中还要面对很多的英文。对于不懂英文的人,可以说就是半成品。

并不是说半成品不可以。维基百科的每一个语言项目可以说都是半成品,因为从来不会所有的条目都处于“完成”的状态。这就是集市模式的特色。但是Launchpad上面虚高的统计数据让人把半成品误解为成品,这样的结果是有害自由软件的发展的。

2010年10月1日星期五

显示器刷新率

我的旧电脑给了我爸爸,这几天装上了Ubuntu 10.10 beta。用惯了没有注意,一次重启到原来的Windows XP下,再回到Ubuntu,才发现Ubuntu下屏幕闪得厉害,一看刷新率是60Hz。这是Ubuntu自动启用的设置。我知道这台飞利浦17寸的显示器在1024x768下是可以上到85Hz的。可是现在的Xorg,xorg.conf已经不是必须的了。需要关闭X后,用
$ sudo Xorg -configure
来生成一个配置文件。把这个文件拷贝到/etc/X11/xorg.conf,不需要做任何改动。再进到GNOME,显示器设置里多了不少分辨率的模式,把刷新率设置成85就可以了。

2010年9月30日星期四

Google Earth问题

在Ubuntu 10.04或者10.10 beta下面安装Google Earth 5.2,界面的中文字符都是方块。按这个帖子的方法,把Earth自带的Qt的库删除掉,然后安装系统发行的对应Qt库包。

再次启动Earth中文显示好了,但是一会儿就崩溃了。结合崩溃后的stacktrace:
  1. Stacktrace from glibc:
  2. /usr/lib/googleearth/libgoogleearth_free.so(+0xd090b)[0xae590b]
  3. [0x34a400]
  4. /usr/lib/googleearth/libIGGfx.so(+0x1296c9)[0x54556c9]
  5. /usr/lib/googleearth/libIGGfx.so(FreeImage_LoadFromHandle+0xb1)[0x54432c1]
  6. /usr/lib/googleearth/libIGGfx.so(_ZN3Gap3Gfx7igImage21platformLoadFreeImageEPNS_4Core6igFileEbPNS0_19igImageMetaDataListE+0xa1)[0x542d4b1]
  7. /usr/lib/googleearth/libIGGfx.so(_ZN3Gap3Gfx10igOglImage12platformLoadEPNS_4Core6igFileEPNS0_19igImageMetaDataListE+0x112)[0x542dbb2]
  8. /usr/lib/googleearth/libIGGfx.so(_ZN3Gap3Gfx7igImage8loadFileEPNS_4Core6igFileEPNS0_19igImageMetaDataListE+0x12d)[0x541e1ad]

这个帖子的方法,安装系统发行的libfreeimage3,然后用
env LD_PRELOAD=/usr/lib/libfreeimage3 googleearth
启动Earth就可以正常启动了。中文显示和输入也没有问题。

2010年9月10日星期五

free, top, vmstat输出结果对应关系

top和free的对应(相同颜色标记的输出是一样的):
vmstat和free的对应(相同颜色标记的输出是一样的)