配置网络
这里以演示树莓派4B的板子为主,烧录的系统为ubuntu server 20.04 LTS 64位系统,个人电脑为Windows10
场景1 使用网线连接
没有显示屏,没有micro HDMI,通过WiFi共享局域网连接配置
准备一根网线
- 连接好树莓派电源,启动
- 使用自己的电脑连接好WiFi,使用网线一头连接树莓派板子一头连接自己的电脑
- 找到自己的WLAN适配器,右键【属性】,并在属性中勾选【共享】中的【允许其他网络用户通过此计算机的Internet连接来连接】(如果是Windows10 会需要选择共享的网卡为以太网也就是你网线连接的那块网卡)
- 共享成功后该网线连接的网卡默认为被修改为某个固定的ip地址(我这里是192.168.137.1)
- 此时可以看到板子上的网线口橘色灯和绿色灯变亮
- 下面开始找出板子使用的是137网段(以我的为例)的哪个ip地址,打开cmd,输入命令
arp -a | findstr dc-a6-32
(此处注意,不同的板子mac地址不一样,最新的板子为dc-a6-32,这个可以参考官网) - 找到之后就可以通过ssh连接了(默认账号密码为ubuntu/ubuntu)
注意:每次重启树莓派后都需要重新执行第3步操作
以上就是通过网线连接树莓派,然后ssh操作的过程了。如果你觉得不够方便,那么可以使用WiFi连接,在4B中是支持WiFi连接的。
场景2 使用多WiFi连接
直接跳过固定某一个WiFi,因为你经常切换到不同WiFi网络中时,你可以配置多个WiFi网络,让树莓派能自动连接到可用WiFi网络中。这里就要用到高大上的wpa_supplicant.conf了
由于ubuntu server 20.04并没有针对WiFi进行一些配置,所以需要我们手动去配置一下,由于这里需要用到/etc/network/interfaces文件,而此文件默认是没有的。所以我们需要按照以下步骤来干
- 通过场景一或者借助显示屏连接上树莓派
- 使用命令
ip addr
是可以看到wlan0这块网卡的,但是却没有ip地址 - ssh连接上树莓派后,第一件事先修改apt源为国内镜像源(当然有条件可以不这么干)
清华:https://mirrors.tuna.tsinghua.edu.cn/ubuntu-ports/
阿里:https://mirrors.aliyun.com/ubuntu-ports/
中国科技大学:http://mirrors.ustc.edu.cn/ubuntu-ports
- 备份源文件
sudo cp -r /etc/apt/sources.list ./etc/apt/sources.list.bak
- 将sources.list中的http://ports.ubuntu.com/ubuntu-ports替换为上述国内的任意一个
- 更新软件包
sudo apt update
sudo apt upgrade #可以不操作更新
- 安装ifconfig和ifupdown
sudo apt-get install net-tools
sudo apt-get install ifupdown
- 安装完毕后,开始配置WiFi(/etc/network/interfaces此配置文件已生成)
- 配置/etc/network/interfaces,添加以下内容
auto lo
iface lo inet loopback
auto eth0
iface eth0 inet dhcp
allow-hotplug wlan0
auto wlan0
iface wlan0 inet dhcp
pre-up wpa_supplicant -Dwext -i wlan0 -c /etc/wpa_supplicant/wpa_supplicant.conf -B
- 修改/etc/wpa_supplicant/wpa_supplicant.conf (注意network中的严格为tab缩进)
ctrl_interface=/var/run/wpa_supplicant
#ap_scan=1(默认为1,因此可以删掉)
network={
ssid="WiFi网络名称"
psk="WiFi密码"
priority=1
}
# 这里解释一下上述配置的含义
#1. 这个模式下总是先连接可见的WiFi,如果扫描完所有可见的网络之后都没有连接上,则开始连接隐藏WiFi。
#2. 会按照network定义的顺序连接WiFi网络,遇到隐藏的将立刻开始连接,因此在这个模式下连接顺序不受priority影响
# priority:连接优先级,越大越优先
# scan_ssid:连接隐藏WiFi时需要指定该值为1
- 配置完毕后启动wlan0网卡
ifup wlan0
即可
狭路相逢勇者胜!