Operating System on Raspberry Pi 3b

最近由于嵌入式课程实验的缘故,老师给每位同学发了一块树莓派3b。由于玩得比较少,且现在物联网(IoT)发展速度较快,所以作一文探讨OS的选择与使用体验。

就是上面这货,不得不说开发板还是很小巧玲珑的。一个网线接口,四个USB2.0,一个标准HDMI,一个3.5mm耳机孔,一个TF卡插槽(在底部边缘),现在看来都是标准得甚至有点落伍的配置,还算是凑合。

接下来就是烧录OS。Linux下干这活挺简单,用dd就行。我们先插上TF卡, lsblk 看一下。

显示有/dev/sdc,一切正常。我们可以用

sudo dd if=镜像名.img of=/dev/sdc1 bs=4M status=progress conv=fsync

把指定镜像刻录到TF卡中。如果使用windows,用rufus这个小工具直接刻录即可。

接下来就是选择OS。现在有很多针对树莓派开发的IoT版OS,各有特点,不同OS的使用体验也天差地别,需要针对使用场景来进行选择。

Raspbian

下载地址:https://www.raspberrypi.org/downloads/raspbian/

树莓派官方搞的基于debian的OS,目前最新版本是debian 10(buster),一般来说选择Raspbian Buster with desktop就够用了,不需要with recommend software。

装好的效果如下图:

桌面很有XFCE的感觉,非常简洁,响应速度尚可。偶尔有鼠标图标刷新率不够导致掉帧的问题,也还可以接受。换个源搞搞配置之后就可以随便用了。如果想当个人PC,上个网写写简单代码什么的还可以。

Ubuntu Mate

下载地址:https://ubuntu-mate.org/download/

选择Raspberry Pi → 18.04.2(Bionic)。

装好的效果如下图:

初看跟传统的ubuntu没什么差别,但是很快就能体会到有个严重的问题:很卡,除了鼠标移动、键盘交互这种唤起中断的操作之外其他操作都非常卡。个人猜测性能瓶颈主要还是在TF卡IO上。很快我就没有再用下去了。

Ubuntu Core

下载地址:https://ubuntu.com/download/raspberry-pi-2-3-core

这个系统安装没什么可说的,关键是要去https://login.ubuntu.com/注册个账号并上传ssh公钥,因为装了这个系统之后就只能通过ssh登录了。

比较坑爹的是这个系统竟然没有apt……

Ubuntu Server

下载地址:https://ubuntu.com/download/raspberry-pi

这个系统比上面的要完善得多,只是没有桌面而已(挺好的)。如果想装桌面的话推荐XFCE,内存占用低且性能好。

sudo apt-get install xubuntu-desktop

图就不贴了。

Archlinux Arm

下载地址:https://mirrors.tuna.tsinghua.edu.cn/archlinuxarm/os/ArchLinuxARM-rpi-3-latest.tar.gz

Archlinux是我个人最喜欢的linux发行版,正好对大量的arm开发板作了适配,当然要尝试一下。

首先下载安装包。由于archlinuxarm的烧录方式与archlinux有所不同,不能直接dd,我们需要在下载的过程中插入TF卡并分区。

sudo fdisk /dev/sdc

删除所有分区并创建两个primary分区,一个大小为100M,另一个使用剩下空间。然后cd到镜像下载目录。

sudo mkfs.vfat /dev/sdc1
mkdir boot
sudo mount /dev/sdc1 boot
sudo mkfs.ext4 /dev/sdc2
mkdir root
sudo mount /dev/sdc2 root

等待镜像下载完成后。

sudo bsdtar -xpf ArchLinuxARM-rpi-3-latest.tar.gz -C root
mv root/boot/* boot
sudo umount boot root

此时就可以拔出TF卡并启动系统了,默认的账号密码均为alarm。boot成功后进行如下操作:

su # 密码为root
pacman-key --init
pacman-key --populate archlinuxarm
nano /etc/pacman.d/mirrorlist
# 添加清华源
Server = http://mirrors.tuna.tsinghua.edu.cn/archlinuxarm/$arch/$repo
# 保存
pacman -Syu

等待系统更新完成即可。

装好必要软件后占用非常可观,然而也有一点问题。用x86版本archlinux时现在少见的滚挂现象在我第一次装好archlinuxarm时就遇到了,被迫重装系统。

Windows 10 for IoT

此系统需要在windows下操作。

下载地址:https://docs.microsoft.com/en-us/windows/iot-core/downloads

直接下载Windows 10 IoT Core Dashboard即可,操作非常傻瓜。好像现在微软很喜欢把工具傻瓜化,对于windows用户来说十分方便。也可以在网页下方直接下载ISO,再利用visual studio来安装。

 

不过我在实际boot过程中并没有成功,提示0x000014c错误,遂google之。发现是TF卡太大(64g)导致的错误,还意外得知这系统居然是32位的……等有空再试了。

原文地址:https://www.cnblogs.com/JHSeng/p/11907758.html