驅動模組載入、解除安裝遇到的問題總結
阿新 • • 發佈:2019-01-05
1、rmmod: chdir(/lib/modules): No such file or directory 解決方法
1.建立 /lib/modules/$(uname -r) 空目錄就行了 2.使用如下原始碼生成rmmod命令,就可以沒有任何提示的解除安裝ko模組了[luther.gliethttp] #include <stdio.h> #include <stdlib.h> #include <unistd.h> #include <fcntl.h> #include <string.h> #include <errno.h> int main(int argc, char *argv[]) { const char *modname = argv[1]; int ret = -1; int maxtry = 10; while (maxtry-- > 0) { ret = delete_module(modname, O_NONBLOCK | O_EXCL);//系統呼叫sys_delete_module if (ret < 0 && errno == EAGAIN) usleep(500000); else break; } if (ret != 0) printf("Unable to unload driver module /"%s/": %s/n", modname, strerror(errno)); } 3.把生成的命令複製到檔案系統 # arm-linux-gcc -static -o rmmod rmmod.c # arm-linux-strip -s rmmod # cp rmmod /nfs/