我知道Raspberry Pi上的软件分为三个部分:封闭源GPU固件,修补的ARM Linux内核和用户空间软件。

是芯片上的SD固件还是SD卡?
是否有一种简便的方法来更新所有内容(固件,内核,模块)?

#1 楼

编辑:自从写这篇文章以来,建议已更改。除非RPi工程师特别建议/进行beta测试,否则不应使用rpi-update。它是固件的不稳定版本。它曾经是更新所必需的,但现在不再是。请参阅另一个问题的答案。

什么是GPU固件和内核?

内核负责管理Raspberry Pi的资源并在中央处理器上运行(中央处理器)。它允许任务在CPU上运行。另一方面,GPU固件管理图形处理单元(GPU)。这两个单独的单元位于同一芯片上并共享内存,这些内存在启动时根据硬编码的start.elf文件进行隔离。为了使用Raspberry Pi,两组文件都必须位于SD卡上的正确位置。

您可以从基金会的零售合作伙伴处购买预装的SD卡。

或者,基金会会定期在http://www.raspberrypi.org/downloads上发布新的SD卡映像。您必须使用Unix的dd或Windows的Win32DiskImager将此文件加载到现有的SD卡上。 Broadcom提供此功能。另一方面,您可以从源代码编译自己的内核映像。交叉编译是其他问题的主题,例如,如何在Ubuntu主机上交叉编译内核?

更新GPU固件-Debian / Raspbian

您可以使用Hexxeh的rpi-update更新固件。在Raspbian上,您可以运行以下命令进行安装:

sudo apt-get install rpi-update


要更新软件,请运行

sudo rpi-update


更新用户空间和内核软件-Debian / Raspbian

必须维护用户空间软件。这很容易;只需运行

sudo apt-get upgrade


如果有任何错误,您可以尝试先运行

来更新数据库
sudo apt-get update


如果您不理解错误,那么最好在这里询问或尝试使用Google搜索。

更新软件-Arch Linux

必须维护软件。与Debian相比,Arch Linux的优势在于Arch Linux在程序包管理系统中管理Raspberry Pi的固件。要更新,只需运行

sudo pacman -Syu


如果有任何错误并且您不理解它,那么最好在这里询问或尝试使用Google进行搜索。

参考文献


rpi-update存储库


评论


用户还创建了一个名为rpi-updater的工具,它将更新固件,内核和模块。

– Alex L
2012年6月13日6:25

Raspbian不附带rpi-update工具吗?

–活动
2012年8月7日在22:46



另外,您是否发现了为什么debian无法使用apt管理固件?

–活动
2012年8月8日在7:04

@吉文斯懒惰?

–亚历克斯·张伯伦
2012年8月8日在7:21

Raspbian有点陈旧,但是在这一点上,它已经安装了rpi-update工具,它位于默认的raspberry pi apt存储库中。您可以执行简单的sudo apt-get install rpi-update代替现在的手动安装。

–Caleb1994
14年2月22日在16:13

#2 楼

看看Hexxeh的RPi-Updater。它专门用于升级固件和内核。

https://github.com/Hexxeh/rpi-update

如果您运行的是Arch Linux,则更新将作为常规pacman -Syu的一部分,官方RPi存储库。

评论


使用rpi-update时要小心(适用于最新的内核)-Raspbian更新也会升级内核:raspberrypi.stackexchange.com/questions/4355/…

–皮尔兹
15年7月6日在20:42

#3 楼

要将系统更新为最新版本的userland软件,您需要在升级之前运行更新-该更新实际上下载了新的软件包清单,以便升级可以获取并安装它们(如Debian Linux文档中所述):

sudo apt-get update
sudo apt-get upgrade


此外,您可能需要运行dist-upgrade来执行较大的升级:

sudo apt-get dist-upgrade


自动更新

如果要自动执行这些过程,可以通过配置apt的Periodic选项来完成。 Raspberry Pi附带安装了apt(提供apt-get命令等),作为该软件包的一部分,安装了自动脚本(在/etc/cron.daily/apt中),用于每天进行自动更新。 (使用cron守护程序)。这些可以通过创建(作为根目录)文件/etc/apt/apt.conf.d/10进行定期控制,并在其中添加以下内容:
只需每天为您运行更新,因此当您运行sudo apt-get upgrade时,您将安装最新的软件包(而无需首先运行apt-get update)。

自动升级配置易于自动升级的软件包-首先,您需要安装新的软件包才能使无人值守的升级工作: /etc/apt/apt.conf.d/10周期中的“ 1”启用自动升级:

APT::Periodic::Update-Package-Lists "1";
APT::Periodic::Download-Upgradeable-Packages "0";
APT::Periodic::AutocleanInterval "0";
APT::Periodic::Unattended-Upgrade "0";


有关更多详细信息,请参见/ etc / cron中的注释.daily / apt,然后将相关选项放入/etc/apt/apt.conf.d/10定期文件中。

评论


这是在2017年初更新RPI的正确答案,不再需要rpi-update

– Alec Istomin
17-2-26的1:32

文件名不是'02periodic'(在/etc/apt/apt.conf.d中)-至少这就是cron.daily中'apt'文件所说的内容-“#创建/etc/apt/apt.conf.d / 02定期文件来设置您的首选项。”

–matthiku
17 Mar 8 '17 at 19:07



这些文件按优先顺序编号,因此在您的系统(和/或较新的系统)上可能是02。

–皮尔兹
17 Mar 9 '17 at 22:42