树莓派的环境配置

文章目录

树莓派的环境配置1.系统烧录1.1 系统选择1.1.1 Raspbian OS:官方的树莓派操作系统1.1.2 Ubuntu MATE:适合通用计算需求1.1.3 Ubuntu Server:把树莓派作为一台 Linux 服务器来使用1.1.4 LibreELEC:适合做媒体服务器1.1.5 OSMC:适合做媒体服务器1.1.6 RISC OS:最初的 ARM 操作系统1.1.7 Mozilla WebThings Gateway:适合 IoT 项目1.1.8 Kali Linux:适合低成本渗透1.1.9 OpenMediaVault:适合网络附加存储(NAS)1.1.10 ROKOS:适合加密挖矿

1.2 烧录系统1.2.1 烧录工具1.2.2 系统选择1.2.3 烧录系统1.2.4 开机测试

2.基础配置2.1更换镜像源2.1.1查看源版本2.1.2 更换镜像源2.1.3 更新镜像源

2.2 网络自连2.2.1 有密码2.2.2 无密码

3.开机连接3.1 HDMI有线连接3.2 VNC远程连接3.2.1 开启VNC服务器3.2.2 下载VNC查看器3.2.3 VNC连接

4.文件传输4.1 U盘传输4.2 VNC传输4.2.1 VNC自启4.2.2 上传下载

4.3 QQ传输

5.软件安装5.1 Scim输入法5.2 Pycharm5.2.1 下载Pycharm5.2.2 解压安装5.2.3 运行Pycharm5.2.4 创建快捷方式

6.运行环境6.1 Pytorch6.1.1 下载6.1.2 安装6.1.3 测试

6.2 Torchvison6.2.1 下载6.2.2 安装6.2.3 测试

6.3 Requestment6.3.1 下载6.3.2 安装6.3.3 测试

7.测试运行7.1 解压项目7.2 测试运行

参考文献

探索目标

树莓派的系统烧录 树莓派的基础配置 树莓派的开机连接 树莓派的文件传输 树莓派的软件安装 树莓派的运行环境 树莓派的系统备份 测试运行现有模型

1.系统烧录

1.1 系统选择

1.1.1 Raspbian OS:官方的树莓派操作系统

​ Raspbian OS 是官方支持的树莓派板卡操作系统。它集成了很多工具,用于教育、编程以及其他广泛的用途。具体来说,它包含了 Python、Scratch、Sonic Pi、Java 和其他一些重要的包。

​ 最初,Raspbian OS 是基于 Debian 的,并预装了大量有用的包。因此,当你安装 Raspbian OS 后,你可能就不需要特意安装基本工具了 — 你会发现大部分工具已经提前安装好了。

​ Raspbian OS 是被积极地维护着的,它也是最流行的树莓派操作系统之一。你可以使用 NOOBS 或参照官方文档来安装它。

Raspbian OS

1.1.2 Ubuntu MATE:适合通用计算需求

​ 尽管 Raspbian 是官方支持的操作系统,但它的特点不是最新、最大的软件包。因此,如果你想更快的更新,想用最新的包,你可以试试 Ubuntu MATE 的树莓派版本。

​ Ubuntu MATE 的树莓派定制版是值得安装的非常不错的轻量级发行版。它还被广泛用于 NVIDIA 的 Jetson Nano。换言之,你可以在树莓派的很多场景下使用它。

​ 为了更好地帮助你,我们还有一份详细的教程:怎样在树莓派上安装 Ubuntu MATE。

Ubuntu MATE for Raspberry Pi

1.1.3 Ubuntu Server:把树莓派作为一台 Linux 服务器来使用

​ 如果你计划把你的树莓派当作项目的某个服务器来使用,那么安装 Ubuntu Server 会是一个不错的选择。

​ Ubuntu Server 有 32 位和 64 位的镜像。你可以根据你的板卡类型(是否支持 64 位)来选择对应的操作系统。

​ 然而,值得注意的一点是 Ubuntu Server 不是为桌面用户定制的。因此,你需要留意 Ubuntu Server 默认不会安装图形用户界面。

Ubuntu Server

1.1.4 LibreELEC:适合做媒体服务器

​ 我们已经有一个 Linux 下可用的媒体服务器软件,LibreELEC 在列表中。

​ 它是一个很棒的轻量级操作系统,让你可以在树莓派上安装 KODI。你可以尝试使用树莓派镜像工具来安装它。

