Linux入门:解决硬件兼容问题
经过一番智力与耐力的考验,你现在终于把Linux安装到电脑上了,可是即便如此,也不可掉以轻心,因为下面还要进行软硬件兼容性的检测,说不定这里又会遇到拦路虎。
有些时候,Ubuntu或其它Linux系统的安装可能会十分成功,软件与硬件兼容得很好,好似早已磨合过很长时间。不过有时也会出现些意外,比如某个硬件的运行存在一些问题等,今天我们就来谈一谈,当Linux安装出现硬件瑕疵时,应如何进行修补。
注:和Linux入门系列的其他文章一样,本文同样是站在一个Ubuntu菜鸟用户的角度进行探讨。不过所涉及的内容和方法基本上通用,许多技巧也都适用于其他版本的Linux系统。文章的最后还提供了一些遇到问题时的解决途径,供大家参考。
首要工作:使Wi-Fi正常工作
你可以先把Wi-Fi驱动加载到CD或U盘上,然后按照安装Linux系统的方法进行安装,驱动Wi-Fi正常工作。
如果这招不灵的话,还可以找到硬件的Windows驱动,然后通过特定软件使其应用于Linux。假如安装系统时真的遇到Wi-Fi故障,我们就不能上网搜索解决方案,也无法下载相应的补丁程序了,实在是会很令人头大。
如果你想知道自己的无线网卡是否兼容Linux,可以去 HJ Heins的在线网站 进行检测。如果你的Wi-Fi硬件被标示为绿色,那就大可放心,这表明可兼容绝大部分的发行版。
即使不是绿色,也不代表完全束手无策,还可以去Ubuntu社区文档中进行查询,社区中遇到类似问题的其他用户可能已经发布了解决方案,这样你便可以依葫芦画瓢的进行操作。
除此之外,还可以采用查阅 常见故障排除指南 、求助谷歌在线搜索、Ubuntu论坛和其他社区资源等多种方法来解决问题。
假如所有这些尝试都无济于事,我们还有一个终极方案,即用Windows驱动进行替代。别喷饭,虽然听起来有点荒唐,但事实的确如此。我们可以先用特殊软件对Windows驱动进行打包,然后再将其应用到Linux中。
如果你想挑战一下,那就开始动手吧,先下载无线网卡的Windows驱动,解压缩。同时在Ubuntu中安装ndisgtk程序。接着按路径“系统>管理菜单”找到并启动“Windows无线驱动程序”,然后点击“安装新驱动”按钮,最后从Windows驱动文件包里加载INF文件就可大功告成。
其中的具体步骤,How-To Geek网站发布过教程进行逐步演示,可以在 这里 查看。
受限驱动安装
很多硬件制造商(如Intel等),会为硬件用户提供免费且开源的驱动程序,但是还有一些(如Nvidia,ATI,Broadcom等)则不会。作为一个完全开源的操作系统,大多数Linux发行版本身不会集成这些非开源的驱动,因此这部分用户就必须要手动安装相关的硬件驱动。
其实这些硬件也能找到第三方的开源驱动,例如Nouveau便是一个面向Linux用户的Nvidia第三方开源驱动,它对硬件的支持也相当不错,能够满足一般要求。不过要想充分发挥显卡的3D性能和高品质的画面性能,还是必须得安装相应显卡的受限驱动。
各个发行版安装受限驱动的方法迥异,以Ubuntu为例,Ubuntu内置了优异的受限驱动管理程序,能提供与硬件兼容的驱动,并支持一键安装。该程序位于“系统>管理>硬件驱动”。其他发行版安装受限驱动可能稍微繁琐,需要先上网获取相应的安装说明(如Mint和SUSE都有安装Nvidia受限驱动的说明)。
该方法不仅适用于显卡驱动安装。如果无线网卡或其他硬件没有开源驱动,你也可以用同样的方法安装受限驱动。按照我个人的习惯,装完Linux系统后的第一件事,就是查看哪些硬件可以安装受限驱动,并进行安装。
受限格式:DVD,MP3,视频格式等
对于开源软件,Ubuntu还可以正常应付,但由于版权问题,当遇到MP3、DVD、版权字体等一些你认为理所应当具备的功能时,它可能就束手无策了。
但想实现上述常用功能其实非常容易,实际上,基本只需要两个步骤:
第一步:如果你现在就在Ubuntu系统中, 点击这里 安装ubuntu-restricted-extras。
如果你现在没启动Ubuntu,可以先在浏览器中点击该链接并收藏此页。你也可以从Ninite中提取该安装程序,或直接前往Ubuntu软件中心(从桌面左上角应用程序菜单中进入)搜索ubuntu-restricted-extras并进行安装。
第二步:打开Terminal(Applications->Accessories->Terminal),输入下面的命令行,按Enter键:
sudo /usr/share/doc/libdvdread4/install-css.sh
经过上述处理MP3、DVD等大部分音频视频格式,以及Java,Windows专用字体,和其他可能遇到的东东就都能正常使用了。很简单吧,是不是感觉不费吹灰之力就搞定了!
其他版本的Linux应用程序仓库中也会提供类似的“受限产品包”或安装程序。你只需在软件包管理器(YUM, Synaptic等)中,搜索MP3、avi、Windows media等关键词即可找到。
键位重新映射
通常情况下,安装完系统后,鼠标都能正常工作——左键,右键,滚轮,甚至有时前进、后退这样的附加键也能正常使用。不过,如果你想重新映射多按键鼠标的附加键,就需要进行一些手动处理了。具体的方法多种多样,但根据我个人的经验,xbindkeys应该是最容易的方案。下面我们就以把鼠标拇指键设定为Ctrl+T快捷键(用于Firefox打开新标签)为例,进行介绍。
首先,我们需要找出所要修改鼠标键的数字编号。鼠标的每个键都有自己的编号,但仅凭外观无法分辨。因此,我们来运行以下命令找出答案:
xev
将光标移动到该命令打开的窗口中,按下拇指键,将会显示如下代码:
ButtonPress event, serial 33, synthetic NO, window 0x4e00001, root 0x142, subw 0x0, time 568329, (93,19), root:(96,714), state 0x0, button 10, same_screen YES
代码最后一行的“button 10”就是我们要找的按键编号。这说明拇指键的编号是10。牢记这个数字,并按Ctrl + C退出xev,继续进行下一步操作。
下一步,我们将需要安装两个程序:xbindkeys和xautomation。在Ubuntu中,运行以下命令即可:
sudo apt-get install xbindkeys xautomation
之后,运行下面的命令来创建xbindkeys的配置文件:
xbindkeys --defaults > /home/your-user-name/.xbindkeysrc
上面的命令行中需要将your-user-name替换成你自己的用户名,另外此命令行也适用于其他版本的Linux。下一步,是对该文件进行编辑。打开文件管理器,找到主目录,进入View > Show Hidden Files。在文件列表的底部找到.xbindkeysrc文件,双击打开,并添加以下命令行到文件末尾(但要在 # End of xbindkeys configuration #之前):
# Thumb Button = Ctrl+T
"xte 'keydown Control_L' 'key T' 'keyup Control_L'"
b:10
Xte即是xautomation程序中的一个命令,它能模拟按键。“xte 'keydown Control_L' 'key T' 'keyup Control_L”语句是指,按下左Ctrl,再按下T,然后再放开Ctrl。 b:10则对应鼠标拇指键编号。明白了吗?不难吧。现在你就可以返回去用xev找出你想设置的鼠标按键编号,并按照上面的演示过程对其进行重新映射。如果你想知道键盘各个键的编号,则可以去查询xte附带的列表。
其实xbindkeys还可以完成很多其他的事情,在此就不再进行赘述,你可以先设定鼠标按键来练练手。更多的功能可以查看Ubuntu的 键盘快捷键指南 。另外,如果用xbindkeys加你的鼠标型号作为关键字进行Google搜索,也能找到很多很好的教程。祝你好运!
如何寻求帮助
Linux系统可进行的配置用无穷尽来形容也不夸张,只要你潜心研究就能发现可以做的事很多。而我们所做的Linux入门系列也仅仅是为了起到抛砖引玉的作用,广阔的未知领域还需同学们自己去探求,幸运的是,网络上关于Linux的社区众多,其中很多又都是高手云集,你在使用过程中遇到什么困难,可以去这些地方寻求帮助,相信肯定会有所收获。
Ubuntu社区文档 :这里经常能看到很热门的信息。在此你能了解很多常见的应用,比如我们上面讨论的重设鼠标按键等。运气好甚至能找到一些型号本本的全套硬件解决方案。事实上,不管是笔记本还是台式机,安装Linux后最好都去社区文档中看看是否有相同型号电脑的方案——如果碰巧找到,那无疑将省去很多麻烦,你只需按照文档提供的流程进行操作,就能使所有硬件都正常工作。
Arch Linux维基 :虽然它主要面向Arch Linux用户,但我认为Arch Linux维基是我所见过最好的Linux维基。浏览Arch Linux维基时,要记得把解决方案替换成你所用版本的命令(例如,当这里介绍用pacman来安装软件包时,你要记得要使用apt - get命令,或其他你所用发行版的命令),但毋庸置疑,这里仍然是获取资源的好地方,特别是一些涉及到命令行工具和硬件工作的资源。
Ubuntu论坛 :Ubuntu论坛是最大的Linux论坛之一,很多数问题都能在这里找到答案,你只需检索问题或故障的关键词即可。即使没能搜索到满意方案,你也可以自己发帖进行提问。总而言之,作为一名Linux新手,多在这个坛子泡一泡是不会吃亏的。
Google :坦率来讲,我认为Google是搜索解决方案的最好的方式。上述提到的资源都很好,但Google的综合性更高,所以这也是我最常用的途径。如果你所询问的问题有解决方案的话,一般会在前三个搜索结果中列出。另外,假如你想试用某个新的软件,也可以提前Google一下教程,这样能省去很多麻烦。
Lifehacker :也就是我们Linux入门系列文章的来源网站,这里潜伏着不少高手,他们可能回答不了过于具体的问题(如“我想用软件X,来做Y事,但却出现了错误代码。我该怎么办?”),但却善于处理一般性问题(如“如果我想把鼠标按键映射成Firefox打开新标签的快捷键,用什么方法最好?”),所以不妨也来尝试一下吧。
来源: lifehacker