主题:Linux硬件问题通用攻略
一木一浮生
[专家分:0] 发布于 2011-10-12 14:26:00
Linux虽然Linux的发展声势浩浩荡荡,但相比Windows仍有很多硬伤,其中一项便是Linux硬件驱动支持的匮乏。有时你不得不接受有些硬件不能在Linux下工作的现实,但如果你采用的方法得当,并且你拥有一定的技术故障处理能力,通常可以避开问题,让硬件在你的Linux下运转起来。本文将介绍一些解决Linux硬件故障的通用方法,或是绕开硬件问题的方法。 1、不要使用太旧或太新的硬件
避免使用旧硬件的原因很明显,如果你使用的硬件停售时间已经超过5年,很可能最新的Linux发行版都未包含这些硬件的驱动;太新的硬件也应该尽量避免使用,因为它的驱动可能还未开发出来,也可能很不稳定。虽然最新的硬件都挺吸引人,但许多时候你都会以失败而收场,因为你选择的Linux发行版可能还未跟上硬件厂商的步伐。虽然这个问题越来越少,但仍然让人揪心。我建议尽量避免使用最近半年内发布的新硬件。
2、验证支持
在下手之前,检查下你要买的产品是否支持Linux或Mac,如果它支持Mac,那么支持Linux的可能性就很大,对打印机来说,这一招特别管用,当然,这一招也不是万灵的。如果硬件明确声明它支持Linux,那就可以放心购买。在购买硬件之前,我会上网搜索相关硬件厂商在Linux界的名声,NVidia在这方面就做得比较好,因为他专门为Linux开发了显卡驱动,Lexmark打印机也做得不错,值得表扬。
3、使用私有驱动
我知道这个办法会伤害很多开源爱好者的自尊心,但我们必须面对现实。有时私有驱动确实表现得更好,更稳定,NVidia就是一个很好的例子。是的,有适用于NVidia的Nouveau开源驱动,但仍然不够成熟,需要耐心等待它们成熟起来。如果你只需更好地驱动硬件,那么请放下你开源忠实粉丝的自尊心,接受私有驱动吧。
4、读懂你的日志文件
Linux系统上有大量的日志文件,但不会所有的日志文件都对调试硬件有帮助,你需要重点了解的是/var/log目录下的日志文件。
Xorg.0.log:任何与X Windows有关的问题都在这里。
cups/error_log:所有与打印机有关的问题都在这里。
messages:任何热插拔问题,以及所有与内核相关的问题都在这里。
syslog:包罗万象的日志文件,如果你在其它日志文件中未发现问题,不妨在这个文件中找找。
5、不要使用最新的发行版
和最新发布的硬件一样,最新的Linux发行版通常充满了吸引力。问题是,Fedora和OpenSUSE经常中断对硬件的支持,经常发生升级后X Windows屏幕就不亮的问题。如果你希望你的硬件得到稳定的支持,建议选择Ubuntu LTS这样的发行版,如最近的Ubuntu 10.04 LTS。
6、不要急于从Live CD下结论
我就遇到过这个现象,在Live CD中我发现有个硬件不能工作,这时不要放弃这个发行版,不妨完整安装试一下。很多时候,完整安装比Live CD能支持更多的硬件,特别是需要私有驱动时更是如此。我最近在一台华硕笔记本上启动Ubuntu 10.04,发现无线网络无法使用,于是我通过有线网络查找到私有驱动,很快我就用上无线网络了。
7、使用无线网络时,试试开放型网络
很多时候即使操作系统检测到无线网络,不管我怎么连接,就是不能工作,现在我遇到这种现象时,我会临时将无线AP的访问密码去掉,看它是否能够连接上,如果可以的话,问题就出在加密上,有时使用不同的无线管理程序可能会解决掉这个问题,使用WICD看它能否帮助你重新连接到加密的无线AP。
8、删除xorg.conf文件
如果你使用一个新的发行版(特别是Ubuntu>=9.04),整个X Windows都发生了变化,不要过渡依赖xorg.conf配置视频。新的X Windows不需要预配置的配置文件,如果X发生故障,你只能登录到终端界面,对xorg.conf备份后,将原始文件彻底删除吧,然后再重启X(或重启计算机),大多数时候X界面又回来了。如果还不行,通常意味着你的显卡驱动有问题,这时只有重装显卡驱动。
9、学会使用命令
有很多命令行工具可以帮助诊断和排除故障,例如,xinput命令可以帮助诊断输入设备的问题,输入xinput list,你会得到一个内核认识的输入设备列表。有时,有些硬件厂商提供了自己的工具,拿Wacom图形输入板为例,当你为这些设备安装驱动时,通常也附带安装了故障诊断工具,如wacdump。如果你使用Nvidia私有驱动,你可以使用nvidia-config工具(它也有一个漂亮的GUI),它可以帮助你配置显卡的高级特性。阅读这篇文章可了解Linux硬件管理的基础知识。有关Linux网络配置的更多信息,可参考《七大实用命令行工具 玩转Linux网络配置》这篇文章。
10、在不同的机器上尝试一下
即使你使出浑身解数,最终还是以失败告终,这时不妨将硬件换到别的机器试试,我在许多Linux发行版上使用Wacom Bamboo Pen就遇到过这个问题,我将它接到另一台Mac上测试,它却能正常工作,因此我知道问题不在硬件,而是Linux本身。我有块图形输入板在Linux下不能工作,换到Mac上还是不行,于是我认定是这块图形输入板的问题。
更多的小知识:[url]http://beidaqingniao.org[/url]
回复列表 (共3个回复)
沙发
wc2hjy [专家分:0] 发布于 2011-10-12 15:06:00
CPU是主流的4核羿龙,Linux内核2.6.31(当前版本)肯定是完美支持,不光是SMP,还是超过8个CPU,都没问题的
显卡是ATI的,这要看AMD的驱动了,我记忆里的专有驱动叫fglrx,不过没有ATI的显卡,没用过,所以也不知道怎么样。不过至少基本的3D硬件加速肯定没问题
主板没听说过有什么主流的不被Linux支持
Linux和Windows两回事,可执行程序不能相互识别,驱动当然毫无关系,要分开安装
Linux(以及其他类UNIX系统)管道操作用“|”,这是一般shell的语法(我还没见过有其它的),比如Borne Shell,bash,csh,tcsh,ksh……
telnet基本上已经完全被ssh取代了,(除了用telnet做smtp端口测试以外),telnet/ssh是命令行界面,如果机器没有X Window,就只能用telnet/ssh。如果有X Window,就可以用VNC。不过一般远程登录很少有用VNC的,既然远程就差不多是server了,哪个Linux server还装X Window啊..
[url]http://www.52benet.cn[/url]
板凳
lf123 [专家分:0] 发布于 2011-10-12 17:33:00
今天和大家分享一下linux的简单常用命令:
名称:more
权限:所有使用者
使用方法:more [-dlfpcsu] [-num] [+/pattern] [+linenum] [fileNames..]
说明:类似 cat ,不过会以一页一页的显示方便使用者逐页阅读,而最基本的指令就是按空白键(space)就往下一页显示,按 b 键就会往回(back)一页显示,而且还有搜寻字串的功能(与 vi 相似),使用中的说明文件,请按 h 。
相关参数:-num 一次显示的行数
-d 提示使用者,在画面下方显示 [Press space to continue, 'q' to quit.] ,如果使用者按错键,则会显示 [Press 'h' for instructions.] 而不是 '哔' 声
-l 取消遇见特殊字元 ^L(送纸字元)时会暂停的功能
-f 计算行数时,以实际上的行数,而非自动换行过后的行数(有些单行字数太长的会被扩展为两行或两行以上)
-p 不以卷动的方式显示每一页,而是先清除萤幕后再显示内容
-c 跟 -p 相似,不同的是先显示内容再清除其他旧资料
-s 当遇到有连续两行以上的空白行,就代换为一行的空白行
-u 不显示下引号 (根据环境变数 TERM 指定的 terminal 而有所不同)
+/ 在每个档案显示前搜寻该字串(pattern),然后从该字串之后开始显示
+num 从第 num 行开始显示
fileNames 欲显示内容的档案,可为复数个数
举例:
more -s testfile 逐页显示 testfile 之档案内容,如有连续两行以上空白行则以一行空白行显示。
more +20 testfile 从第 20 行开始显示 testfile 之档案内容。
详情请连接:[url]http://www.gobenet.net.cn[/url]
3 楼
wc2hjy [专家分:0] 发布于 2011-10-19 16:05:00
A:有两种方法,
一种是将含DOS文件的系统挂到Linux的文件系统上,通过mount命令
来实现,mount命令的语法是:
mount device mount-point
device是指要挂上的设备,如果是软盘的话,一般是/dev/fd0或者
/dev/fd1表示第一个软驱或第二个。mount-point是希望将文件系统
挂上的目录,这个目录必须是在mount之前已经存在,并且一定要空
目录。比如要将系统的第一个软驱中的软盘挂到Linux文件系统中,
可以打入如下命令:
xxx@xxx.xxx root> mount /dev/fd0 /mnt/floppy
然后就可以通过对/mnt/floppy这个目录来访问软盘了。对于mount
命令的具体用法,可以参考手册:man mount
第二种方法是通过Linux提供的mtool工具来实现的。这些命令使你
不需要mount也能访问DOS的文件系统,这样的命令都以m开头,如
mdir,mformat,mdel等等,具体的可以参考手册。
注:第一种方法适合所有Linux支持的文件体统,包括光驱等其他一
些设备,可以用-t指明想要的文件系统类型。
------------------------------------------
类型:硬件——外存——光驱 (genius)
Q:为什么光驱mount以后出不出来了?
A:Linux是一个多用户操作系统,挂上去的文件系统是共享的,出于可靠性,
是不能随便拆除的。必须先umount文件系统,如果有人在使用这个文件
系统,就会向你提示。如果是超级用户的话,也可以强制卸下文件系统,
不过可能造成数据丢失。光驱的文件系统也同样如此,mount上去以后,
不能随便取出,必须卸下之后才可以取出。
[url]http://www.nengdongyingyu.org[/url]
我来回复