​ 你可以很容易地找到他们的官方下载页面,并找到适合你板卡的安装镜像。

LibreELEC

1.1.5 OSMC:适合做媒体服务器

​ OSMC 是另一个 Linux 下流行的媒体服务器软件。如果要把树莓派板作为媒体中心设备,那么 OSMC 是你可以向他人推荐的操作系统之一。

​ 类似 LibreELEC,OSMC 也运行 KODI,可以帮助你管理你的媒体文件和欣赏你已有的素材。

OSMC 没有正式提及对树莓派 4 的支持。因此,如果你的树莓派是树莓派 3 或更早的版本,那么应该没有问题。

OSMC

1.1.6 RISC OS:最初的 ARM 操作系统

​ RISC OS 最初是为 ARM 设备打造的,至今已有近 30 年左右的历史。

​ 如果你想了解,我们也有篇详细介绍 RISC OS 的文章。简而言之,RISC OS 也是为诸如树莓派的现代基于 ARM 的单板计算机定制的。它的用户界面很简单,更专注于性能。

​ 同样的,这并不是为树莓派 4 量身定做的。因此,如果你的树莓派是 3 或更早的版本,你可以试一下。

RISC OS

1.1.7 Mozilla WebThings Gateway:适合 IoT 项目

​ 作为 Mozilla 的 IoT 设备的开源实现的一部分,WebThings Gateway 让你可以监控和控制所有连接的 IoT 设备。

​ 你可以参考官方文档来检查所需的环境,遵照指导把安装到树莓派上。它确实是适合 IoT 应用的最有用的树莓派操作系统之一。

WebThings Gateway

1.1.8 Kali Linux:适合低成本渗透

​ 想要在你的树莓派上尝试和学习一些道德黑客技巧吗?Kali Linux 会是最佳选择。是的,Kali Linux 通常在最新的树莓派一发布就会支持它。

​ Kali Linux 不仅适合树莓派,它也支持很多其他设备。尝试一下,玩得愉快!

Kali Linux

1.1.9 OpenMediaVault:适合网络附加存储(NAS)

​ 如果你想在极简的硬件上搭建 NAS 解决方案,树莓派可以帮助你。

​ OpenMediaVault 最初是基于 Debian Linux 的,提供了大量功能,如基于 Web 的管理能力、插件支持,等等。它支持大多数树莓派型号,因此你可以尝试下载并安装它!

OpenMediaVault

1.1.10 ROKOS:适合加密挖矿

​ 如果你对加密货币和比特币很感兴趣,那么 ROKOS 会吸引你。

​ ROKOS 是基于 Debian 的操作系统,基本上可以让你把你的树莓派变成一个节点,同时预装了相应的驱动程序和软件包。当然,在安装之前你需要了解它是怎么工作的。因此,如果你对此不太了解,我建议你先调研下。

ROKOS

1.2 烧录系统

1.2.1 烧录工具

下载:烧录工具版本选择按照下载设备的操作系统选择。

Raspberry Pi OS官网下载

1.2.2 系统选择

​ 系统:选择的系统是Raspberry Pi OS(64-bit)由于我们选择树莓派4B 8G版本选择64位的系统能够更好的发挥树莓派的性能。

​ 虽然 Raspberry Pi 3 具有 64 位 Cortex CPU 内核,甚至 Raspberry Pi Zero 2 也支持 64 位,但作为 Raspberry Pi 官方操作系统的 Raspbian OS 仍然是 32 位的系统。终于在 2022 年,Raspbian OS 推出了正式的 64 位版本。

​ 这款 64 位 Raspberry Pi 操作系统在过去一年中进行了测试,现在确定其状态良好,可供客户在较新的 Raspberry Pi 板上使用,作为其 32 位版本的替代品。

​ 之所以开发 64 位的 Raspbian OS,兼容性是一个关键问题:许多闭源应用程序仅适用于 arm64,而开源应用程序并未针对 armhf 端口进行完全优化。

​ 除此之外,A64 指令集还有一些内在的性能优势,32 位指针只允许寻址 4GB 的内存。但在 Raspberry Pi 4 上需要使用 ARM 大型物理地址扩展 (LPAE) 来访问高达 8GB 的内存,因此 64 位系统的寻址能力,为那些需要消耗大量内存的单进程应用提供更好的性能。

​ 更多内容可在树莓派官方博客查看。

