《树莓派实战秘籍》——2.5 技巧25更新固件和预构建二进制内核的简易方法

简介:

本节书摘来异步社区《树莓派实战秘籍》一书中的第2章,第2.5节,作者:【美】Ruth Suehle ,Tom Callaway,更多章节内容可以访问云栖社区“异步社区”公众号查看

2.5 技巧25更新固件和预构建二进制内核的简易方法

树莓派实战秘籍
当有一个专用工具的时候,一切就都简单了。幸运的是,Liam McLoughlin(又名“Hexxeh”)创建了一个更新树莓派固件和内核的专用工具。

rpi-update是一个shell脚本,它可以在一张包含树莓派Linux发行版映像文件的SD卡上,自动处理更新固件、预构建内核以及预构建VideoCore SDK文件的过程。

首先,确保在你选择的树莓派发行版上已经安装了readelf和git的二进制文件,rpi-update脚本的成功使用需要这些命令。在大多数的Linux发行版中,readelf是binutils软件包,git是git软件包。

要安装这个脚本,在Pidora中运行下面的命令(以root用户):

3a8010eed9f1389f55c0ee5bc45a0e0cc0e8c14b

在Raspbian中:

783cbf9d99e32a07bbb8932ee50016ee61b64a46

要使用这个脚本,从你正在运行的树莓派Linux发行版映像中使用下面的命令来下载它:

3de58db70e198fb9cb836f1d6b1fa3c9576652e6

你需要将它放置在$PATH目录中并设置其为可执行。做到这一点最简单的方法是运行下面的命令(以root用户):

086d3eef3602d001946ab9b28e5b0643027cbc1d

然后,立刻更新所有这些固件、预构建二进制内核以及VideoCore SDK库,只需运行(以root用户):

9b5ce939ded212be599cfe7d24f480fbd622d357

但是,使用这个快捷工具有一些注意事项:

你必须要在一个运行的Linux环境中运行此脚本,因此要确认该环境的时间设置正确,否则会因为时间错误而导致脚本运行失败。
该脚本不能用来执行细粒度的更新操作(例如,只更新固件),这是个要么全有要么全无的体验。
脚本假定VideoCore文件位于/opt/vc目录下。一些树莓派的Linux发行版(例如Pidora)将VideoCore文件放在了不同的位置或将它们放在系统库目录中,因此这个脚本在这些发行版上不能完全工作。
因为官方的GitHub库的大小原因,rpi-update脚本没有使用这个库中的预构建文件。取而代之的是,Hexxeh在一个单独的GitHub库中使用不同的文件系统布局提供了这些文件的副本。

这个单独的库似乎是定期通过手动的方式与官方库保持同步的,因此请记住,很可能你得到的不是这些文件的绝对最新可用版本。有时候,当你尝试走捷径时就是会这样。

相关文章
|
9月前
|
小程序 Linux C语言
Linux实现进度条小程序(包含基础版本和模拟下载过程版本)(上)
Linux实现进度条小程序(包含基础版本和模拟下载过程版本)
|
9月前
|
小程序 Linux C语言
Linux实现进度条小程序(包含基础版本和模拟下载过程版本)(下)
Linux实现进度条小程序(包含基础版本和模拟下载过程版本)
|
NoSQL Linux 编译器
操作系统课程设计:新增Linux驱动程序(重制版)(一)
操作系统课程设计:新增Linux驱动程序(重制版)
191 1
操作系统课程设计:新增Linux驱动程序(重制版)(一)
|
Linux
【Linux系统开发】 x210开发板 虚拟驱动创建流程(驱动编译进内核)
【Linux系统开发】 x210开发板 虚拟驱动创建流程(驱动编译进内核)
133 0
安装驱动程序的正确顺序步骤(手把手教你安装)
安装驱动程序的正确顺序步骤(手把手教你安装)
119 0
|
Linux Shell
操作系统课程设计:新增Linux驱动程序(重制版)(二)
操作系统课程设计:新增Linux驱动程序(重制版)
137 0
操作系统课程设计:新增Linux驱动程序(重制版)(二)
|
Linux C语言 Windows
操作系统课程设计:新增Linux驱动程序(重制版)(三)
操作系统课程设计:新增Linux驱动程序(重制版)
202 0
操作系统课程设计:新增Linux驱动程序(重制版)(三)
|
Ubuntu Shell 编译器
|
Linux
linux内核离线升级步骤详解【亲测可用】
linux内核离线升级步骤详解【亲测可用】
537 0
|
Linux iOS开发 MacOS
图解固件、驱动、软件的区别
图解固件、驱动、软件的区别
1243 0
图解固件、驱动、软件的区别