前言及准备

本笔记适用于第一次给树莓派刷openwrt系统的玩家,对刷机过程及注意事项进行了记录,刷机之后对openwrt进行一些简单配置。

使用openwrt源码制作固件需要花费一点时间。

平台环境

编译主机:Ubuntu 16.04

目标机:树莓派3B+

1.sd卡系统备份

刷机之前对之前系统进行备份。

tf卡通过USB读卡器连接到PC,在虚拟机ubuntu上连接 MXT USB device;

然后查看磁盘挂载就可以看到存储卡

df -h

我们可以看到 /dev/sdb1 /dev/sdb2 这两个分区(boot分区和文件系统分区)

接下来我们通过指令备份系统,时间比较长耐心等待。

sudo dd if=/dev/sdb | gzip>/home/wangh/Tools/wh_raspi.gz

2.openwrt系统镜像制作

2.1源码编译

上节源码编译生成的img固件(国内网络环境实测需要6小时以上)。

2.2直接下载编译好的固件

官网有 Stable Release 和 Development Snapshots

这里选用 Snapshots版(没有luci),Stable Release(没有网卡驱动);

为了方便使用 Snapshots 版,到时直接在线安装 luci 即可;

rpi-3-ext4-factory.img.gz

2.3 openwrt烧写

上章制作的镜像通过 Win32DiskImager 工具烧写到sd卡,使用之前使用 SDFormatter 对sd卡进行格式化。

openwrt-brcm2708-bcm2710-rpi-3-ext4-factory.img

2.4 openwrt初步配置

2.3.1 WiFi网络配置

# 新增wifi账号配置文件
vim /etc/wpa_supplicant.conf

# 输入以下内容
ctrl_interface=/var/run/wpa_supplicant-phy0
ap_scan=1

network={
    ssid="502_5G"           # 这是AP的名字
    psk="cly6652413"        # 这是AP的密码
}

openwrt系统的wifi配置信息保存在目录/etc/config/wireless下

wireless配置:

vim /etc/config/wireless

设置如下(默认无线网卡没有使能,这里 disabled 为 0即可)

config wifi-device 'radio0'
        option type 'mac80211'
        option channel '36'
        option hwmode '11a'
        option path 'platform/soc/3f300000.mmcnr/mmc_host/mmc1/mmc1:0001/mmc1:0001:1'
        option htmode 'VHT80'
        option disabled '0'

config wifi-iface 'default_radio0'
        option device 'radio0'
        option network 'lan'
        option mode 'ap'
        option ssid 'OpenWrt'
        option encryption 'none'

解释:

config wifi-device 'radio0'     #wifi驱动
        option type 'mac80211'
        option channel '36'
        option hwmode '11a'
        option path 'platform/soc/3f300000.mmcnr/mmc_host/mmc1/mmc1:0001/mmc1:0001:1'
        option htmode 'VHT80'
        option disabled '0'

config wifi-iface 'default_radio0'
        option device 'radio0'
        option network 'lan'
        option mode 'ap'          #ap模式提供无线接入
        option ssid 'OpenWrt'     #wifi名称
        #option encryption 'none' #无安全密码
        option encryption 'psk2'  #wifi安全验证
        option key '12345678'     #WiFi密码
        

network配置:

vim /etc/config/wireless
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 'fdcd:f1d4:17a8::/48'

config interface 'lan'
        #option type 'bridge'
        option ifname 'wlan0'
        option proto 'static'
        option ipaddr '192.168.2.1'
        option netmask '255.255.255.0'
        option ip6assign '60'

config interface 'wan'
        option proto 'dhcp'
        option ifname 'eth0'
12-21 03:13