安装模块的时候出现错误:modprobe: chdir(3.0.35-g6774ed9-dirty): No such file or directory.

内核模块没有安装正确。本文记录解决方法。

参考链接

http://linfengdu.blog.163.com/blog/static/1177107320132710370696/

问题描述

安装模块的时候出现错误。

root@freescale $ modprobe g_mass_storage.ko
modprobe: chdir(3.0.35-g6774ed9-dirty): No such file or directory

查看内核版本uname -r

root@freescale $ uname -r
3.0.35-g6774ed9-dirty

查看/lib/modules目录的模块安装位置:

root@freescale /lib/modules$ ls
3.0.35-2666-gbdde708

对应的目录名称与内核版本不对应。那么这个目录改怎么生成呢?

模块编译

在内核源码根目录进行,模块编译,可以选择编译所有模块或者编译指定目录中的模块。

  • 编译所有模块

make modules

  • 编译指定目录中的模块

make M=drivers/usb/gadget/ modules

安装模块

将模块安装到指定的路径。

  • 默认安装的路径

make modules_install

默认安装在/lib/modules/kernel-version/

kernel-version是所编译的内核的版本

例如我编译的内核源码版本是3.0.35-2666-gbdde708

  • 指定安装路径

make modules_install INSTALL_MOD_PATH=~/rootfs

指定到开发板的文件系统中或者打包放到文件系统中。

查看安装结果

指定安装目录之后生成的结果

查看生成的内容如下

Qt@Tony:cd /home/Qt/rootfs/lib/modules/3.0.35-g6774ed9-dirty
Qt@Tony:~/rootfs/lib/modules/3.0.35-g6774ed9-dirty$ ll
total 148
drwxrwxr-x 3 Qt Qt 4096 Dec 14 13:09 ./
drwxrwxr-x 3 Qt Qt 4096 Dec 14 13:09 ../
lrwxrwxrwx 1 Qt Qt 20 Dec 14 13:08 build -> /home/Qt/kernel/
drwxrwxr-x 6 Qt Qt 4096 Dec 14 13:08 kernel/
-rw-rw-r-- 1 Qt Qt 8582 Dec 14 13:08 modules.alias
-rw-rw-r-- 1 Qt Qt 8513 Dec 14 13:08 modules.alias.bin
-rw-rw-r-- 1 Qt Qt 12237 Dec 14 13:08 modules.builtin
-rw-rw-r-- 1 Qt Qt 15275 Dec 14 13:08 modules.builtin.bin
-rw-rw-r-- 1 Qt Qt 69 Dec 14 13:08 modules.ccwmap
-rw-rw-r-- 1 Qt Qt 2812 Dec 14 13:08 modules.dep
-rw-rw-r-- 1 Qt Qt 5438 Dec 14 13:08 modules.dep.bin
-rw-rw-r-- 1 Qt Qt 75 Dec 14 13:08 modules.devname
-rw-rw-r-- 1 Qt Qt 73 Dec 14 13:08 modules.ieee1394map
-rw-rw-r-- 1 Qt Qt 141 Dec 14 13:08 modules.inputmap
-rw-rw-r-- 1 Qt Qt 81 Dec 14 13:08 modules.isapnpmap
-rw-rw-r-- 1 Qt Qt 74 Dec 14 13:08 modules.ofmap
-rw-rw-r-- 1 Qt Qt 2139 Dec 14 13:08 modules.order
-rw-rw-r-- 1 Qt Qt 463 Dec 14 13:08 modules.pcimap
-rw-rw-r-- 1 Qt Qt 43 Dec 14 13:08 modules.seriomap
-rw-rw-r-- 1 Qt Qt 131 Dec 14 13:08 modules.softdep
-rw-rw-r-- 1 Qt Qt 9248 Dec 14 13:08 modules.symbols
-rw-rw-r-- 1 Qt Qt 11607 Dec 14 13:08 modules.symbols.bin
-rw-rw-r-- 1 Qt Qt 6886 Dec 14 13:08 modules.usbmap
lrwxrwxrwx 1 Qt Qt 20 Dec 14 13:08 source -> /home/Qt/kernel/

