ubuntu kylin 16.0
一、准备编译环境及源码
二、编译
三、开机调试
=======
毫无疑问地为了编译我们需要一个装有linux的设备,笔者使用的是乌班图虚拟机。
我们使用lede(似乎是openwrt的一个分支)的交叉编译链,网址如下:
buildsystem for the LEDE Linux distribution
把zip下载下来即可
然后下载njitclient-1.3的源码及makefile
njit8021xclient-1.3.tar.gz
Makefile-1.3.zip
在home目录下新建一个文件夹作为工作目录,假设名为openwrt。
将交叉编译链解压至该目录下,将njit-client的源码解压至交叉编译链的package文件夹内,再将下载的makefile-1.3解压至njit-clien的源码的文件夹内。
打开终端,部分小伙伴需要安装以下的包
sudo apt-get install gcc binutils bzip2 flex python perl make find grep diff unzip gawk getopt subversion libz-dev libc
将工作目录下的文件feeds.conf.default复制一份,并改名为feeds.conf 。
之后在终端输入如下命令:
sudo make menuconfig
此时会打开编译的配置页面,推荐先用默认设置编译一次后再进行修改来安装自己想安装的包(包括njit-client)。这里推荐各位在网速较好的地方进行编译,因为第一次编译需要下载大量的文件,网络差可能会导致编译过程非常漫长甚至出错。
需要修改的设置如下:
并且推荐安装luci界面
选第一项collect并“*”住luci
接着保存设置并退出。
在工作目录下输入如下命令:
sudo make V=s
V=s的意思是输出详细信息,对于debug非常重要(希望小伙伴一切顺利而用不上这点)
接着是漫长的等待过程,如果编译成功,会在工作目录的bin/targets/brcm2708/bcm2710目录内找到可以烧录的.img文件
将.img烧录进sd卡,开机并用串口调试。
vim /etc/config/network
将内容改为:
config interface 'loopback'
option ifname 'lo'
option proto 'static'
option ipaddr '127.0.0.1'
option netmask '255.0.0.0'
config globals 'globals'
option ula_prefix 'fd11:8629:b448::/48'
config interface 'lan'
option type 'bridge'
# option ifname 'eth0'
option proto 'static'
option ipaddr '192.168.1.1'
option netmask '255.255.255.0'
option ip6assign '60'
config interface wan
option proto dhcp
option ifname eth0
在此就不赘述vim的使用方法了,建议将option ipaddr ‘192.168.1.1’改为option ipaddr ‘192.168.2.1’这样即使接到其他路由器上也不会发生冲突。
PS:
“#”在shell中是注释,类似c的“//”
eth0是树莓派中openwrt的wan的位置
同理
vim /etc/config/wireless
将内容修改为:
config wifi-device radio0
option type mac80211
option channel 11
option hwmode 11g
option path 'platform/soc/3f300000.mmc/mmc_host/mmc1/mmc1:0001/mmc1:0001:1'
option htmode HT20
# REMOVE THIS LINE TO ENABLE WIFI:
# option disabled 0
config wifi-iface
option device radio0
option network lan
option mode ap
option ssid [yourname] #这里输入wifi名
option encryption psk2
option key [yourwifikey] #这里输入wifi密码
允许通过wan连接ssh
vim /etc/config/firewall
修改为:
#open ssh on wan interface
config rule
option src wan
option dest_port 22
option target ACCEPT
option proto
安装后可以通过浏览器访问路由
/etc/init.d/uhttpd start
/etc/init.d/uhttpd enable
将网线插入树莓派的网口,输入
njit-client [yourname] [yourkey] eth0
稍等片刻后就是愉快的通过校园网上网啦
vim /etc/init.d/ njitclient
内容为:
#!/bin/sh /etc/rc.common
START=99
start() {
njit-client [yourusername] [yourpassword] eth0 & #“&”是在后台运行的意思
}
stop() {
killall njit-client
killall udhcpc
}
之后输入命令
chmod +x /etc/init.d/njitclient #加上可执行属性
/etc/init.d/njitclient enable #开启开机自动运行
PS:并未用光tf卡的空间,可以通过gparted增大空间: