树莓派/linux 功能配置(含网络)不定期更新

最新的树莓派4B使用 Debian 10 Buster发行版本。一些基本的网络相关使用记录。不定期更新。


前面博客 树莓派 gpio / 串口通信 记录了基本的串口修改配置,GPIO等库的使用。

0、网线网卡的配置

默认是启用了wlan,初次使用可以通过sudo raspi-config添加无线连接。
若不能开启 可以使用如下命令操作
启用wifirfkill unblock wifi
激活网卡sudo ifconfig wlan0 up
扫描wifisudo iwlist wlan0 scan

添加无线连接名称及密码,修改/etc/wpa_supplicant/wpa_supplicant.conf文件,例如内容如下,多个wifi配置多个network即可。

ctrl_interface=DIR=/var/run/wpa_supplicant GROUP=netdev
update_config=1
country=CN

network={
        ssid="TP-LINK_89CA"
        psk="greatwall223"
        scan_ssid=1               #  当无线路由器设置ssid隐藏时增加
}

静态ip配置,修改/etc/dhcpcd.conf文件,如下:

interface eth0
static ip_address=192.168.0.4/24
static routers=192.168.0.254
static domain_name_servers=192.168.0.254 8.8.8.8

1、关闭蓝牙和wifi

/boot/config.txt 最后添加

dtoverlay=disable-bt
dtoverlay=disable-wifi

2、关闭ipv6功能

在文件 /etc/sysctl.conf 中添加

net.ipv6.conf.all.disable_ipv6 = 1 
net.ipv6.conf.default.disable_ipv6 = 1 
net.ipv6.conf.lo.disable_ipv6 = 1 

3、route路由添加

树莓派网络正常使用动态ip,接入到路由器后能正常获取ip地址,并且能设置route路由。

但是使用网线直连某些设备,树莓派虽然能配置ip成功,但是多数情况不能ping成功设备。使用 route -n 查看所有的路由情况,发现系统没有配置有线网络设备的路由项。

在系统配置route异常情况下。正常启动树莓派,不断查看route路由,显示条目在0条与以下2条中间切换。

Destination  Gateway     Genmask       Flags Metric Ref   Use Iface  
default      0.0.0.0.0   0.0.0.0       U     0      202     0  eth0 
linklocal    0.0.0.0     255.255.0.0   U     0      202     0  eth0

实际上,是需要出现一条如下条目

Destination  Gateway     Genmask       Flags Metric Ref   Use Iface  
192.168.0.0  0.0.0.0     255.255.0.0   U     0      0     0    eth0

手动执行 sudo route add -net 192.168.0.0/16 eth0 就一切正常了。但是重启之后就失败。

在文件 /etc/rc.localexit 0 前添加 上述命令,重启仍然发现失败。但是后续手动是成功的,中间配置可能存在依赖,因此添加延时再执行命令处理,避免阻塞,让其进入后台执行。修改脚本,添加如下命令

# /etc/rc.local
...

(
sleep 15
route add -net 192.168.0.0/16 eth0
) &

exit 0

在系统启动之后15s,再添加路由,目前是可行的。 需要多次测试,是否100%成功…

完全相同两个路由也是可以的。


20210611 添加永久路由方式

Debian/Ubuntu linux 配置永久路由方式一致,修改/etc/network/interfaces 配置文件。树莓派静态ip配置可在该文件中设置,也可以在/etc/dhcpcd.conf中设置。

这里给出同时配置静态ip和永久静态路由的方式,如

auto eth0
iface eth0 inet static
address 192.168.1.2
netmask 255.255.255.0
gateway 192.168.1.254
up route add -net 192.168.2.0 netmask 255.255.255.0 gw 192.168.2.1

4、时区设置

以修改东八时区,Asia/Shanghai为例。

树莓派自带的 sudo raspi-config 可以直接设置 ‘5 Localisation Options’ -> ‘L2 Timezone’ -> ‘Asia’ -> ‘Shanghai’ ,确认Ok即可。以下为默认选过shanghai时区的结果。

pi@raspberrypi:~ $ sudo raspi-config

Current default time zone: 'Asia/Shanghai'
Local time is now:      Wed Apr 20 16:03:37 CST 2022.
Universal Time is now:  Wed Apr 20 08:03:37 UTC 2022.

再没有界面操作,例如做系统后修改文件的方式,可以执行命令
sudo ln -sf /usr/share/zoneinfo/Asia/Shanghai /etc/localtime
查看时间即可正确,重启一有效。

pi@raspberrypi:~ $ date
Wed 20 Apr 09:06:17 BST 2022
pi@raspberrypi:~ $ sudo ln -sf /usr/share/zoneinfo/Asia/Shanghai /etc/localtime
pi@raspberrypi:~ $ date
Wed 20 Apr 16:06:24 CST 2022

5、开启64位系统

2022年9月22号,树莓派官方直接给出了64位操作系统,兼容3B、3B+、3A+、4、400、CM3、CM3+、CM4、Zero 2
W,使用Debian 11 (bullseye),Kernel 5.15。需要尝试的走链接
https://www.raspberrypi.com/software/operating-systems/#raspberry-pi-os-64-bit。

树莓派从3带开始(包含Raspberry Pi 3, 3+, 4, 400, Zero 2 W and 2B rev 1.2,以及 Raspberry Pi Compute Modules 3, 3+ and 4),支持安装64位系统。使用工具在tf卡刷入官方系统后,默认是32位(armv7l架构)的系统,查看信息如下

pi@raspberrypi:~$ uname -a
Linux raspberrypi 4.19.118-v7l+ #1311 SMP Mon Apr 27 14:26:42 BST 2020 armv7l GNU/Linux

pi@raspberrypi:~$ getconf LONG_BIT
32

接着,我们开启64位功能。 检查在树莓派4系统中存在 /boot/kernel8.img 文件,如果没有就 rpi-update。确认存在 kernel8.img 文件后,我们就可以开启armv8(64位)了。

配置方式:在 /boot/config.txt 文件中添加 arm_64bit=1

重启重新查看系统信息,内核从v7l(armhf)变成了v8(aarch64),成功。

pi@raspberrypi:~$ uname -a
Linux raspberrypi 4.19.118-v8+ #1311 SMP Mon Apr 27 14:26:42 BST 2020 aarch64 GNU/Linux

pi@raspberrypi:~$ getconf LONG_BIT
64
  • 2
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

aworkholic

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值