modules.dep 用于记录模块的依赖关系。

如果没有可以使用depmod命令生成(这一块没有验证)。

模块位于kernel目录

Qt@Tony:~/kernel/module_install/lib/modules/3.0.35-g6774ed9-dirty$ tree kernel/
kernel/
├── crypto
│ └── tcrypt.ko
├── drivers
│ ├── gpu
│ │ └── drm
│ │ ├── drm.ko
│ │ └── vivante
│ │ └── vivante.ko
│ ├── hid
│ │ ├── hid-a4tech.ko
│ │ ├── hid-apple.ko
│ │ ├── hid-belkin.ko
│ │ ├── hid-cherry.ko
│ │ ├── hid-chicony.ko
│ │ ├── hid-cypress.ko
│ │ ├── hid-ezkey.ko
│ │ ├── hid-gyration.ko
│ │ ├── hid-logitech.ko
│ │ ├── hid-microsoft.ko
│ │ ├── hid-monterey.ko
│ │ ├── hid-petalynx.ko
│ │ ├── hid-pl.ko
│ │ ├── hid-samsung.ko
│ │ ├── hid-sony.ko
│ │ └── hid-sunplus.ko
│ ├── i2c
│ │ └── algos
│ │ └── i2c-algo-bit.ko
│ ├── media
│ │ └── video
│ │ ├── gspca
│ │ │ └── gspca_main.ko
│ │ ├── mxc
│ │ │ └── capture
│ │ │ ├── adv7180_tvin.ko
│ │ │ ├── camera_sensor_clock.ko
│ │ │ ├── ipu_bg_overlay_sdc.ko
│ │ │ ├── ipu_csi_enc.ko
│ │ │ ├── ipu_fg_overlay_sdc.ko
│ │ │ ├── ipu_prp_enc.ko
│ │ │ ├── ipu_still.ko
│ │ │ ├── mxc_v4l2_capture.ko
│ │ │ ├── ov3640_camera.ko
│ │ │ ├── ov5640_camera.ko
│ │ │ ├── ov5640_camera_mipi.ko
│ │ │ ├── ov5642_camera.ko
│ │ │ └── ov8820_camera_mipi.ko
│ │ └── uvc
│ │ └── uvcvideo.ko
│ ├── misc
│ │ └── mxs-perfmon.ko
│ ├── mxc
│ │ └── mlb
│ │ └── mxc_mlb150.ko
│ ├── net
│ │ └── wireless
│ │ ├── ath
│ │ │ └── ath6kl
│ │ │ └── ath6kl.ko
│ │ ├── hostap
│ │ │ └── hostap.ko
│ │ ├── rtl8192ce
│ │ │ └── 8192ce.ko
│ │ └── rtl8723bs
│ │ └── 8723bs.ko
│ ├── scsi
│ │ └── scsi_wait_scan.ko
│ └── usb
│ └── gadget
│ ├── g_file_storage.ko
│ └── g_mass_storage.ko
├── fs
│ ├── autofs4
│ │ └── autofs4.ko
│ ├── configfs
│ │ └── configfs.ko
│ └── nls
│ ├── nls_ascii.ko
│ └── nls_utf8.ko
└── net
└── wireless
├── lib80211_crypt_ccmp.ko
├── lib80211_crypt_tkip.ko
└── lib80211_crypt_wep.ko
33 directories, 51 files

Tony Liu

2016-12-14, Shenzhen