1.2.3 烧录系统

镜像文件默认设置

烧录完成!

1.2.4 开机测试

树莓派成品

开机成功!

2.基础配置

2.1更换镜像源

2.1.1查看源版本

查看清华源选择源的版本

[清华源官网](raspbian | 镜像站使用帮助 | 清华大学开源软件镜像站 | Tsinghua Open Source Mirror)

cat /etc/os-release

​ 从红色框信息我们可以看出清华源的版本应该选bullseye11,如果你是stretch,buster版本,想要更换清华源,可以参考这篇文章,博主这边就不一一赘述了

树莓派换源教程

2.1.2 更换镜像源

在命令行中输入该命令。

sudo nano /etc/apt/sources.list

将原有的所有原始源前面都加个#注释掉换成下列清华源。

# 默认注释了源码镜像以提高 apt update 速度,如有需要可自行取消注释

deb https://mirrors.tuna.tsinghua.edu.cn/debian/ bullseye main contrib non-free

# deb-src https://mirrors.tuna.tsinghua.edu.cn/debian/ bullseye main contrib non-free

deb https://mirrors.tuna.tsinghua.edu.cn/debian/ bullseye-updates main contrib non-free

# deb-src https://mirrors.tuna.tsinghua.edu.cn/debian/ bullseye-updates main contrib non-free

deb https://mirrors.tuna.tsinghua.edu.cn/debian/ bullseye-backports main contrib non-free

# deb-src https://mirrors.tuna.tsinghua.edu.cn/debian/ bullseye-backports main contrib non-free

deb https://mirrors.tuna.tsinghua.edu.cn/debian-security bullseye-security main contrib non-free

# deb-src https://mirrors.tuna.tsinghua.edu.cn/debian-security bullseye-security main contrib non-free

改完按ctrl+s保存,ctrl+x退出。

更换后修改配置文件。

sudo nano /etc/apt/sources.list.d/raspi.list

也是将原有的东西都注释掉,加上以下内容。

deb http://mirrors.tuna.tsinghua.edu.cn/raspberrypi/ bullseye main

2.1.3 更新镜像源

换完源之后记得要更新源,输入命令进行更新。

sudo apt update

显示以上内容说明换源成功。

2.2 网络自连

​ 用户可以在未启动树莓派的状态下单独修改 /boot/wpa_supplicant.conf 文件配置 WiFi 的 SSID 和密码,这样树莓派启动后会自行读取 wpa_supplicant.conf 配置文件连接 WiFi 设备。

​ 操作方法:将刷好 Raspbian 系统的 SD 卡用电脑读取。在 boot 分区,也就是树莓派的 /boot 目录下新建 wpa_supplicant.conf 文件,按照下面的参考格式填入内容并保存 wpa_supplicant.conf 文件。

2.2.1 有密码

country=CN

ctrl_interface=DIR=/var/run/wpa_supplicant GROUP=netdev

update_config=1

network={

ssid="WiFi-A"

psk="12345678"

key_mgmt=WPA-PSK

priority=1

}

network={

ssid="WiFi-B"

psk="12345678"

key_mgmt=WPA-PSK

priority=2

scan_ssid=1

}

说明以及不同安全性的 WiFi 配置示例:

#ssid:网络的ssid

#psk:密码

#priority:连接优先级,数字越大优先级越高(不可以是负数)

#scan_ssid:连接隐藏WiFi时需要指定该值为1

2.2.2 无密码

如果你的 WiFi 没有密码

network={ssid="你的无线网络名称(ssid)"key_mgmt=NONE}

如果你的 WiFi 使用WEP加密

network={ssid="你的无线网络名称(ssid)"key_mgmt=NONE wep_key0="你的wifi密码"``}

如果你的 WiFi 使用WPA/WPA2加密

network={ssid="你的无线网络名称(ssid)"key_mgmt=WPA-PSK psk="你的wifi密码"``}

如果你不清楚 WiFi 的加密模式,可以在安卓手机上用 root explorer 打开 /data/misc/wifi/wpa/wpa_supplicant.conf,查看 WiFi 的信息。

3.开机连接

3.1 HDMI有线连接

树莓派上有HDMI线的接口通过HDMI线就可以轻松的让树莓派连接到各种显示屏上。

3.2 VNC远程连接

3.2.1 开启VNC服务器

