树莓派使用

树莓派使用

最近玩switch看到有个模拟joycon的项目,需要运行在带蓝牙的linux系统上,就把吃灰已久的树莓派3b+掏出来,重新弄上

系统

折腾过几个系统
第一个是官方系统,但是是32位,这个系统在使用例如mysql之类有点麻烦,所以放弃
第二个是Ubuntu server,这个使用跟普通pc没什么区别,但是有点问题的是他的wifi配置,一分钟之后就会自动关闭,查了半天google和stackflow都没解决,然后放弃
最后打算试试树莓派爱好者基地的64位系统,基于Debian Buster 10 Arm64构建,并且默认源为清华源,预装了docker等环境,比较友好

一、安装系统

1. 格式化SD卡

  • 读卡器插入SD卡
  • 格式化

2. 写入镜像

Github: github.com/openfans-community-offical/Debian-Pi-Aarch64
下载需要的版本
基础系统(无桌面基础版)

标准基础系统镜像,没有X-WINDOWS桌面环境。
**镜像名称:OPENFANS-Debian-Buster-Aarch64-XXXXXX.img

基础系统Plus++(无桌面加强版)

在标准基础系统之上,加入了可视化的WebUI管理界面支持。
**镜像名称:OPENFANS-Debian-Buster-Aarch64-XXXXXX-plus++.img

MacOS_Mojave主题定制桌面(全功能版)

在标准基础系统之上基于XFCE深度定制的树莓派爱好者基地的独家系统镜像,具备所有系统的全部功能!!
**镜像名称: OPENFANS-Debian-Buster-Desktop-Aarch64-XXXXXX.img

深度(Deepin)桌面

基于我们自己的基础系统镜像,移植了完整的深度Deepin 15.5专业版桌面,
这是目前第一个基于完整的Debian Aarch64架构而构建的适配于树莓派3B/3B+/3A/4B的64位深度ARM64镜像。
**镜像名称:OPENFANS-Deepin-Professional-Desktop-Aarch64-XXXXXX.img

固件升级包

一般命名规则方式为(以 "upkg" 开头):
upkg-xxxx(年)-xx(月)-xx(日)-vxxxx-x.x-zip/zip.xz

我是选择第二个版本,下载后用win32DiskImager写入到SD卡
image.png
点击write即可写入,等待写入完毕

3. wifi配置

打开/boot/wpa_supplicant.conf文件

## To use this file, you should run command "systemctl disable network-manager" and reboot system. 
## (Do not uncomment this line and above!) ##
## 除第一行外,第一行可以删除,去掉以下每行只有单个“#”的注释符号,两个“#”注释符号的行位说明内容,请不要修改
## 中文内容是注释,删除或不要取消前面的“#”符号

## country是设置无线的国家地区,CN是中国
country=CN
ctrl_interface=DIR=/var/run/wpa_supplicant GROUP=netdev
update_config=1

## 下面的 "WIFI 1" 、"WIFI 2" 代表多个无线网络的设置
## 除非你要设置多个无线网络,否则只需要设置 "WIFI 1" 这部分的设置即可
## WIFI 1 (Do not uncomment this line!)

## 除了取消需要生效的内容注释以外,以下仅需要修改 "ssid" 和 "psk" 后面引号内的内容即可
## ssid是你的无线Wifi名称,psk是你无线Wifi的密码
network={
    ssid="your-wifi1-ssid"
    psk="wifi1-password"
    priority=1
    id_str="wifi-1"
}
需要注意的是,country的设置,如果你的wifi是5g频段,那么需要将country设置为US,如果是2.4g频段,需要设置为CN

4. 开机以及连接

开机

将SD卡插入到树莓派中,连接电源即可开机,初次开机需要一段时间进行初始化,中间可能会重启两三次

连接

如果你使用的是外接显示器,那么直接看显示器的信息即可,如果没有显示器,那就使用ssh连接

  • 系统默认账户:pi
  • 默认密码:raspberry

也可以使用
raspberry IP:9090在浏览器访问

踩坑记录

当时我路由器开了ipv6支持,然后用ssh连接树莓派,每次连接成功后1分钟就会自动断开,无论有没有操作,后来查看日志如下:
image.png
发现无法连接,而地址正是ipv6的地址,因此将路由器的ipv6功能关闭后,能够正常使用不断开
后来查找原因,发现是家里宽带有ipv6的地址,但是好像不支持ipv6的访问,应该是光猫那里没有允许ipv6,只能等下次有时间找移动的人上门来重新设置一下,现在就只能关闭ipv6的功能

5. 配置

6. 内网穿透

服务器配置

详见
frp简单安装配置

客户端配置

打开frpc.ini

[common]
 server_addr = 对应的服务器IP
 server_port = 7000

 [ssh]
 type = tcp
 local_ip = 127.0.0.1
 local_port = 22
 remote_port = 6000

打开一个tmux

tmux new -s frpc

然后

./frpc -c ./frpc.ini

如果出现
image.png

chmod +x ./frpc
./frpc -c ./frpc.ini

运行成功
image.png
查看管理页面
image.png
之后就可以用公网服务器远程访问树莓派

开机自启

在/etc/systemd/system下添加frpc.service

[Unit]
Description=frpc daemon
After=syslog.target  network.target
Wants=network.target

[Service]
Type=simple
ExecStart=/home/pi/frpc_033_arm64/frpc -c /home/pi/frpc_033_arm64/frpc.ini #启动命令根据自己情况填写目录
Restart= always
RestartSec=1min
ExecStop=/usr/bin/killall frpc


[Install]
WantedBy=multi-user.target

相关命令

systemctl enable frpc #设置开机启动
systemctl start frpc #启动
systemctl stop frpc #停止
systemctl status frpc(frps) #状态