如何从内核查找和重新加载特定驱动程序?

Jos*_*eph 7 wifi drivers kernel debian crunchbang

我正在使用带有 ASUS N150 无线适配器的 Crunchbang 64 位操作系统。每次我关闭笔记本电脑并进入睡眠模式时,当我“唤醒它”时,我无法使用无线适配器重新连接;我必须重新开始。

我的问题是:

  1. 有没有办法找到特定的驱动程序名称?我知道它是带有 Realtek 芯片组的 ASUS N150 适配器。

  2. 如何在不重置系统的情况下重新加载适配器的驱动程序?

  3. 如何通过终端(旁注)找到我当前的内核版本?

Nat*_*Coy 7

查找特定驱动程序名称的方法

  • lspci | grep -i network

我不确定该设备是在 PCI 还是 USB 总线上,但您可以尝试以下操作。

  1. 使用lsusblspci查找有关设备的信息
  2. 为相应的模块(“驱动程序”)查找该设备
  3. 确保模块被加载并可用lsmodmodprobe

另一个想法是使用lsmoddiff找出当您的笔记本电脑使用睡眠模式时哪些模块会丢失。出现问题的可能不止一个模块。

  1. 重启机器
  2. 确保 wifi 适配器正常工作
  3. 用于lsmod获取所有加载的模块

    lsmod > loaded-modules-before-sleep.txt
    
    Run Code Online (Sandbox Code Playgroud)
  4. 使计算机进入睡眠模式

  5. 唤醒机器
  6. 确保 wifi 适配器无法正常工作
  7. 用于lsmod获取所有加载的模块

    lsmod > loaded-modules-after-sleep.txt
    
    Run Code Online (Sandbox Code Playgroud)
  8. 使用 diff 查看发生了什么变化!

    diff loaded-modules-before-sleep.txt loaded-modules-after-sleep.txt
    
    Run Code Online (Sandbox Code Playgroud)

无需重置系统即可重新加载驱动程序

一旦知道要加载的模块,只需modprobe以 root 用户身份使用

  • modprobe wifi_module_name

通过终端查找当前内核版本

uname来救援!uname应该告诉你你想知道什么。

  • uname -a