在树莓派中的菜单栏中可找到Raspberry Pi Configuration。

修改树莓派配置,输入以下命令进去树莓派配置界面。

sudo raspi-config

选择第三个Interface Options按回车进入。

依旧选择第三个vnc回车进入。

回车同意开启VNCserver。

3.2.2 下载VNC查看器

进入官网点击product找到VNC connect 然后注册登录下载

VNC官网VNC Connect(Windows)

3.2.3 VNC连接

在树莓派的命令行中输入以下命令开启服务获得IP地址然后在笔记本的VNC查看器中连接树莓派。

vncserver

将IP地址输入电脑端的VNCviewer.

连接成功!

​ 注意:这里的连接地址如果加了:1则树莓派的状态栏会显示不出来所以不建议使用的,上图就是无状态栏的效果图

4.文件传输

4.1 U盘传输

笔记本和树莓派都有USB接口可以通过U盘进行文件的传输。

4.2 VNC传输

4.2.1 VNC自启

​ VNC都要先在树莓派上打开VNCserver,要不然就有可能无法正常的使用VNCviewer连接树莓派,这样太麻烦了,可以将VNCserver设置为开机自启。

首先编辑vncserver文件。

打开终端窗口,输入命令。

sudo nano /etc/init.d/vncserver

将如下代码写入到配置信息中。

#!/bin/sh

### BEGIN INIT INFO

# Provides: vncserver

# Required-Start: $local_fs

# Required-Stop: $local_fs

# Default-Start: 2 3 4 5

# Default-Stop: 0 1 6

# Short-Description: Start/stop vncserver

### END INIT INFO

export USER='pi' #用户名 pi

eval cd ~$USER

case "$1" in

start)

# 启动命令行。此处自定义分辨率、控制台号码或其它参数。

su $USER -c '/usr/bin/vncserver -depth 24 -geometry 1024x768 :1'

echo "Starting VNCServer for $USER "

;;

stop)

su $USER -c '/usr/bin/vncserver -kill :1'

echo "VNCServer stopped"

;;

*)

echo "Usage: /etc/init.d/vncserver {start|stop}"

exit 1

;;

esac

exit 0

按下ctrl+s保存文件,在按下再按ctrl+x退出当前编辑界面。

然后我们将这个文件加上权限,输入命令。

sudo chmod 755 /etc/init.d/vncserver

加完权限之后就可以将它设置为开机自启。

输入命令。

sudo update-rc.d vncserver defaults

最后我们让树莓派重启一下。

输入命令:

sudo reboot

你会发现你的远程控制页面没了,重新连接一下就行了。

等待树莓派重启完成,我们的VNCserver就已经开机自启了。

4.2.2 上传下载

通过VNC可以让笔记本和树莓派间轻松的进行文件传输

上传

下载

4.3 QQ传输

在树莓派自带的谷歌浏览器中搜索Linux版的QQ

linuxQQ

由于树莓派是ARM架构的所以我选择arm64版下载.deb文件

安装成功后,就可以正常登录QQ进行使用了

5.软件安装

5.1 Scim输入法

输入以下命令安装输入法

sudo apt-get install scim-pinyin

安装后重启使用

sudo reboot

5.2 Pycharm

5.2.1 下载Pycharm

官网下载社区版的pycharm(需arm64架构的安装包)这边建议在笔记本上下载好安装包再通过VNC传到树莓派上。

Pycharm官网

5.2.2 解压安装

到下载压缩包的目录下将压缩包解压,由于pycharm的版本会不断地更新,所以下面命令用到的压缩包名要根据你下载的包名来改

cd /home/pi/Downloads

sudo tar -zxvf pycharm-community-2023.1-aarch64.tar.gz

转移安装位置

sudo mv pycharm-community-2023.1 /opt/

运行 PyCharm 需要 Java 环境,如果树莓派上还没有安装过 JRE,可以使用以下命令安装即可:

sudo apt install default-jre -y

5.2.3 运行Pycharm

先将转移到pycharm的bin目录下,再运行启动文件

cd /opt/pycharm-community-2022.3.2/bin/

sudo ./pycharm.sh

安装完成之后可以把安装包删除,因为这个安装包有0.5个G还是蛮大的。

sudo rm pycharm-community-2022.3.2-aarch64.tar.gz

5.2.4 创建快捷方式

在Pycharm的设置中可以找到创建快捷方式的选项

