小技巧:VNC远程登录切换fcitx输入法

发布于: 2010年07月15日

VNC 远程登录Linux时,切换fcitx输入法很头疼。一按ctrl+space, 本地输入法变了,远程输入法依旧。

方法一:改fcitx输入法快捷键. 用文本编辑器打开 ~/.fcitx/config 这个文件。因为配置文件是中文的,还是要用X文本编辑器打开如kate, gedit等。找到下面这一行:

打开/关闭输入法=CTRL_SPACE

改成你要的其他快捷键。

方法二:或者不想改变默认快捷键,那么试试这个。打开一个浏览器窗口,按下:ctrl_alt_space

Linux 命令行下使用socks代理

发布于: 2010年06月16日

在这个神奇的国度里面,我们是一刻都离不开代理的。不仅是因为你已经懂得的原因,还因为分配给我们的IP地址不足。

因为Linux CL下使用http_proxy=”http://proxy-ip:port” 这个环境变量作为http代理,所以很长一段时间里面,我一度认为socks代理也有一个socks_proxy这个环境变量。直到最近我才发现自己原来一直这么傻X着。

Linux CL下要用socks代理,可以使用tsocks这个软件。官网在这里:http://tsocks.sourceforge.net/ 不过已经很有一段时间没有更新了。不过这个软件包,一般发行版的软件源里面相信都有,直接安装即可。

安装完成后,编辑/etc /tsocks.conf文件,注意修改下面4行:

local = 192.168.1.0/255.255.255.0 //本地不使用代理

server = 192.168.1.1 //代理ip

server_port = 1080 //端口

server_type = 5 //socks 4 or 5

保存之后,用tsocks 打头,如:

tsocks apt-get update

Slax 的简单汉化篇

发布于: 2010年06月10日

这篇文章如果当成汉化教材,显然过于无耻。我想作为slax的宣传文章更为合适。

Slax是我很喜欢的便携Linux发行版。她可以装在我的U盘里面,替我干很多从另外一条路进入电脑坏事。Slax基于老牌的Slackware,模块发设计,lzm封装。甚至可以 Copy到 Fat32格式的U盘,执行boot目录下的bootinst.bat文件,即可变成一个移动便携OS。体积小(200M左右),速度快。

之前一只用她的中文版Fanx,最近发现可能内核有点老,无法在比较新的电脑上启动。于是就在Slax主页下载了最新版本。由于其模块化设计,其汉化过程快到吓人。

1.下载中文模块:http://www.slax.org/modules.php?action=detail&id=785 这要感谢Fanx的努力,内含fcitx, wqy chinese bitmap fonts

2.放到slax/modules目录

3.system-> Slax Module Manager处Activate 这个模块

4.重启。汉化完成。

我们还可以到slax网站下载到更多的其他模块,但slax并非只能安装模块,正常的Linux安装方式一样可行。

这篇文章就是在Slax 6.1.2下完成。

雨林木风Linux 为何听取骂声一片

发布于: 2010年06月08日

今天在cnbeta上看到雨林木风开源操作系统Ylmf OS 3.0评测,甚为欣喜,其中在国内,真正有资金在做Linux的除了Redflag,就是雨林木风了。至于Magic早已半死不活,而在distrowatch排名比较高的CD Linux,其主攻目标并不在桌面。但是,在台下,却是骂声一片。摘列如下:

1.开发人员不会用这样的linux,普通用户也不会用这样的“windows”。

2. 如果 网吧的收费系统也有个Linux版本,Linux的普及还会远吗?—遥遥无期

3.别以为改了Ubuntu的界面。我们就不认识了。

4.精仿的 XP 界面 啊呸

对于Linux,我个人的观点认为:并不是要让Windows彻底消失,Linux绝对取代。这不并不合理,也不现实。Linux只是让天下人知道,Windows是一种OS,但不是唯一一种,你还有其他选择。虽然Linux可以免费得到,但并不是说天下人都应该使用Linux。这一点上,我觉得可以参考IE v.s 其他浏览器, firefox, chrome, opera等。我觉得,在浏览器这一块,至少在意识形态上,取得了不少成绩,很多人知道还有其他浏览器可用了。

Linux和浏览器之争的不同之处在于,Linux还代表了一种黑客精神,让有些人觉得用了Linux就阳春白雪,就高人一等。但是既然要推广桌面Linux, 那么这种想法就不能存在。既然要在战场跟人一较高下,又要顶着自己的高贵精神,那么只能送出两个字“装B”,殊不知战场上是没有高贵精神的。既然进入战场,那么得到战果才是王道。Firefox 当初依靠Google Adsense 病毒式营销,取得了现在的成绩;但是用户们并没有因为当初的行为而耿耿于怀。

