在 Lenovo G360 笔记本上安装 Debian Squeeze AMD64

近日入手一台入门级笔记本 Lenovo G360,原装 Windows 7 家庭版,加装了 Debian Squeeze AMD64 Linux,成双系统启动。主要解决了:双系统引导,屏幕亮度调节,双显卡使用及节能,Google Chrome、Firefox浏览器安装及 flash 插件使用,永中 Office 2012 青年版安装,安装 Stepmania 跳舞毯程序,安装教育、科学类套件,笔记本电池使用,中文输入法,VMware Player 4.0.4安装等。下面简要记录一下要点。

一、双系统引导
为了不对原先硬盘上的引导方式可能造成的影响(比如:保修),采用了 Windows 7 的 bcdedit 添加了 Grub4dos 的引导记录,再由 Grub4dos 引导 Debian Squeeze AMD64 Linux。
首先你要先下载最新版本的GRUB4DOS,
把grldr.mbr,grldr与menu.lst复制到C盘根目录下
输入以下命令

bcdedit /create /d “GRUB4DOS” /application bootsector
输入命令后,会出来UID,复制它,替换字符串
bcdedit /set 字符串 device partition=C:
bcdedit /set 字符串 path \grldr.mbr
bcdedit /displayorder 字符串 /addlast

依次复制替换好的三个命令到CMD运行
三个都运行完毕重启就可以在vista的启动菜单显示grub4ods了(以上创建 Grub4dos 引导记录的步骤摘自:用windows7的bcdedit引导GRUB4DOS续 http://imcsx.com/archives/28.html )
然后,根据你的具体情况修改 menu.lst 就可以了。我的相关记录是:

title Debian GNU/Linux
find --set-root --ignore-floppies --ignore-cd /vmlinuz
kernel /vmlinuz root=/dev/sda7 acpi_backlight=vendor ro quiet
initrd /initrd.img

二、屏幕背光亮度调节
可能是由于 Linux 的 Intel 显卡驱动相关的问题,按 Fn + Up/Down 不能调节亮度,搜索了网上的解决方法,有添加引导参数的,有安装内核补丁的,有写脚本并用 Xbindkeys 程序绑定调节亮度组合键的。我最终采用的方法是先安装并启用了 squeeze-backports 源里的 linux-image-3.2.0-0.bpo.1-amd64 内核,再在 Grub 的内核引导中加入“acpi_backlight=vendor”的参数。但是这种方法在我的机器上偶尔会失灵。另外,也有网上的用户报告这种加内核引导参数不起作用的情况。那么,如果碰到这种情况,也可以试试后面我介绍的方法。这种方法的基本使用条件是:intel 显卡对背光亮度起作用,在“/sys/class/backlight”下面有两个目录“acpi_video0”和“intel_backlight”,按亮度调节键时只对“acpi_video0”下面的“brightness”起作用,但真正对背光亮度起作用却是“intel_backlight”下面的“brightness”值。我在其中一篇文章的启发下,当我按亮度调节组合键时,用“sudo udevadm monitor”命令检测到 “backlight” 子系统的的 “change” 动作,故添加了 “/etc/udev/rules.d/99-writeintelbacklight.rules” udev 规则如下:

ACTION=="change", SUBSYSTEM=="backlight", RUN+="/usr/sbin/writeintelbacklight.sh"

一个处理活动的脚本 “/usr/sbin/writeintelbacklight.sh” 如下:

#!/bin/bash

intelmaxbrightness=`cat /sys/class/backlight/intel_backlight/max_brightness`
acpimaxbrightness=`cat /sys/class/backlight/acpi_video0/max_brightness`
scale=`expr $intelmaxbrightness / $acpimaxbrightness`
acpibrightness=`cat /sys/class/backlight/acpi_video0/brightness`
newintelbrightness=`expr $acpibrightness \* $scale`
curintelbrightness=`cat /sys/class/backlight/intel_backlight/actual_brightness`
if [ "$newintelbrightness" -ne "$curintelbrightness" ]
then
  echo $newintelbrightness > /sys/class/backlight/intel_backlight/brightness
fi
exit 0

基本原理是按亮度调节组合键时会重写 “/sys/class/backlight/acpi_video0/brightness”,激发 “backlight” 子系统的 "change" 运作,调用脚本修改 “/sys/class/backlight/intel_backlight/brightness” 的值,使屏幕亮度发生相应改变。当然,不要忘记为脚本添加可执行权限:“sudo chmod +x /usr/sbin/writeintelbacklight.sh”。其它如果有类似情况的也可以试一下,如 brightness 在别的目录名称下面。

以上笔记本电脑 intel 显卡的屏幕背光亮度调节的问题参考链接:
Bug 44809 - [Arrandale backlight] Brightness via RANDR has no effect on Sony VAIO VPCYA1V9E https://bugs.freedesktop.org/show_bug.cgi?id=44809
Unable to change brightness in a Lenovo laptop http://askubuntu.com/questions/57236/unable-to-change-brightness-in-a-lenovo-laptop

三、双显卡使用及节能
现在预装 Windows 7 的很多笔记本都使用了集成显卡加独立显卡的双显卡技术(如:Nvidia Optimus,其它的显卡品牌不知道 ),一般情况下只使用集成显卡以节省电能,需要 3D 加速的时候再启用独立显卡。这种技术需要操作系统的支持,这个切换的过程可以是自动的。在 Linux 下,有大牛们实现了一种手动的独立显卡启动(BumbleBee)和自动的节能切换(bbswitch),虽然比不上 Windows 7 操作系统级别的原生支持,但也基本可用。安装 BumbleBee 和 bbswitch 的步骤是按照 Debian Wiki : http://wiki.debian.org/Bumblebee 上进行的。有两点要注意一下。一是 bbswitch 是下载 Ubunut PPA 仓库的 bbswitch-dkms_0.4.2-2~preciseppa1_all.deb 版本,经试验可以用在我使用的 Debian Squeeze AMD64 Linux 下;二是因为手工编译安装 BumbleBee 的,必须要手工修改一下配置文件才行,我这里是 /usr/local/etc/bumblebee/bumblebee.conf,设置的内容有 Driver=nvidia PMMethod=bbswitch 等。

安装成功后,如果某一个程序要使用 3D 加速,如:firefox,可以这样执行“optirun firefox”。执行后,“lsmod”会发现新加载了 nvidia 模块。相关程序结束后,“lsmod”会发现 nvidia 模块消失了。另外,单独分别执行“glxgears”和“optirun glxgears”也可看出启用 Nvidia 显卡与否的显著区别。在我的机子上,前者帧率大约 60 FPS,后者大约 960 FPS。

另外,据上面的 wiki 内容说,也有针对 Debian Wheezy 和 Sid 用户的现成非官方的 BumbleBee 软件仓库可方便的直接安装使用。不过我没测试过。具体情况参见: Debian logo Bumblebee Debian repository http://suwako.nomanga.net/ 。

四、Google Chrome、Firefox浏览器安装及 flash 插件使用
原来在32位系统下使用正常的 Google Chrome、Firefox 浏览器在 AMD64 下不能使用,解决方法是安装两个包: “sudo apt-get install ia32-libs ia32-libs-gtk”。
另外,在 Adobe 公司官方网站下载的64位 Flash 播放器插件在 Firefox 官方版本中不能工作,还没找到解决的办法。这个 Flash 插件在 Google Chrome 和 Debian 软件仓库中的 Iceweasel 浏览器上工作正常。

五、永中 Office 2012 青年版安装
我在永中 Office 官方网站 http://www.yozosoft.com/person/ 处下载的“永中Office 2012 青年版 For Linux”deb 包(32/64位):Yozo_Office_6.1.0088.131ZH.deb ,使用 “sudo dpkg -i Yozo_Office_6.1.0088.131ZH.deb” 的方法安装会报告架构不一致不能安装的错误并停止安装,解决方法是“sudo dpkg -i --force-all Yozo_Office_6.1.0088.131ZH.deb”,即加了一个 “--force-all” 的参数。
安装后发现字体比较模糊,解决方法是在 /etc/profile 后加 export _JAVA_OPTIONS='-Dawt.useSystemAAFontSettings=lcd' 。

六、安装 Stepmania 跳舞毯程序
因为原装跳舞毯程序配的是厂家修改过的 3.9 系列的 Windows 版本,所以在原来 32 位系统下安装的是 http://www.stepmania.com/wiki/Old_Version_Downloads 处下载的 StepMania-3.9a-linux.tar.gz (参见:Linux 下使用跳舞毯 http://www.learndiary.com/2012/03/linux-%e4%b8%8b%e4%bd%bf%e7%94%a8%e8%b7%b3%e8%88%9e%e6%af%af/ ),但是在 Debian Squeeze AMD64 系统下不能使用,试着编译 3.9 版的源码,可能是由于原来版本的编译相关依赖包过于老旧(如: GCC 版本),没有成功。就放弃安装 3.9 版本。安装了 Stepmania v5.0-alpha2 的64位版本( http://sm-ssc.googlecode.com/files/StepMania-v5.0-alpha2-linux64.tar.bz2 )。把原来的 Songs 目录复制到解压安装的目录下就行了。不过,我发现 5.0 版本的 Stepmania 不能够自动识别跳舞毯了,按键不管用。但是键盘上的键是可以识别的。经过上网查询,lsusb 能够看到跳舞毯设备,用 joystick 包里的 jtest /dev/input/js0 测试按键在系统中能被识别。下载 qjoypad 的源码并编译安装,执行 qjoypad 后,在软件界面中点击“Quick Set”后,就可以设定跳舞毯的按键跟电脑键盘的映射关系,点击“Update”以一个新的“Layout”保存设定的映射关系。在执行 Stepmania 前,执行“qjoypad "Layout名称"“就可以使用了。这时的跳舞毯按键就相当于映射的电脑上的相应按键。

七、安装教育、科学套件
Linux 下有成套的教育科学、科学软件,例如:Gcompris, Tuxpaint, Tuxmath, Tuxtype等,还有许多关于天文、地理、物理、数学、图形、音乐等软件。虽然现在绝大部分还用不着,不过我把这些东西一起全部安装上,有时间再慢慢探索。使用的命令大概是:
sudo apt-get -t squeeze-backports install science-* debian-edu-* education-tasks education-standalone education-services education-physics education-music education-misc education-menus education-mathematics education-logic-games education-laptop education-language education-graphics education-geography education-electronics education-development education-desktop-sugar education-desktop-other education-desktop-lxde education-desktop-kde education-desktop-gnome education-common education-chemistry education-astronomy

我试过,如果安装所有以 education- 开头的软件包(即 education-*),会安装上包括: education-networked education-main-server education-thin-client-server education-thin-client education-workstation 等之类的基于网络的教育服务器、客户端之类的软件,有一堆额外的设置我不是很明白,也没有这方面的需要,所以觉得单机上还是暂时不安装了。以后有需要时再说。

八、笔记本电池使用
因为这台笔记本主要使用交流电源,在 Windows 7 的电源管理程序中设置了“最长电池使用寿命”,这样,电池只有小于80%或80%以下的某个百分比容量才充电。这个设置应该是保存在电池的芯片里的,这样在 Debian 下也会使用这个设置。

九、中文输入法
在 Debian Squeeze 下从软件仓库安装的 SCIM, FCITX 输入法在一些 Flash 网页游戏中会输不上中文(如 4399.com 上的“奥比岛”),不知是不是我没设置好的原因。不过使用 IBUS 输入法就正常了。

十、VMware Player 4.0.4 安装
在 Debian Squeeze AMD64 backports 3.2.0-0.bpo.1-amd64 kernel 下,我在 VMware 官方网站下载的 VMware-Player-4.0.4-744019.x86_64.bundle 不能安装 vmnet 模块导致不能运行,使用下列文章中的补丁解决:VMware Workstation 8.0.2 7.1.5 / Player 4.0.2 3.1.5 fix for linux kernel 3.2 and 3.3 http://weltall.heliohost.org/wordpress/2012/01/26/vmware-workstation-8-0-2-player-4-0-2-fix-for-linux-kernel-3-2-and-3-3/ 。因为我用的是最新的 4.0.4 版本,所以试着把那个 patch-modules_3.2.0.sh 文件里的 plreqver=4.0.2 改成 plreqver=4.0.4,然后执行 “sudo ./patch-modules_3.2.0.sh” 就行了。暂时还未发现异常情况。
如果你无法访问这篇文章(可能需要代理访问),点击下面链接下载原作者给出的补丁:
vmware workstation 8.0.2 / player 4.0.2 fix for linux 3.2+: vmware802fixlinux320.tar
vmware workstation 7.1.5 / player 3.1.5 fix for linux 3.2+ (patch by Ariel): vmware715fixlinux320.tar

未解决的问题:
1、ALPS 触摸板可以使用一般的移动和点击功能,”Fn + F6“的禁止/启用触摸板功能键正常,不过边界的滚动功能不起作用。在 Gnome 的鼠标设置中也没有设置触摸板的标签页。
2、根据 Add Facial Recognition Password Login to Ubuntu Linux Distro: http://compixels.com/2071/add-facial-recognition-password-to-ubuntu-linux-distro 中介绍的方法在本机上实验了一下人脸识别登录,0.3 版本和 SVN 版本都试过,在我的机子上基本不能正常识别。同样的环境(节能台灯灯光下),在 Windows 7 下的 Lenovo VeriFace 人脸识别登录能够正常工作。

我安装这个系统主要是为小孩学习娱乐用准备的,主要看重的是上面的教育套件、使用环境清洁简单。我希望这套系统能为小孩的成长添加有益的助力。

2 thoughts on “在 Lenovo G360 笔记本上安装 Debian Squeeze AMD64”

Comments are closed.