无法在 udev 事件上加载模块

无法在 udev 事件上加载模块

我有一个非常简单的 udev 规则,当 USB 插入我的 Debian 机器时就会执行该规则:

SUBSYSTEMS=="usb", KERNEL=="sd?", ACTION=="add", RUN+="/usr/local/bin/USB/t.sh \
%k"

我的t.sh也很简单,它做了两件事:

  • 将 helloworld 打印udev.out到桌面
  • 使用简单的方法将模块加载foo.ko到内核中insmod foo.ko

或者具体来说,t.sh是:

#!/bin/bash

echo 'Hello World!' >>"/home/salman/Desktop/udev.out"

insmod helloworld.ko

exit

当我插入 USB 时,udev.out桌面上正确打印了 ,但以下行insmod helloworld.ko无法在内核中加载模块。

我检查过了lsmod | grep helloworld,但它没有显示helloworld已加载到内核。

我正在 Virtual Box 中运行 Debian 机器。

相关内容