标签: kernel-modules

蓝牙 - btusb - 如何用更新的模块版本替换模块版本

我已经预编译了内核 3.16.7,其中包含 btusb v0.6 模块;我想用位于内核 4.0 中的 btusb v0.7 替换当前的 btusb v0.6;所以我的问题是如何:

  • 从内核 3.16.7 中删除当前的 btusb 0.6
  • 从内核 4.0 中提取 btusb 0.7(编译它)
  • 将编译好的btusb 7.0插入到内核3.16.7中

编辑

lsusb 输出:

Bus 001 Device 004: ID 04ca:2006 Lite-On Technology Corp.
Run Code Online (Sandbox Code Playgroud)

Broadcom 设备 04ca 是相当新的,所以这可能是主要问题;

据我所知,它需要 btusb 模块版本>=0.7;所以我确实需要某种模块替换,因为我当前的预编译内核有 btusb 0.6;我真的不想处理整个内核源代码编译,而是想将 btusb 本地集成到我已经预编译的内核 v3.16.7 中

编辑

我的 $usb-devices 输出为:

T:  Bus=01 Lev=01 Prnt=01 Port=02 Cnt=01 Dev#= 11 Spd=12  MxCh= 0
D:  Ver= 2.00 Cls=ff(vend.) Sub=01 Prot=01 MxPS=64 #Cfgs=  1
P:  Vendor=04ca ProdID=2006 Rev=01.12 …
Run Code Online (Sandbox Code Playgroud)

linux kernel-modules bluetooth

4
推荐指数
1
解决办法
2万
查看次数

重新编译内核,不含当前未使用的模块

有没有一种巧妙的方法来剥离 Linux 内核以仅支持当前正在使用的设备。在 NVIDIA 抱怨 GCC 版本不匹配之后,我决定使用当前版本的 GCC 重新编译内核。现在,既然知道当前内核实际使用哪些模块,我可以自动生成一个.config为本机定制的文件吗?这样展位可以节省一些空间和时间。就像是

lsmod [options] | sed [a good regexp] > .config
Run Code Online (Sandbox Code Playgroud)

kernel-modules linux-kernel

4
推荐指数
1
解决办法
1936
查看次数

module-init 工具目录中的弱模块

我在module-init目录中看到名为weak-modules*.

bash # ls /usr/lib/module-init-tools/weak-modules*
/usr/lib/module-init-tools/weak-modules  /usr/lib/module-init-tools/weak-modules2
Run Code Online (Sandbox Code Playgroud)

到底是什么?以及什么时候使用它?我认为它是在初始化模块时使用的,因为它存在于module-init目录中。

kernel kernel-modules linux-kernel

4
推荐指数
1
解决办法
2481
查看次数

VirtualBox 内核模块安装问题

我安装了 VirtualBox,在第一次运行时我收到了这个警告:

警告:未加载 vboxdrv 内核模块。当前内核 (3.10.0-327.4.4.el7.x86_64) 没有可用的模块或无法加载。请重新编译内核模块并通过 sudo /sbin/rcvboxdrv setup 安装

启动此命令后,我得到:

须藤/sbin/rcvboxdrv

设置错误的参数设置

我尝试了另一种方法,即以下命令:

/etc/init.d/vboxdrv 设置

bash: /etc/init.d/vboxdrv: 没有那个文件或目录

我尝试的最后一种方法:

/usr/lib/virtualbox/boxdrv.sh 设置

停止 VirtualBox 内核模块 [OK]

卸载旧的 VirtualBox DKMS 内核模块 [OK]

删除旧的 VirtualBox pci 内核模块 [OK]

删除旧的 VirtualBox netadp 内核模块 [OK]

删除旧的 VirtualBox netflt 内核模块 [OK]

删除旧的 VirtualBox 内核模块 [OK]

尝试使用 DKMSdepmod 注册 VirtualBox 内核模块:......一些警告......[确定]

启动 VirtualBox 内核模块 [失败]

我可以尝试什么?

centos kernel-modules virtualbox

4
推荐指数
1
解决办法
7561
查看次数

如何针对自定义内核(Debian)进行编译?