雨林木风有其自身的背景,靠做修改版Windows发家,现在转做Linux,很多人有心理阴影。我认为这叫没有良心。雨林木风不论做Windows还是做Linux的事情,都并没有损害网民的利益。反之,普通网民都是受益者。这跟周鸿祎是不一样的,我个人始终坚持反对使用360,因为周鸿祎之前是做流氓软件发家的,而且流氓软件的鼻祖。而我曾深深受过流氓软件的侵扰。感情上,我无法说服自己的良心支持他的事业;理智上,我无法相信使用360是完全放心的。

好吧,最后,让我好好分析一下这一片骂声吧:

1.开发人员不会用这样的linux,普通用户也不会用这样的“windows”。

截至2010-6-8,雨林木风主页显示Linux下载次数为588434次。还是有人用的

2. 如果 网吧的收费系统也有个Linux版本,Linux的普及还会远吗?—遥遥无期

这个基本同意,去网吧基本上是玩游戏的,这是Linux的 短板。这段时间Steam要出Linux版,结果业内人士都认为Linux还没有准备好

3.别以为改了Ubuntu的界面。我们就不认识了。

人家主页都说了,是基于ylmfOS 3.0 基于Ubuntu 10.04

4.精仿的 XP 界面 啊呸

如果精仿XP能吸引用户,又何尝不可?当前国内的很多情况让精仿变成了一个无法回避的选项,金山WPS靠精仿MS office 2003吸引用户;Redflat靠精仿XP向政府采购妥协。

没有人都有评论的出发点,骂声一片自然有他们的理由。雨林木风不管是为Linux发展也好,为自己赚钱也好,客观上是在为开源Linux做贡献。至于其是否发布了源码其他什么的,就是需要广大用户去监督了。

最后,我发现这篇文章写得像篇枪文了。那就申明一点:如果是枪文,那也是免费的枪文。

initrd和Linux 启动

发布于: 2010年05月09日

Linux 启动一般分成两个部分,比如Linux安装在第一个硬盘的第一个分区,在grub的命令行,我们可以采用下面的几行命令启动:

grub>kernel (hd0,0)/vmlinuz root=/dev/sda1 ro quiet splash

grub>initrd (hd0,0)/initrd.img

grub>boot

上面的命令,除了制定kernel位置和root位置以及一些kernel 的参数以外,还指定了initrd的位置。

很长一段时间,我并不知道initrd是用来干什么的,也几乎没有在中文资料里面看好很好的解释。就这样不求甚解的过了很久,才在近段时间在wikipedia上看到了比较详细的解释。花了点时间翻译了原理性的部分,如下:

Initinal ramdisk或者“initrd”是Linux 启动阶段被 Linux 内核调用一个临时文件系统。Initrd 和 initramfs 是实现的两种机制,虽然两者都是用于真正 “根(root)”文件系统被挂载之前的进行准备工作,但在载入临时文件系统到内存的实现上细微的区别。

基本原理

大部分Linux 发行版携带者一颗通用的内核映像(kernel image),用来启动尽可能多的硬件。而这颗通用内核映像(kernel image)的大部分硬件驱动一般被编译为可加载模块(module),因为如果全部静态编译的话,内核(kernel)会变得巨大无比,不仅软盘启动无法实现,一般小内存的电脑无法承受这么大的内存占用。

这样,在mount 根(root)文件系统前,探测和加载必要的驱动模块(module)成了大问题。或者说,判断哪个是根(root)文件系统变得困难。(译者注:在识别跟文件系统之前,必须先识别硬件设备,而识别硬件设备–如硬盘–的驱动代码可能是存在根(root)文件系统内的可加载模块(module)。)

而更复杂的问题是,根(root)文件系统可能是软RAID卷,LVM,,NFS(无盘工作站),或者一个加密分区。这些情况下,在mount之前需要更多的特殊的驱动加载。

另外一个复杂情况是让内核支持系统休眠(hibernation),休眠会让系统挂起(suspend),将整个内存内容dump成一个映像(image)到swap分区或者常规文件存储,然后关机。下次启动的时候,这个映像(image)必须可读才能加载到内存。

为了防止内核(kernel)不得不硬编码处理这么多特殊情况,使用了一种在初始化启动阶段使用临时根(root)文件系统(也称早期用户空间)。这种临时根(root)文件系统可包含硬件探测,模块加载,设备识别直到mount到真正的根(root)文件系统。

实际使用

