恩,记录一些没有条理的内容,随写随记,权当避免忘记了。n
昨天好事之下把thinkpad t43上的ubuntu 8.04升级到8.10,失败,乱七八糟的dependencies error搞的我那叫一个晕。于是干脆一不做二不休,祭出终极必杀武器:重装系统...这次死活不肯再跟着ubuntu混了,从6.x到7.04到7.10到8.04,我好像就没有一次平滑升级成功的经历,都是重新安装ubuntu才ok的。这次么,哼唧,再也不肯跟着ubuntu玩了,还是回到平滑升级几乎没有任何问题的ubuntu怀抱中去吧~~~
安装和升级过程乏善可陈,反正也就那么回事。就不多罗嗦了。重点说说遇到的困难:
t43的debian etch安装完毕后,没有声音。实在是懒,不想重新配置内核,遂试试看其他方案。
搞定的过程如下:
sudo apt-get install alsa-base alsa-tools-gui alsa-utils gstreamer0.10*
其中alsa的那几个不多说了,gstreamer0.10*是选取一系列N多个包,估计我这里面有一些多余软件安装上了,但宁缺毋滥,反正我笔记本空间足够大(60G+120G+160G.....),更何况总工业没用上多少空间...
安装完毕后,怀着崇敬的心情运行alsaconf
sudo alsaconf
按照提示进行操作,木错,kernel能够识别出我的声卡并正确安装了驱动。
再运行alsamixer来将所有声音设置调节到最大。
sudo alsamixer
看网上的一些blog介绍,alsaconf这步配置成功之后,有些机器还是没有声音是因为alsamixer中默认将声音设置为最低(就是无声),这样当然就会是声卡“没有”发出声音了...
然后,运行gnome的声音测试工具(我用gnome,如果您用其他桌面环境,换成对应的就行了)
gnome-volume-control
注意:将Master Headphone PCM Line-in CD Microphone下面的红叉全部取消!
我就是卡在这步上了,软件配置完毕,但是就是没有发出声音,怎么搞都搞不明白,费了几个小时的劲之后才发现,问题是出在我先用了gnome-sound-properties这个命令,它只能检查使用的sound driver而无法打开被屏蔽掉的声音。难怪不好用...
下一步的工作,如果你喜欢,就用gnome-sound-properties来检查一下是不是换个sound driver更酷一些。再按"Test"按键检测一下是不是有声音。如果有的话,恭喜,配置成功了:)
先别急,进入到最后一个步骤:我用thinkpad系列笔记本,键盘左上方是有Access IBM volume down/up/mute这几个按键的。在我此前安装了debian的x40上,按下这几个键会给debian传递信号,相应的增加/降低音量或者设置为无声。但是在这台新安装debian的t43上则不可以。问题应该是出在我安装t43时使用的是比较老版本的debian光盘,怕出现软件版本冲突而略过了用cdrom安装base system的环节,直接引导进入网络安装的缘故,有些软件就没装上了,比如利用这几个按键直接控制声音大小的软件。
google了一下,主要有两个解决方案:
一个是tpb,好处是配置超级方便,在debian源里安装后赋予/usr/bin/tpb普通用户的执行权限就可以了,附带一个超级简单的方法来利用linux下闲置的"access IBM"键的方法:
sudo apt-get install tpb
sudo chmod +x /usr/bin/tpb
gnome-session-properties
然后在弹出的窗口界面中按add,name和command栏都填写“tpb -d“,OK。
利用access IBM键的方法是:
sudo emacs /etc/tpbrc
将这行前面的#注销掉
NVRAM /dev/nvram
当然,这行维持它注销状态也没问题,但是保险起见,删掉的好。
注销掉下面这行的#
THINKPAD /usr/bin/X11/xterm -T ntpctl -e ntpctl
“THINPAD”代码在tpb中就指向access IBM键,该行后面的字符就表示按下access IBM键后自动运行的命令。这里我想让它代替执行gnome-do,于是就把这行内容修改如下:
THINKPAD /usr/bin/gnome-do
c-x c-c 保存,退出。
当然,前提是你安装了gnome-do,或者将后面字段更换成你想用的程序代码。
恩,最后的工作就是赋予tpb和nvram以普通用户的可执行权限。
sudo chmod +x /usr/bin/tpb
sudo chmod +x /dev/nvram
重新起动一下试试看:)
但是tpb的界面不大好看(挑肥拣瘦的,sigh,bs自己一下),而且貌似功能有些太简单。于是继续google,找到了方案二,用hotkey-setup也能实现这个功能,而且界面功能漂亮得多。
于是试试看:
sudo apt-get install hotkey-setup
系统会要求删除掉与hotkey-setup功能冲突的tpb。
安装完毕后按一下volume up/down/mute这几个键,是不是清爽多了:)
不过hotkey-setup不爽之处在于,没办法像tpb一样那么简单的定义access IBM键了。而我毕竟还想利用它。
于是继续折腾。很快我很悲哀的发现,在/usr/share/hotkey-setup和/usr/share/doc/hotkey-setup下的文件过于冗长,而且很难读懂(ubuntuforum.org上一个老兄用cryptic这个词来予以形容,很形象)。于是放弃,看看是否能有其他软件实现同样的功能。
继续google,找到了xbindkeys这个软件,安装也很方便
sudo apt-get install xbindkeys xbindkeys-config
后者是前者的一个配置工具,很好很强大,一并装了吧。
安装完毕后,首先按照提示,在自己用户目录下创建相应的keymap
xbindkeys --defaults > /home/simon/.xbindkeysrc
然后,运行xbindkeys-config,图形化界面让操作简单了许多。
不过问题在于,xbindkeys-config无法识别access IBM键...汗一个
那就只好用thinkpad键盘方向导航四个按钮旁边的backward和forward两个键了。
运行xbindkeys-config
xbindkeys-config
操作很容易熟悉。首先按左下角的new,在新跳出来的条目中依次输入Name Key和Action。以我的例子而言,Name就是"Forward",Key可以用"Get Key"按键来获得,方法是按一下Get Key,在新弹出的检测窗口中按下导航键右侧的forward键,程序就会自动找到该键所对应的key代码并输入了。Action部分我输入的是/usr/bin/gnome-do,可以再按"Run Action"键测试一下是不是这个。然后再重复上述工作,将Backward键绑定为/usr/bin/gnome-terminal,Name"Backward",Key方法如上,Action为/usr/bin/gnome-terminal。
删除掉你不想要的绑定。按save&apply&exit退出。
恩,可以试试看效果了。在我这里测试一些正常,你那边呢?