有一个文件version.h/usr/include/linux。许多头文件都包含此文件并defines在其中使用ifdefs.

但是,当我编译自己的内核时,我看不到这如何在 eg 中正确反映 version.h

实际上这适用于所有与内核相关的头文件。AFAICS/usr/include/linux始终代表我的发行版附带的内核,而不是正在运行的内核,也不是我make通过SYSSRC.

过去,我求助于创建指向我自己的内核源代码的符号链接,但我觉得这不是正确的方法。

这应该如何工作?如何针对自定义内核进行编译(例如内核模块)?

linux compiling debian kernel-modules header-file

4
推荐指数
1
解决办法
2331
查看次数

Linux中非root用户触发内核模块加载的方式有哪些

一种方法是为某些协议创建侦听套接字,然后将加载该协议的模块。例如,DCCP 和 SCTP。

还有其他方法吗?

UPD:用例:AWS/Azure/ 中某处的虚拟机......攻击者获得了本地非特权用户 shell。非特权用户无法更改硬件。目前未加载的内核模块存在本地提权漏洞。他如何加载这个模块来使用它?

受最近 DCCP 协议内核模块中的漏洞启发的问题。

UPD2:根据 CVE-2017-2636,可以n_hdlc通过“为 tty 设备激活 HDLC”来加载内核模块(关于 CVE-2017-2636 的俄文文章)。所以还有其他方法,但没有人对这个问题感兴趣:(

kernel-modules not-root-user linux-kernel

4
推荐指数
1
解决办法
1133
查看次数

net.bridge.bridge-nf-call-iptables 的内核模块

这是在 Linux 操作系统上。

我发现在某些机器上,在过滤net.bridge.bridge-nf-call-iptables之前变量并不存在。我还看到有些机器加载了模块并且本身引入了这个变量。modprobebr_netfilterbridge

有没有办法知道我应该加载哪个模块才能获取特定变量?

linux kernel-modules modprobe sysctl kernel-parameters

4
推荐指数
1
解决办法
6146
查看次数

如何永久禁用内核模块?

所以我的新联想 ThinkPad 13 遇到了这个问题,它没有从暂停和休眠状态恢复。经过 2 天的故障排除后,我发现显然是一个名为 intel_lpss_pci 的模块导致了问题。当我禁用它时,一切正常。我也不确定它的用途是什么,因为没有它似乎一切都很好。

现在我的问题。如何永久禁用此模块?

我尝试了modprobe.blacklist=intel_lpss_pci似乎不起作用的内核参数,并且将其添加到/etc/modprobe.d/blacklist似乎也不起作用。

关于如何进行的任何想法?

kernel-modules modprobe

4
推荐指数
1
解决办法
1万
查看次数

在 linux 内核 4.13-rc2 及更高版本中找不到 nf_register_hook

我刚开始学习 netfilter 并且我正在尝试制作一个简单的 netfilter 模块,所有教程和 HOW TO 都使用nf_register_hook().

据我了解,该nf_register_hook()函数用于调用_nf_register_hook()进一步调用nf_register_net_hook()函数的函数,迭代net链表的每个成员,但后来我有点难以理解。

随着nf_register_hook()功能消失,我正在解决如何注册一个钩子。

nf_register_net_hook()功能仍然存在,但我不确定它是如何工作的。

所以我的问题归结为,

如何在 4.13-rc1 以上的内核中注册 netfilter 钩子?

linux kernel-modules linux-kernel netfilter

4
推荐指数
1
解决办法
4246
查看次数

添加或删除带有“modprobe”的模块后是否需要“update-initramfs -u”?

我在网上找到的关于在 Ubuntu 中添加或替换内核模块的大多数说明只提到modprobermmod. 但是,根据我的经验e1000e,除非我update-initramfs -u之后再做,否则在重新启动后会恢复修改。的man页面update-initramfs没有提到模块。

那么,update-initramfs -u如果我想在重新启动后拥有修改后的内核,是否总是需要在更换内核模块后运行?

ubuntu debian kernel-modules

4
推荐指数
1
解决办法
3万
查看次数