在Programming长按Pycharm将其拖到桌面上即可,或者可以右键有个添加到桌面的选项。

6.运行环境

6.1 Pytorch

6.1.1 下载

pip安装whl文件时,需要根据操作系统的配置来选择whl文件。

whl文件的名称可分为5部分:

库的名称(torch)版本号(1.10.0)python编译器(cp39)编译标志(cp39m)操作系统(linux_arrch64)

​ 其中,编译标志常见的有两种:m和mu(比如cp39m和cp39mu)。

​ 两者区别在于:cp39m是ucs2,cp39mu是ucs4

​ UCS2认为每个字符占用2个字节,UCS4认为每个字节占用4个字符,都是UNICODE的编码形式。

在不同平台上,pip支持的whl文件类型也不同。可以通过以下代码查看pip支持的whl文件类型:

# python2

import pip._internal

print(pip._internal.pep425tags.get_supported())

# python3

import wheel.pep425tags as w

print(w.get_supported('./'))

每个文件类型由一个三元组表示,三个元素分别表示:python编译器,编译标志,操作系统。

可以看到,cp27-cp27m-linux这样的组合是不合法的,而cp27-cp27mu-linux是可以的。

根据这个规则从官网上下载下面的版本

torch/torchvison源链接

wget https://github.com/KumaTea/pytorch-aarch64/releases/download/v1.10.0/torch-1.10.0-cp39-cp39-linux_aarch64.whl

6.1.2 安装

pip install torch-1.10.0-cp39-cp39-linux_aarch64.whl

6.1.3 测试

用Python引用torch是否会报错

6.2 Torchvison

6.2.1 下载

torchvison安装受pytorch版本限制,版本对应关系

wget https://github.com/KumaTea/pytorch-aarch64/releases/download/v1.10.0/torchvision-0.11.0-cp39-cp39-linux_aarch64.whl

6.2.2 安装

pip install torchvision-0.11.0-cp39-cp39-linux_aarch64.whl

6.2.3 测试

用python引用torchvison看是否会报错

6.3 Requestment

6.3.1 下载

项目对某些第三方库有要求需按照requestment里的版本号进行下载

6.3.2 安装

使用普通的pip install就可以安装了。

pip install matplotlib==3.5.1

pip install numpy==1.23.5

pip install Pillow==9.3.0

pip install tqdm==4.64.1

pip install wandb==0.13.5

除此之外,还需再安装openCV

sudo apt install python3-opencv -y # 只支持python3

如果有些库安装不下来可以尝试,将版本号的最后一位数字改大或改小一点。

6.3.3 测试

如果全部安装完成requestment里会是这样的颜色。

7.测试运行

7.1 解压项目

unzip [项目名称] -d [解压位置]

7.2 测试运行

python predict.py -i 0.png -o output0.png

参考文献

树莓派|用于各种用途的最佳树莓派操作系统 [无屏幕和键盘配置树莓派WiFi和SSH | 树莓派实验室 (nxez.com)](https://shumeipai.nxez.com/2017/09/13/raspberry-pi-network-configuration-before-boot.html#:~:text=操作方法简单:将刷好 Raspbian 系统的 SD 卡用电脑读取。 在 boot,分区,也就是树莓派的 %2Fboot 目录下新建 wpa_supplicant.conf 文件,按照下面的参考格式填入内容并保存 wpa_supplicant.conf 文件。)给树莓派配置VNC,设置开机自启_9677的博客-CSDN博客_树莓派开机启动vnc树莓派换源教程_萌新源的博客-CSDN博客_树莓派换源【树莓派】树莓派安装中文输入法_GEEK.攻城狮的博客-CSDN博客_树莓派中文输入法安装树莓派下载及安装PyCharm软件_树莓派安装pycharm_qq_755682240的博客-CSDN博客树莓派 vnc Cannot currently show the desktop_树莓派vnc无法看到桌面_领风者的博客-CSDN博客 解决树莓派4b开发板报错,ERROR: the system appears to be configured for the legacy camera stack_一个月球上的人的博客-CSDN博客_树莓派4b开发系统 树莓派上如何安装anaconda/miniconda环境配置_别出BUG求求了的博客-CSDN博客_树莓派安装anaconda树莓派64位系统安装pytorch & torchvision_Robohaha的博客-CSDN博客

推荐文章

评论可见,请评论后查看内容,谢谢!!!
 您阅读本篇文章共花了: