让linux下无线网卡变身随身wifi----前言--iw移植-Nazgul

2024-09-03 15:32

本文主要是介绍让linux下无线网卡变身随身wifi----前言--iw移植-Nazgul,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

最痛苦的事莫过于--上班
最最痛苦的事莫过于--上班有网不能上
最最最痛苦的事莫过于--上班有网能上却没有wifi
最最最最痛苦的事莫过于--你有无线网卡却没有U口可插
最最最最最痛苦的事莫过于--有U口插却发现U口只在开发板上
最最最最最最痛苦的事莫过于--开发板上有u口但是跑的是linux
最最最最最最最痛苦的事莫过于--linux能驱动网卡,但是如何共享出wifi来啊
于是,,,,为了不让以上这些人继续痛苦,我尝试着解救一下他们!!!!!阿弥陀佛,保佑成功!!

准备:
当我发现自己有一个s5pv210开发板,有一个ralink 150M的无线网卡(办公柜里面找到的的应该是N多年前前辈留下的),然后,还有人一个
本以为很快就可以解决这个问题,没有想到,弄了我整整2天2夜(有了这个文章,你半天就搞定了),涉及的东西也比较多,现在列出来先看看
iw ; openssl ; libnl;  hostapd ; iptables ;  udhcpd
还有内核支持配置(为了确保上面的东西能用,后面移植的时候会介绍到),没有linux内核源码的,慎重,喝喝。

动一次打一次,动一次打一次,地刺大慈,东磁大慈,悠悠岂可闹,let's go


第一步、检查你的网线网卡拥有够成为热点的能力
你是猴子请来的救兵吗?不是,我是iw
iw命令可以检测出你的网卡是否具有热点功能,但是iw没有在linux系统中自带,所以我们需要移植它
1、下载
到处找源码,最后在GIT中找到了
都说这里有,现在这个路径已经没有资源了http://linuxwireless.org/download/iw/iw-3.7.tar.bz2
可以在GIT中可以找到iw的源码
http://git.sipsolutions.net/iw.git/
通过GIT工具即可下载IW源码 (GIT工具的使用这里就不介绍了)
apt-get install git
git clone    http://git.sipsolutions.net/iw.git/
完成下载后得到iw目录
观看REDEME发现需要依赖另外一个库 libnl
http://www.infradead.org/~tgr/libnl/
这里可以下载,当时下载的最新版本3.2,结果出现了问题(后面会提到),可以下载1.1版本就行了
解压libnl并编译
tar zxvf libnl-3.2.24.tar.gz
./configure --prefix=/绝对路径 CC=arm-linux-gcc --host=arm
make
make install
生成的库将在上面指定的 /绝对路径 中出现 ,待会用于连接
2、编译iw
需要配置环境变量,因为前面的库在编译的时候需要连接
例如: export PKG_CONFIG_PATH=绝对路径/lib/pkgconfig:$PKG_CONFIG_PATH 
在iw解压好的目录下执行下面两条命令(注意export的路径要和你生成libnl库的路径一致)
export PKG_CONFIG_PATH=/home/edu/share/wifi/iw/nlinstall/lib/pkgconfig:$PKG_CONFIG_PATH
make CC=arm-linux-gcc
不需要make install的不出问题就完成事情了
如果编译不过 可以用root用户编译
通常是不会有问题的,但是我的出问题了
错误
CC info.o
info.c: In function 'print_phy_handler':
info.c:499: error: implicit declaration of function 'htole16'
make: *** [info.o] 错误 1
根据提示找到函数,发现我的系统中没有 htole16这个函数,我的libnl版本太高了,学过网络的知道这是大小端转换函数,直接使用thos()代替了里面的两个函数就可以了,当然也可以使用低版本对应的nl库(这个没有尝试)
3、将编译生成的iw文件,拷贝到开发板中就可以检查网卡是否支持热点了
./iw list (注意中间是空格)
如果提示找不到库,记得把libnl生成的库拷贝到开发板中/lib中来 记得加上cp -a参数
找到 对于网卡的模式提示
Supported interface modes:
* IBSS
* managed
* AP
* AP/VLAN
* WDS
* monitor
* mesh point
如果发现里面有AP选项,那么咱们进行下一步,如果没有,那么感觉淘一个吧,也就是运费的钱(小度的不要的干活,咱们没有驱动)!
      发现有AP选项的,哈哈,恭喜可以进行wifi热点共享了,咱们下一步走

