问题1:输入depmod后报如下错误
depmod: WARNING: could not open /lib/modules/4.1.15/modules.order: No such file or directory
depmod: WARNING: could not open /lib/modules/4.1.15/modules.builtin: No such file or directory
解决办法:modules.order和modules.builtin都可以从驱动生成的目录中复制到该地址中。
问题2:modprobe: FATAL: Module xxx.ko not found in directory /lib/modules/$(uname -r)
解决办法:
之后再执行指令 modprobe xxx(注意:这里不要有后缀.ko,不然会找不到,如:ko文件名是hello.ko,那么modprobe hello) 就可以了。
问题3:移植udhcpc的方法
参考文档:
基于嵌入式linux的DHCP服务器的搭建与移植(udhcp)_少林and叔叔的博客-CSDN博客
问题4:移植后使用udhcpc -i wlan0自动获取ip地址出现下面问题
/usr/share/udhcpc/sample.bound: 24: /usr/share/udhcpc/sample.bound: cannot create /etc/udhcpc/resolv.conf: Directory nonexistent
adding dns 192.168.207.7
/usr/share/udhcpc/sample.bound: 29: /usr/share/udhcpc/sample.bound: cannot create /etc/udhcpc/resolv.conf: Directory nonexistent
提示无法创建cannot create /etc/udhcpc/resolv.conf
解决办法:手动创建缺失文件
可能原因:因为是移植的,缺少了一些配置文件
问题4:移植后使用udhcpc -i wlan0自动获取ip地址出现下面问题
Adding router 192.168.207.7
/usr/share/udhcpc/default.script: 39: /usr/share/udhcpc/default.script: arithmetic expression: expecting primary: "metric++"
参考文档:https://www.cnblogs.com/huangcx6/p/15956200.html
原因是:
/examples/simple.script 文件移动到/usr/share/udhcpc/default.script ,如果没有目录就创建一个;并且给执行权限chmod 777 default.script,
出现如下报错
arithmetic expression: expecting primary: "metric++"
发现 Ubuntu 中/bin/sh链接默认指向的是dash shell,而服务器上指向的是bash shell。
dash是一个小巧的shell,他的功能自然也就没有bash强大,上述问题就是有与dash shell不支持++运算和let命令造成的。
解决办法:sudo ln -sf /bin/bash /bin/sh
最终执行sudo udhcpc -i wlan0
表示自动获取ip正常,添加路由正常,设置DNS服务器正常,使用ping测试一下联网:
联网成功 !
连接上了热点,但是ping不通外网(联网不成功)的原因:很有可能是udhcpc版本太低,没有自动配置DNS的功能,检查一下udhcpc的版本。