在启动期间删除和加载模块

在启动期间删除和加载模块

我在树莓派 4 上运行 Ubuntu Mate,这个内核编译似乎为鼠标设置了非常高的轮询率,使得像我正在使用的无线鼠标一样非常迟缓。

可以更改轮询速率,删除 usbhid 模块并以较低的轮询速率重新启动它:

sudo modprobe -r usbhid && sudo modprobe usbhid mousepoll=2

似乎解决了问题。

这当然在重新启动后不会持久,我想知道如何使其持久。/etc/modules似乎无法删除模块,我尝试添加一个

-r usbhid
usbhid mousepoll=2

到它,但它不起作用。有什么解决办法吗?在启动时正确加载模块会很棒,否则如何以超级用户权限自动运行上面的行而不询问我的密码就可以了。

谢谢。

答案1

尝试:

cat >> /etc/modprobe.d/usbhid.conf << "EOF"
options usbhid mousepoll=2
EOF

并且,如果适用的话:

update-initramfs -u -k all

...这个.conf文件应该在模块第一次加载时为您设置选项,并且是持久的。

另一种选择是在内核命令行中包含该设置:usbhid.mousepoll=2。您将需要更新grub(或其他引导加载程序)配置才能使其持续存在。

此外,加载模块后,这将(可能)动态改变轮询率:

echo 2 > /sys/module/usbhid/parameters/mousepoll

相关内容