Category: 小小草

IT 技术领域学海无涯。其实任何领域都学海无涯,无非 IT 发展太快了,让我有更多嘘唏。希望我掌握的技术有如小小草,虽然渺小,却有旺盛的生命力。

  • Send Ctrl+Alt+Fn to VirtualBox guest OS

    Fedora 常用到几个热键:
    Ctrl+Alt+F1
    Ctrl+Alt+F2
    Ctrl+Alt+F3
    Ctrl+Alt+F4
    Ctrl+Alt+F5
    Ctrl+Alt+F6

    VirtualBox guest OS 有时会出现花屏,得用 Ctrl+Alt+F2 和 Ctrl+Alt+F1 刷新一下显示就好了,所有我觉得这几个热键是很重要的。但 VirtualBox 没有提到怎么发送它们到 Guest OS (菜单是只有 Ctrl+Alt+Del 和 Ctrl+Alt+Backspace),但举一反三,Host+Fn 就相当于 Ctrl+Alt+Fn。这个 Host 键真的很重要啊,我觉得 VirtualBox 设置 right Crtl 作 Host 键真是很好用。

  • VirtualBox 3.0.0 is released

    这两天总有我关注的软件发布更新。

    VirtualBox 从2.24 升级到了 3.0.0,我感觉到两大改进:

    一是 USB 设备访问速度快了近一倍;二是 shared folder 在 Windows guest OS 下访问速度有所提高,但还不及 genuine Windows share,而且打开一个 folder 的速度时快时慢(VirtualBox 2.24 下每次打开 folder 都很慢),所以我还只得继续使用自建的 samba server。

    但有一大退步:
    全屏模式下在屏幕底部出现浮动的 Toolbar,我觉得完全没有必要,很烦人,不是已经有 Host + Home 了吗?

  • Enable USB devices in VirtualBox guest OS

    VirtualBox guest OS 默认不能访问 USB 设备(能显示 USB 设备,但状态为 disable)。我见好多回答都没答到点子上(至少对 VirtualBox 2.2.4 不适用)。其实只要简单两步,

    1. 把当前 X window 用户添加到 vboxusers 组(该组已创建,该操作在注销再登录生效)。这很重要,虽然不添加也能使用 VirtualBox 大部分功能,但 VirtualBox 在安装完成后有一个提示“Creating group ‘vboxusers’. VM users must be member of that group!”
    2. 在 /etc/fstab 文件里添加一行 none /sys/bus/usb/drivers usbfs devgid=???,devmode=774 0 0
      ??? 用 vboxusers groupid 代入即可(运行 mount -a 让 fstab 生效)。
  • Firefox 3.5 is released

    Fedora 11 发布时,搭载的 Firefox 3.5 还是测试版。我对测试版还是有点敬而远之,怕驾驭不好。Fedora 11 强行灌给我一个测试版,我心里总有个疙瘩。

    还好,没过多久,Firefox 3.5 正式版发布了,刚升级了一下,终于去掉了 firefox rc 字样,没觉察其他变化,但心里舒服了。顺便看了一段 Firefox 3.5 40秒的宣传短片,是多国语言反复说一句 Thank you for downloading firefox,轮到中文上场了,只有“谢谢”两个字,觉得镜头太少,不知是否跟中国 Firefox 用户偏少互为因果。

  • VirtualBox is a good choice for a PC without hardware virtualisation

    早在 Windows 时代我就使用了 VMware server,一直视它为虚拟机软件的大哥大,本是迁移到 Fedora 11 后的首选虚拟化方案。可是,它在 Fedora 11 下的安装并不顺利,Fedora 11 发布了两周(Linux kernel 2.6.29 发布时间可能更早于 Fedora 11),VMware server 2.0.1 还有针对 Linux kernel 2.6.29 还未发布更新,得依靠一个非官方的补丁来完成安装。这过程本身就令人不快,况且,安装成功后,guest OS 启动到 95% 停滞的概率还是很高,只能通过重启 host OS 才能让 guest OS 重新跑起来。

    我有点随遇而安,Fedora 11 集成了 qemu 本来是我在 VMware server 后的首选,网上他人对 qemu 速度的评论颇佳,可是它在我新买的 Q8200 PC 上就跑不动(qemu 在两年前买的Pentium 4, 3.0Ghz Dual Core 却跑得很好)。wikipedia 上介绍 AMD-V and/or Intel VT 提到多款虚拟化软件 support “both architectures (AMD-V and VT-x)”,但特别点到 kvm “requires one of them”,其他软件(没有提到 qemu)则没有用 require 一词。 kvm 是经过修改的 qemu,两者关系太密切了,我不晓得 Fedora 显示的 qemu 其实用的是 kvm? Anyway, 当我意识到我在 Virtualisation 碰到的种种疑难杂症可能是 qemu 特有的问题以后,我不得不关心起其他虚拟化软件。

    这下挑中了 VirtualBox。主要是因为我在 Fedora 之外的次选 OS 是 ubuntu,而 VirtualBox 集成于 ubuntu,但也可以运行于其他主流 OS。另一个原因是 VirutalBox 可以显式关闭 VT-x/AMD-v support(Q8200 本来就不支持 VT-x/AMD-v support),据说 VirutalBox developers 建议关闭 VT-x/AMD-v support,而且第三方测试表明 VT-x/AMD-v support 开启与否对 VirtualBox guest OS 运行速度几乎没有影响,反而显著拖慢了 guest OS 启动速度。如此看来 VritualBox 简直是 Q8200 的最佳选择。

    VirtualBox 已经做好了Fedora 11 的 rpm 包,安装 VirtualBox 非常简单、顺利,装好 VirtualBox 一看,原来这是 Sun 的产品(我事先不知道,大家都称它 VirtualBox,为什么不称之为 Sun VirtualBox 以提高市场占有率?),顿时有找到组织的感觉。Sun VirtualBox 的用户界面很友好,很精致,感觉略高 VMware Server 一筹,跟 qemu 更不是一个档次的软件。

    Sun VirtualBox guest OS 感觉不到是运行在虚拟机里,比如 Win 键有效(VMware Server就做不到)、启动速度飞快,进入 Windows XP 不到20秒。唯一遗憾的是,64 bit guest OS 必须得有 hardware virtualisation 才行,但这怪不得 Sun VirtualBox(所有虚拟化软件都有这个要求),只怪 Intel 产个 Q8200 怪胎!

  • Q8200 is a bad choice for virtualisation

    我没经仔细调查,买下了基于 Q8200 的PC。我想当然地认为它会支持 hardware virtualisation,在 Intel VT 非常普及的今天,我意外地发现 Q8200 竟然被排除在外。

    几天以来困扰我的 qemu 不正常表现终于得到解释。不过,据说 VT 对 64 bit guest OS 很重要,但我发现,Fedora 11 的 qemu 对 VT 依赖很高,如果没有VT,别说 64 bit guest OS(我试着安装 64 bit Feodra 11和 ubuntu 9.04都失败了),就是 32 bit guest OS 也不能用(Windows XP装不了,32 bit ubuntu 9.04能装,但极慢,根本就无法用)。

    看来我得放弃 qemu 了。

  • How to install VMware Server 2 on Fedora 11

    不知道为什么,Fedora 11 自带的 Virtualization Qemu 在我的 Home PC 上就是跑不起来,具体表现是无法添加 guest OS,如 Fedora as guest OS,则在划分磁盘分区时停留不前;如 Ubuntu as guest OS,则在选择语言后就没有下一屏;如 Windows XP as guest OS,则在安装开始后1分钟内随即重启。同样是 Fedora 11 Qemu 在我的 Office PC 上就没问题。难道是因为我的 Home PC 硬件太先进了,跟 Fedora 11 不兼容?

    我还是想回头使用 VMware Server,一直以来我都是用 VMware Server 做虚拟机的,感觉不错。但是为了在 Fedora 11 安装 VMware Server 2.0.1,竟折腾了我一周。主因是 Fedora 11 的内核版本 2.6.29.4,暂未得到 VMware Server 支持。Fedora 和 VMware community 里针对这个新核心的讨论有若干,其中已有人指出正解,可惜我理解错了,依样画瓢却总是画不出,于是跟正解檫肩而过又去求其他方案。

    等我醒悟过来已是一周以后,总算把 VMware Server 2.0.1 装在了 Fedora 11 里,其实过程并不复杂。

    1. 下载 VMware-server-2.0.1-156745.x86_64.tar.gz,不能用 rpm 来安装。
    2. 解压到 vmware-server-distrib 目录
    3. 再下载一个补丁 vmware-server-modules-2629.tar.gz(网上到处有,我就不提供下载了)
    4. 解压出补丁里的 4 个 tar 文件覆盖 vmware-server-distrib/lib/modules/source/ 里的原文件
    5. 运行 vmware-install.pl 安装
  • vnc vs vino

    我刚刚弄明白,Fedora 有两种远程桌面:VNC 和 Vino,软件包的名称分别是:

    • 服务器端:vnc-server & vino
    • 客户端:vnc & vinagre

    有关 VNC 的介绍很多,以致把 Vino 都湮没了。Vino 随着 GNOME 而来,菜单项的名称就叫 Remote Desktop。我找了一会,没找到 Vino 的配置文件是哪个。如果只有图形界面,我反而会觉得不方便。而且 Vino 使用 5901 端口,我也没找到什么方法修改。

    启用 Vino 后,/etc/sysconfig/vncservers 里就无法使用 Display 1 了,5901 端口被用掉了嘛。这么启动 vncserver 会报错,“A VNC server is already running as :1”。

    VNC 和 Vino 有两大不同。

    1. VNC 进入的虚拟桌面,Vino 进入的是桌面 Session(不知道这样表达妥不妥当?)
    2. VNC 必须设置 password (by running vncpasswd),Vino 则可以不设密码。
  • Easiest way to install Flash Player in Fedora

    Fedora 发行时不带 Flash Player,因为 Fedora 说 Flash is not free。我没去仔细研究这句话的意思,大概是指生成 Flash 的软件不免费吧。我也不喜欢 Flash,但是有那么多的资源得用 Flash Player。虽然 Fedora 推荐了两款 Open Source Flash Player,但播放时还是有七七八八的问题。除非大家都不用 Adobe Flash 制作 Flash,否则我还是离不开 Adobe Flash Player。

    因此,面对现实,怎么在 Fedora Firefox 下安装 Fedora 最简单?今天发现一法,一分钟内搞掂,笔记如下:

    1. 从 http://labs.adobe.com/downloads/flashplayer10.html 下载一个压缩包。
    2. 解压其中的 so 文件 放到 /usr/lib64/mozilla/plugins
    3. 在终端中运行 mozilla-plugin-config -i -g -v
  • Fedora LiveCD installation is not perfect

    Fedora 各版本都制作了 LiveCD, installation DVD, installation CD 等形式方便用户下载。刚接触 Fedora 时,我很难决定该选哪个来下载。既然 Fedora 把 LiveCD 放在下载首页,我就下载来刻成 CD。我用这张 CD 装了好几台机器,主要是用作文件服务器或 local dns 服务器或后备 http 服务器,都没有发现大的问题。在 intel 845 芯片安装过程中遇到困难,但也被我克服了。

    直到最近我用这张 CD 安装了我的 desktop,用了几天,日常使用没有什么问题,但虚拟机总是启动不了。VMWare 的虚拟客户端都是启动到 95% 时报错,Fedora 自带的 xen 或 qemu 也总是连接不上。我查来查去查不出毛病,最后一个指令 remove kernel-xen 就让 Fedora 彻底瘫痪(启动出现 Error 5)。

    我在尝试修复 Fedora 时查阅了很多论坛,我的最后结论是:LiveCD 不适合用来安装,虽然它可以 install to harddisk。我曾认为 LiveCD 和 installation DVD 或 CD 装出来的系统是一样的,但以我的实际情况结合其他人反映的情况(特别相似的一例是有人说用 ubuntu desktop cd 安装后 VMWare 虚拟机启动到95%时出错,改用 ubuntu server cd 安装后问题消除),我再不会用 LiveCD 来装机。

    顺便提一下,LiveCD 对初次接触 Fedora、想先评估后安装的用户确实是个不错的选择。我的系统瘫痪以后,我一时没有找到拯救硬盘文件的最佳途径,就只好用 LiveCD 在无硬盘的条件下工作了两天半,它也出色地帮我完成了两天半的任务。当然还得感谢网络化的办公环境——邮件全在服务器上,文件也在服务器上,真的很少用到本地硬盘了。只是 dns lookup 比较慢,几乎每次访问都要重新 lookup,估计 LiveCD 考虑到内存有限,不缓存 dns lookup result?我用本地另一台已启用 dnsmasq 的机器为我作 dns 代理,这样 LiveCD 访问 internet 速度就正常了。

    回过头来看 Fedora,为什么 Fedora 把 LiveCD 高高推荐在下载的首页?我觉得没有必要,除非 Fedora 对自己没有信心,才拼命拉拢用户来试用(Fedora 应该早就过了这个苦命的阶段了吧)。我没有试过用 Fedora installation DVD 去安装 intel 845 芯片的机子, 我猜 Fedora installation DVD 不会有显卡驱动的问题。现在我也理解了为什么没有 rescue mode、为什么 grub linux 命令无效,因为这些都是 LiveCD 没有的。Fedora 对 LiveCD 的下载用户警告不足,为此走了一圈弯路的用户应该不止我一个吧。