Chinaunix首页 | 论坛 | 博客
  • 博客访问: 1896878
  • 博文数量: 333
  • 博客积分: 10791
  • 博客等级: 上将
  • 技术积分: 4314
  • 用 户 组: 普通用户
  • 注册时间: 2007-08-08 07:39
文章分类

全部博文(333)

文章存档

2015年(1)

2011年(116)

2010年(187)

2009年(25)

2008年(3)

2007年(1)

分类: LINUX

2010-12-23 18:23:35

Linux下大部分驱动都是以模块方式加载到内核的,所以要删除一个驱动,主要从模块下手。所以首先要学会如何查看已经加载的模块:
lsmod

第一列是模块的名字,根据模块名字往往可以猜出哪个模块是你要删除的驱动。如果对硬件不熟悉的话就要试着通过其他命令来找相关的信息。

比如我要删除无线网卡的驱动,那么我可以用:
lspci | grep less

lspci命令会列出所有PCI设备,而grep会找出返回结果中包含less的行。无线是Wireless,所以返回结果就会包含有我的无线网卡的信息,比如:
02:00.0 Network controller: Realtek Semiconductor Co., Ltd. RTL8192E Wireless LAN Controller (rev 01)

可以看出型号是RTL8192E,这个时候再用lsmod命令,查看有没有与8192相关的模块名就可以了。

找到模块名字后(比如我的无线网卡叫做r8192e_pci)就可以用如下命令卸载模块:
rmmod 模块名

对于我的无线网卡就是rmmod r8192e_pci。这时候驱动就已经成功被卸载了,但是是临时的,重启又会重新加载,如果要永久卸载这个驱动的话还需要改一点东西。

在Ubuntu下进入/etc/modprobe.d目录下(其他发行版会有些差别),编辑blacklist.conf文件,加入一行(一般加在最下面):
blacklist 模块名

这样就将你要删的驱动加入了黑名单,以后就再也见不到它啦!: )


阅读(21732) | 评论(0) | 转发(0) |
0

上一篇:建立自己的资料库

下一篇:Quixote笔记

给主人留下些什么吧!~~