initrd映像(image)文件必须和内核映像(image)一起被存放于Linux 引导程序(bootloader)或者启动固件(boot firmware)可读的地方,比如:

  • 系统的根(root)文件系统
  • 启动光盘
  • 本地启动分区,可以是ext2或者FAT等格式化的小分区
  • TFTP服务器,使系统可以通过以太网启动

引导程序会加载内核(kernel)和initrd映像(image)文件到内存,然后启动内核(kernel),传递initrd映像(image)内存地址给内核(kernel)。在启动程序的最后阶段,内核(kernel)会通过读取initrd映像(image)的首部分数据尝试判断它的格式:

  • 在initrd机制里面,initrd映像(image)是一个文件系统映像(可以是压缩的),这样就可以以特殊的块设备(block device) mount(/dev/ram)。但文件系统驱动必须被静态编译到内核。 很多Linux发行版使用压缩的ext2格式作为initrd映像(image)的格式。另外一些(包括Debian 3.1)使用cramfs, 因为cramfs映像(image)可以被直接mount 而无需额外的解压缩空间,让内存有限的系统更容易启动。一旦临时文件系统启动,内核(kernel)会执行/linuxrc 作为第一个进程。当这个进程退出,内核(kernel)会认为真正的根(root)文件系统已经被mount,然后执行”/sbin/init”来开始正常的用户空间进程。
  • 在initramfs机制里面(Linux 2.6.13以后版本可用),initrd映像(image)是一个cpio包(可以是压缩的)。在启动过程中,cpio包被内核解包为一个tmpfs的特殊实力,成为一个临时根文件系统。initramfs机制的优点是不需要一个必须被静态编译到内核(kernel)的中间文件系统格式或者块设备(block device)。 在initramfs机制里,内核(kernel)执行/init 作为第一个进程,这个进程开始之后并不退出。

依赖静态编译在内核(kernel)的压缩算法不同,initrd/initramfs映像(image)的压缩格式可以是gzip,bzip2和LZMA.

Google Chrome OS演示的个人随想

发布于: 2009年11月20日

被老婆称为G粉的我,一直在关注Google Chrome OS的进展

北京时间2009年11月20日凌晨2:00, Google Chrome OS进行了一场演示会,并开放了Chrome OS的源码

  • Chrome OS是一个只会支持web app基于HTML5的操作系统,Chrome OS就是一个浏览器,所有数据都潜伏在云层里。
  • 从按下开机按钮,到看到登陆界面,只需要7秒!
  • 用户根本不需要在操作系统里安装任何程序,保证系统绝对的安全,所有内容都在浏览器里运行。文件系统被锁定只读,每个标签都运行于安全沙盒里。
  • Chrome OS里的用户数据也永远是加密的,所有的数据都与云端同步,机器里的用户分区只是一个本地缓存而以。
  • Chrome OS不支持全部的硬件,我们会给 出一个参考范围。。Chrome操作系统不支持普通硬盘,只支持固态硬盘,因为它的速度会更快。
  • 对于最终用户来说,你不能下载这个操作系统然后自行安装,只能购买全新的预装Chrome操作系统的电脑,预计2010年年底上市。

这是一个有点让人失望的结果,也许是Google的意识比较超前,Chrome OS也许需要更多的时间来普及,或者像上网本一样分化个人电脑模式,PC/NetBook/ChromeBook? 但无论如何这种超前对于可怜的中国网民来说则是一场噩梦。

  • 根据Google的说法是,跃跃欲试的人们,暂时不用考虑安装在你现有的电脑上了。不过既然已经开源了,我估计,Anything has possible.
  • Chrome OS的推广也许要依赖固态硬盘的普及。当然,凭着Google的影响力,可能这个话要反过来说。无论如何,开心的应该是半导体芯片生产企业。
  • 预装Chrome OS的电脑,估计在中国销量也许极为有限。首先以中国的网速,使用基于网络的这款操作系统,会让人心碎的。再说还有GFW的存在呢。这个不存在的部门建造的不存在的工程,可不会给谁任何承诺。但是网民们可冒不起这个险。
  • 一年之后的今天,世界人民真的已经准备好放弃本地应用程序了吗?当然Nvidia 说可以给Flash进行3D加速了,但是人们是否真的舍得大量的本地应用,特别是3D游戏(这可是推动PC发展的一个大因素),仍然是个问号。这个可以砸掉N多传统企业饭碗的工程,真的可以顺利推行吗?

无论如何Google Chrome OS已经踏出了第一步,希望多年以后再回头看这些疑问,会让我觉得多么的可笑和幼稚。

浙ICP备18056264号-1