Linux modules install的更多相关文章

  1. 安装SQL Server For Linux(Install SQL Server)

    SQL Server on Ubuntu——Ubuntu上的SQL Server(全截图) 1.      安装SQL Server 官网安装指南:https://docs.microsoft.com ...

  2. Swift 开源 Linux Ubuntu Install

    Swift 开源了,它现在变成跨平台的了,开源后的 Swift 不止能运行在 MAC 和 iOS 平台,现在也可以运行在 Linux 平台了.swift.org 网站上面提供了在 Linux 上面安装 ...

  3. 详解linux中install命令和cp命令的区别

    基本上,在Makefile里会用到install,其他地方会用cp命令. 它们完成同样的任务——拷贝文件,它们之间的区别主要如下: .最重要的一点,如果目标文件存在,cp会先清空文件后往里写入新文件, ...

  4. linux yum install

    作为一名新手,学习Linux已经一个月了,其间遇到了不少问题,而今天笔者遇到的问题是 #yum install pam-devel #This system is not registered to ...

  5. linux apt-get install 错误: Package has no installation candidate

    sudo apt-get install vim 在安装vim时报如下错误: Error accoured: This may mean that the package is missing, ha ...

  6. Linux MySql install and use with c++

    1.安装mysql客户端 用命令: yum install -y mysql-server mysql mysql-devel 此命令包含了安装客户端和服务器 2.访问myslq 在命令行输入: my ...

  7. linux OS install oracle database

    #!/bin/bash#Purpose:Create and config oracle install.#Usage:Log on as the superuser('root') #1.creat ...

  8. Linux Modules Introduction

    Modules are small kernel extensions ,that may be loaded and unloaded at will● Can implement drivers, ...

  9. linux jdk install and tomcat install

      1● linux安装jdk1.8 Download jdk1.8   export JAVA_HOME=/usr/java/jdk1.8.0_181 export JRE_HOME=${JAVA_ ...

随机推荐

  1. BZOJ3607 : 数据网络

    首先答案一定是包含直径某个端点的一个连通块里所有边权值之和,设直径为$AB$,以$A$和$B$分别为根进行处理. 首先按照最长路法则将这棵树进行树链剖分,那么每个叶子的贡献为它与它所在链顶端的点的距离 ...

  2. XCOJ 1103 (LCA+树链最大子段和)

    题目链接: http://xcacm.hfut.edu.cn/problem.php?id=1103 题目大意:链更新.链查询,求树链的最大子段和.(子段可以为空) 解题思路: 将所有Query离线存 ...

  3. hdu2553 N皇后问题

    N皇后问题 Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others)Total Submi ...

  4. BZOJ 1191 超级英雄 Hero 题解

    BZOJ 1191 超级英雄 Hero 题解 Description 现在电视台有一种节目叫做超级英雄,大概的流程就是每位选手到台上回答主持人的几个问题,然后根据回答问题的多少获得不同数目的奖品或奖金 ...

  5. Java_动态加载类(英文)

    It is possible to load and reload classes at runtime in Java, though it is not as straightforward as ...

  6. SpringMVC+Thymeleaf如何处理URL中的动态查询参数

    1.使用一个Map<String, String>接收数据 When you request a Map annotated with @RequestParam Spring creat ...

  7. Hbase1.0 客户端api

    最近在试用Hbase1.0的客户端API,发觉变化还是挺大(以前版本也不熟).到处都是deprecated. 现在应该是这样子: Configuration  conf = HBaseConfigur ...

  8. Go语言练习:网络编程实例——简易图片上传网站

    1.代码结构 2.运行实例 1.代码结构 $ tree . ├── photoweb.go ├── public │   ├── css │   ├── images │   └── js ├── u ...

  9. (转)C#/.NET主线程与子线程之间的关系

    一般 一个应用程序就对应一个进程,一个进程可有一个或多个线程,而一般有一个主线程.       有的博客上说“至少一个主线程”,这一说法持有怀疑         主线程与子线程之间的关系        ...

  10. Linux下rz命令使用的实例详解

    Linux中rz命令和sz命令都可用于文件传输,而rz命令主要用于文件的上传,下面将通过几个实例来给大家详细介绍下Linux下rz命令的用法,一起来学习下吧. rz命令可以批量上传文件,当然也可上传单 ...