`
helloyesyes
  • 浏览: 1303833 次
  • 性别: Icon_minigender_2
  • 来自: 武汉
文章分类
社区版块
存档分类
最新评论

Debian下编译安装驱动模块

阅读更多
在Linux下,我们常有需要自己来编译安装驱动模块的情况,例如要安装显卡驱动,要安装无线驱动,有的时候某个程序的安装使用与需要安装相应的驱动模块。Debian Linux下的生活本已十分简单,使用apt可以处理一切。单就我们所讨论的驱动安装,一般情况下,源中也会有已编译的相应驱动可用。但是一般来说,驱动模块与所用的内核版本有着较强的依赖关系,如果源中并没有与我们所用的内核版本相匹配的驱动时,就需要我们自己手动来编译安装驱动模块了。在这样的情况,Debian下的驱动模块编译安装工具m-a就有了用武之地了。下面我们简要介绍一下如何使用m-a来手动编译安装驱动模块。

1 安装m-a

# apt-get install module-assistant

2 安装必须的软件

# apt-get install build-essential

这是编译内核和模块所必须的软件包。当然,如果我们不这样显式的安装,我们也可以使用下面的命令来安装:

# m-a prepare

正如其名字所显示的,这会为编译安装驱动模块安装必须的各种软件包,从而可以安装build-essential。

3 安装内核源码与相应的头文件

要编译安装驱动模块,我们首先要安装相应的内核源码与相应的内核头文件。当然,如果我们是自己编译安装的内核,在/usr/src目录下有编译安装内核时所用的源码,那么就可以跳过这一步了。如果不是这样,那么我们就要先安装相应的源码与头文件。

我们可以用下面的命令来确定我们所用的内核版本信息,我们将要安装的内核源码与头文件要与我们正使用的内核版本相匹配:

# uname -a

安装内核源码:

# apt-get install linux-source-`uname -r`

安装相应的头文件:

# apt-get install linux-headers-`uname -r`

4 编译安装驱动模块:

这样以后,我们就可以进入/usr/src目录下来编译安装我们所需要的驱动模块了。在安装之后,我们可以用下面的命令来驱动更新:

# m-a update

如果我们要为显卡安装fglrx驱动模块,我们就可以用下面的命令来自动安装:

# m-a a-i fglrx

这个命令可以完成相应驱动模块的自动编译安装过程。事实上,这个命令是由相应的get,build,install三个命令组成的。如果我们要详细的看到编译安装的过程,我们可以分别调用这三个命令来完成安装的过程:

获取驱动源码:

# m-a get fglrx

这会下载所指定的驱动源码,并且解压到/usr/src/modules目录下。

编译驱动模块:

# m-a build fglrx

经过编译以后就会在/usr/src/目录下生成相应的deb安装包。我们可以用m-a来安装:

# m-a install fglrx

当然,对于这样的deb包,我们也可以使用dpkg来安装:

# dpkg -i fglrx-xxx.deb

5 载入驱动模块

在安装驱动模块以后,我们可以载入驱动模块,可以来确定我们的驱动模块是否成功安装:

# modprobe fglrx

如果成功载入,则说明我们的驱动模块安装成功。否则,就要进行错误检查了。如果安装成功,我们就要编辑系统驱动配置文件,从而可以使得系统在启动的时候可以自动装入驱动模块:

# vim /etc/modules

写入系统启动时要载入的驱动模块即可。

That's all~~Enjoy it~~
分享到:
评论

相关推荐

    debian7.7安装make需要的依赖包

    5. **linux-headers-3.2.0-4-common_3.2.63-2+deb7u1_amd64.deb**:这是Linux内核头文件,用于编译内核模块或与内核交互的驱动程序。 6. **libc6-dev_2.13-38+deb7u6_amd64.deb**:这是GLIBC(GNU C库)的开发版本...

    Debian AMD64 安装指南.pdf

    - **子系统安装与配置**:创建一个名为“chroot-woody”的目录,并在此目录下利用debootstrap安装Debian Woody子系统。随后复制网络配置文件至子系统,进入子系统环境,进行进一步的配置和编译工作。 #### 结论 ...

    在Debian系的Linux中编译并安装ixgbe驱动的教程

    首先,确保你的系统已经安装了编译驱动所需的依赖。运行以下命令来安装内核头文件和开发工具包: ```bash sudo apt-get install linux-headers-$(uname -r) sudo apt-get install gcc make ``` 内核头文件是编译...

    RTL8188FU的linux驱动,可以重新编译

    5. **安装驱动**:使用`sudo make install`命令将驱动安装到系统目录,并加载驱动模块,如`sudo modprobe rtl8188fu`。 需要注意的是,驱动编译可能会因系统环境和内核版本的不同而遇到问题。在编译过程中,可能会...

    BCM4352 无线网卡驱动 适用kalilinux2018.1

    这是一个Debian软件包,其中包含了驱动的源代码和必要的构建工具,可以动态地编译适应当前系统内核的驱动模块。 安装步骤如下: 1. 使用`cd`命令进入包含deb文件的目录。 2. 执行`sudo dpkg -i broadcom-sta-dkms_...

    Linux下安装 Realtek R8125 驱动源码,(ver 05),Ubuntu 18.04.6安装时缺少的驱动文件

    这时,可以考虑重新编译驱动并将其添加到`dkms`管理,这样在内核升级时,驱动会自动重建。使用以下命令实现: ```bash sudo dkms add ./ # 添加驱动到dkms sudo dkms build -m r8125 -v 9.005.01 # 构建驱动 sudo ...

    RTL8152-RTL8153驱动源码

    4. **安装驱动**:使用`sudo make install`命令将编译好的驱动模块安装到系统目录。 5. **加载驱动**:最后,你可以通过`sudo insmod rtl8152.ko`或`sudo insmod rtl8153.ko`命令加载驱动。如果一切顺利,系统现在...

    VMware环境下Linux内核编译过程详细解析

    VMware 环境下 Linux 内核编译过程需要了解 Linux 内核编译过程和 VMware 环境的特点,需要选择正确的 SCSI 设备驱动程序和文件系统类型,解决常见错误,使用 initrd 等技术来帮助初始化根文件系统。

    deepin\ubuntu\debian\linux 水星无线网卡150uh 150ua等驱动

    这个软件包包含了Realtek RTL8812AU无线网卡的驱动,用于DKMS(Dynamic Kernel Module Support)框架,它能自动编译并加载模块以适应不同的内核版本。这意味着,只要系统装有DKMS,安装此DEB包就可以为水星150uh这类...

    LINUX编译及模块加载

    完成内核编译和模块安装后,你可以编写自己的内核模块。比如,LDD3(Linux Device Drivers 3rd)教程中给出的`hello.c`示例,展示了如何编写一个简单的模块。这个模块包含了`module_init`和`module_exit`函数,分别...

    linux离线安装gcc、make、build-essential、Realtek8125b网卡驱动.zip

    在Linux环境中,有时候我们需要在没有网络的情况下安装一些必要的开发工具和硬件驱动,这通常涉及到离线安装。本案例中,我们关注的是如何在Linux系统下离线安装GCC编译器、make工具、build-essential包以及Realtek ...

    debian reference 中文手册

    - **dselect**:`dselect`是一个菜单驱动的工具,用于选择要安装的软件包和执行系统升级。 - **不停机系统升级**:介绍如何在不重启系统的情况下进行系统升级。 - **下载和缓存.deb文件**:提供方法来下载.deb...

    linux下BCM43xx驱动安装方法

    本文将详细介绍如何在Linux环境下安装Broadcom BCM43xx系列无线网卡的驱动程序。 #### 支持的内核版本与限制 本方法适用于内核版本2.6.24以上的Linux发行版,部分Red Hat系统可能不适用。此外,该教程主要针对...

    debian定制.zip

    4. **编译和安装内核**:编译内核和模块,然后在目标硬件上安装。 5. **构建根文件系统**:收集和编译必要的系统库、工具和应用程序,创建适合目标系统的rootfs(根文件系统)。 6. **系统初始化脚本**:配置启动...

    rtl8188gu无线网卡驱动linux

    在某些情况下,可能还需要运行`sudo modprobe rtl8188gu`来加载驱动模块。 关于标签,"linux 文档资料 运维 服务器",这表明该驱动可能适用于Linux运维人员或服务器管理员,他们在处理采用RTL8188GU芯片的无线网卡...

    8812au无线网卡linux驱动

    4. 安装驱动:使用`sudo make install`命令将编译好的驱动模块安装到系统中。这一步通常会把驱动复制到/lib/modules/$(uname -r)/extra目录下,并更新模块依赖。 5. 加载驱动:重启系统或使用`sudo modprobe 8812au...

    基于cubieboard 从零搭建 debian

    3. **下载Debian基础系统**:创建一个新的目录`chroot-armhf`,并在该目录下使用`debootstrap`工具下载并安装Debian的基础系统。 #### 三、编译组件 完成环境准备工作后,接下来是编译各个组件。 1. **编译U-Boot*...

    RTL8822BE linux(ubuntu)驱动

    3. **编译驱动**:在解压后的目录下,使用`make`命令编译驱动源码。这个过程会生成.ko文件,这是Linux内核模块的编译结果。 4. **安装驱动**:使用`sudo make install`命令将编译好的驱动安装到系统中。这个过程...

    RTL8169驱动程序 for linux

    需要注意的是,有些Linux发行版可能有自己的机制来管理和加载驱动,比如Ubuntu和Debian有`dkms`(Dynamic Kernel Module Support),它可以自动编译并管理内核模块。如果你的系统已经安装了`dkms`,可以考虑使用它来...

Global site tag (gtag.js) - Google Analytics