移植过程中参考文献:http://blog.chinaunix.net/uid-22028680-id-3574122.html

这篇关于让linux下无线网卡变身随身wifi----前言--iw移植-Nazgul的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/1133355

相关文章

Linux下如何使用C++获取硬件信息

《Linux下如何使用C++获取硬件信息》这篇文章主要为大家详细介绍了如何使用C++实现获取CPU,主板,磁盘,BIOS信息等硬件信息,文中的示例代码讲解详细,感兴趣的小伙伴可以了解下... 目录方法获取CPU信息:读取"/proc/cpuinfo"文件获取磁盘信息:读取"/proc/diskstats"文

Linux内核参数配置与验证详细指南

《Linux内核参数配置与验证详细指南》在Linux系统运维和性能优化中,内核参数(sysctl)的配置至关重要,本文主要来聊聊如何配置与验证这些Linux内核参数,希望对大家有一定的帮助... 目录1. 引言2. 内核参数的作用3. 如何设置内核参数3.1 临时设置(重启失效)3.2 永久设置(重启仍生效

kali linux 无法登录root的问题及解决方法

《kalilinux无法登录root的问题及解决方法》:本文主要介绍kalilinux无法登录root的问题及解决方法,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,... 目录kali linux 无法登录root1、问题描述1.1、本地登录root1.2、ssh远程登录root2、

Linux ls命令操作详解

《Linuxls命令操作详解》通过ls命令,我们可以查看指定目录下的文件和子目录,并结合不同的选项获取详细的文件信息,如权限、大小、修改时间等,:本文主要介绍Linuxls命令详解,需要的朋友可... 目录1. 命令简介2. 命令的基本语法和用法2.1 语法格式2.2 使用示例2.2.1 列出当前目录下的文

Linux中的计划任务(crontab)使用方式

《Linux中的计划任务(crontab)使用方式》:本文主要介绍Linux中的计划任务(crontab)使用方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录一、前言1、linux的起源与发展2、什么是计划任务(crontab)二、crontab基础1、cro

Linux换行符的使用方法详解

《Linux换行符的使用方法详解》本文介绍了Linux中常用的换行符LF及其在文件中的表示,展示了如何使用sed命令替换换行符,并列举了与换行符处理相关的Linux命令,通过代码讲解的非常详细,需要的... 目录简介检测文件中的换行符使用 cat -A 查看换行符使用 od -c 检查字符换行符格式转换将

Linux系统配置NAT网络模式的详细步骤(附图文)

《Linux系统配置NAT网络模式的详细步骤(附图文)》本文详细指导如何在VMware环境下配置NAT网络模式,包括设置主机和虚拟机的IP地址、网关,以及针对Linux和Windows系统的具体步骤,... 目录一、配置NAT网络模式二、设置虚拟机交换机网关2.1 打开虚拟机2.2 管理员授权2.3 设置子

Linux系统中卸载与安装JDK的详细教程

《Linux系统中卸载与安装JDK的详细教程》本文详细介绍了如何在Linux系统中通过Xshell和Xftp工具连接与传输文件,然后进行JDK的安装与卸载,安装步骤包括连接Linux、传输JDK安装包... 目录1、卸载1.1 linux删除自带的JDK1.2 Linux上卸载自己安装的JDK2、安装2.1

Linux卸载自带jdk并安装新jdk版本的图文教程

《Linux卸载自带jdk并安装新jdk版本的图文教程》在Linux系统中,有时需要卸载预装的OpenJDK并安装特定版本的JDK,例如JDK1.8,所以本文给大家详细介绍了Linux卸载自带jdk并... 目录Ⅰ、卸载自带jdkⅡ、安装新版jdkⅠ、卸载自带jdk1、输入命令查看旧jdkrpm -qa

Linux samba共享慢的原因及解决方案

《Linuxsamba共享慢的原因及解决方案》:本文主要介绍Linuxsamba共享慢的原因及解决方案,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录linux samba共享慢原因及解决问题表现原因解决办法总结Linandroidux samba共享慢原因及解决