《树莓派Python编程入门与实战(第2版)》——1.6 让你的树莓派正常工作

简介:

本节书摘来自异步社区《树莓派Python编程入门与实战(第2版)》一书中的第1章,第1.6节,作者[美] Richard Blum Christine Bresnahan,陈晓明 马立新 译,更多章节内容可以访问云栖社区“异步社区”公众号查看。

1.6 让你的树莓派正常工作

一旦你决定要购买树莓派,并拿到树莓派和必要的外围设备后,你就可以开始享受乐趣了。当树莓派第一次启动后,你就会知道这是一个多么强大的小机器,你真的会为此感到惊讶的。下面的小节将会介绍你需要为开机启动所做的准备。

1.6.1 自己研究一下

就像生活中许多其他的东西,如果你未雨绸缪并且研究一下,启动树莓派并让它运行起来的过程就会平稳而迅速。提前花费一些时间和精力是非常值得的。有许多优秀的资源可以提供帮助。例如,Eben Upton和Gareth Halfacree编著的《树莓派用户指南(第3版)》[1]一书将真正帮助你获得愉快的树莓派体验。很多像本书一样的书籍,也可以帮助你让树莓派运行并排除故障。

另外,互联网上还有许多资源可以帮助你进行树莓派的研究。其中最好的网站来自于树莓派基金会。这个网站(www.raspberrypi.org)充满了精彩的内容,包括常见问题的解答、帮助论坛和其他各种资源。这个网站提供了软件下载,以及关于树莓派和基金会的最新新闻。这是你入门树莓派的第一步。

1.6.2 安装软件

在完成了最初的研究之后,下一步就是下载并安装软件了。树莓派基金会的网站raspberrypi.org提供了最新开箱即用的软件(New Out Of Box Software,NOOBS),它能够:
初始启动树莓派;

设置microSD卡;

允许选择一个操作系统;

安装所选的操作系统。

NOOBS是树莓派新手的最佳选择,并且它对老手来说也很好用。因此,本书只是介绍如何使用NOOBS。

NOTE 技巧:预装操作系统的SD卡

假如你买的是一个预包装套件,它可能已经包含了一个装有NOOBS的microSD卡了。如果是这样的话,就可以跳到第2章。

1.6.3 下载操作系统

在下载操作系统的机器上,需要有SD卡或microSD卡的读卡器。如果你有不同的计算机可供使用(如Windows机器和Linux机器),选最顺手的那一个。

TIP 提示:需要更多细节?

如果你需要下载并把NOOBS移入到一个microSD卡,参见本书附录A。该附录将会带你一步一步地经过该过程,并提供了比这里更深入的介绍。

选好机器后,从raspberrypi.org/downloads网站下载NOOBS。在站点上,有两种NOOBS可供选择:离线的和网络安装的,或只支持网络安装的。只支持网络安装的选项通常比下载更快,因为它并不包含任何预先选择的操作系统;然而,必须让树莓派连接到互联网以保证安装过程能够正常进行。两个版本都允许选择要在microSD卡上安装哪一种操作系统。

NOTE 技巧:网络和NOOBS

唯一不需要树莓派连接到互联网的情况是,如果下载了离线和网络安装NOOBS并且随后安装了Raspbian。否则的话,树莓派必须要联网。

在下载完成之后,检查一下下载的NOOBS.Zip文件的SHA-1校验和,以确保它和最初的文件的校验和一致。这将会验证在文件下载的过程中没有发生文件损坏。

树莓派基金会在他们的下载页面上,靠近NOOBS软件下载选项的地方,提供了正确的SHA-1校验和。Windows、OS X和Linux的每一次安装都会产生一个不同的校验和。如果需要进一步了解如何验证校验和,请查阅附录A。

TIP 提示:什么是校验和

校验和是使用一种特殊的数学算法计算出来的数字和字母的一个字符串。例如,一个SHA-1校验和是通过一种叫做SHA-1的标准算法产生的。通过一个校验和算法来运行一个文件的数据,会产生唯一的校验和。如果任何的文件数据改变了,校验和也会发生变化。因此,校验和能够确保文件的数据没有改变过或者文件没有损坏。这为检查下载的文件提供了方便。

如果下载的NOOBS文件的校验和与Web站点上的最初的文件的校验和不一致,那么,请重新下载文件。当校验和不一致,通常意味着文件在下载的过程中损坏了。

如果校验文件一致,从NOOBS文件解压缩文件和目录,该文件是以.zip后缀结尾的。再一次,Windows、OS X和Linux对于每一次解压缩的处理都是不同的。附录A详细介绍了这一点。

1.6.4 移动NOOBS

在把NOOBS文件和目录放入到microSD卡之前,需要把闪存卡全面格式化为出厂状态。SD协会sdcard.org提供了一个可以在Windows和OS X上使用的免费的SD卡格式化程序。对于Linux,你可以使用GNOME分区编辑工具gparted。如果需要了解详细情况,请参阅附录A。

如果你的机器只有一个SD卡读卡器而没有一个microSD读卡器,需要在加载microSD卡之前将microSD卡插入到一个SD卡适配器。如果根本没有SD卡读卡器,可以使用一个用于SD卡的USB闪存卡适配器,在这里也管用。

NOTE 技巧:正确地准备一张microSD卡

不能只是从microSD卡删除文件,或者使用快速格式化。如果这么做的话,NOOBS软件可能无法正确地工作,由此,树莓派也无法驱动,或者会引发其他的问题。确保使用SD卡格式化程序软件将microSD卡完全格式化为出厂状态。

下一步就是将NOOBS目录和文件放入到microSD卡中。和移动操作系统不同,你只能够将文件复制到microSD卡中,不需要使用镜像写入程序或工具。

TIP 提示:需要帮助?

如果对于下载NOOBS并将其放入到一个microSD卡的过程不熟悉,别忘了购买一个预装系统的SD卡。可以参考中elinux.org/RPi_Easy_SD_Card_Setup页面的“Safe/Easy Way”部分下所列出的销售这种卡的公司。

1.6.5 连接外围设备

现在,你的树莓派、所有必要的外部设备,以及装有Raspbian操作系统的microSD卡都准备好了,是时候收获所有准备工作的成果了。完成下面步骤,以确保一切工作正常。

1.把microSD卡放入到树莓派的读卡器端口中。

2.插入树莓派的电源线。先不要把电源线接到电源上。

TIP 提示:没有打开/关闭开关

树莓派没有一个打开/关闭开关。因此,当将其插入电源的时候,它就自动启动了。

3.把USB键盘插入到树莓派的USB端口中。

4.把USB鼠标出入到树莓派的USB端口中。

5.将网线插入到树莓派的网络端口中(推荐的),或者将Wi-Fi USB适配器插入到树莓派USB端口中。

6.如果你使用HDMI,将HDMI线插到树莓派的HDMI口上。在显示器或电视关闭的情况下,将线的另一端插上。然后再打开显示器或者电视。如果使用的是电视,你可能需要调整它使用的HDMI端口,现在就这样做。

如果你使用HDMI以外的其他显示输出接口,如A/V复合视频或DVI等,你需要使用跟上述类似的方式连接你的树莓派和显示器或电视。

TIP 提示:将输出和NOOBS组合

NOOBS不会默认地把输出显示到一个复合A/V,即便没有连接到HDMI显示。当树莓派启动的时候,你必须在键盘上按下数字键3或者4来获取输出。参见本章后面的1.7节了解详细信息。

7.现在,已经准备好进行最初的测试硬盘了(是不是很兴奋?)。坐在显示器或TV前面,把树莓派的电源线插入到电源中。

如果什么也没有发生,参见本章后面的1.7节了解详细信息。

通常,你应该会在显示屏上看到一个彩色的方块,然后是NOOBS软件显示的一条消息,告诉你它在对硬盘(microSD卡)重新分区。

在硬盘重新分区好了以后,会出现一个NOOBS初始化对话框。在该对话框中,有一个菜单,其第一个条目高亮显示,如下所示:

Raspbian - [RECOMMENDED]
A Debian Wheezy port optimized for the Raspberry Pi

下面的步骤将带领你完成操作系统的安装。

1.按下键盘上的回车键,或者使用鼠标选择(将X放在该选项后的方框中)Raspbian。

TIP 提示:Raspbian操作系统

在该菜单上,你可以从Raspbian以外的其他操作系统中选一个来进行安装。然而,本教程只使用Raspbian操作系统,因此,选择该系统并继续阅读。

2.按下键盘上的I键,或者用鼠标单击Install图标,以开始Raspbian Linux发布的安装过程。

3.会出现一个确认界面,带有如下所示的消息:

Warning: this will install the selected Operating System(s). All existing data
on SD card will be overwritten, including any OSes that are already installed.

按下键盘上的回车键,或者用鼠标单击Yes以继续安装。

此时,安装开始了,并且显示了一个包含帮助信息的幻灯片播放。此外,有一个完成进度条显示了安装进度。安装过程需要花几分钟才能完成。

当安装完成后,你会看到屏幕显示如下内容:

OS(es) Installation Successfully

4.按下键盘上的回车键,或者使用鼠标单击OK,就完成了安装。如果很多文字在屏幕上飞过,并且你能看到如图1.8所示的一个菜单,那么恭喜你,树莓派已经启动了Raspbian操作系统。


84616aeefc78c1937d2b9da20acdf3cf70b0b624

5.一直按Tab键直到跳到菜单项上,然后按回车键。

命令行出现了,如下所示:

pi@raspberrypi~$

所有的努力得到了回报,树莓派启动并运行起来了。

在命令行上输入sudopoweroff并回车就可以关闭树莓派了。

TIP 提示:菜单去哪了?

再次启动时,如果你没有看见菜单,也不用担心。它被设置为只在第一次启动时显示。在第2章中,我们将学习如何把菜单调出来。不管树莓派是否启动,确保阅读下一小节,然后就可以安全地继续学习第2章了。

相关文章
|
13天前
|
安全 Java 数据处理
Python网络编程基础(Socket编程)多线程/多进程服务器编程
【4月更文挑战第11天】在网络编程中,随着客户端数量的增加,服务器的处理能力成为了一个重要的考量因素。为了处理多个客户端的并发请求,我们通常需要采用多线程或多进程的方式。在本章中,我们将探讨多线程/多进程服务器编程的概念,并通过一个多线程服务器的示例来演示其实现。
|
13天前
|
程序员 开发者 Python
Python网络编程基础(Socket编程) 错误处理和异常处理的最佳实践
【4月更文挑战第11天】在网络编程中,错误处理和异常管理不仅是为了程序的健壮性,也是为了提供清晰的用户反馈以及优雅的故障恢复。在前面的章节中,我们讨论了如何使用`try-except`语句来处理网络错误。现在,我们将深入探讨错误处理和异常处理的最佳实践。
|
3天前
|
API 数据库 数据安全/隐私保护
Flask框架在Python面试中的应用与实战
【4月更文挑战第18天】Django REST framework (DRF) 是用于构建Web API的强力工具,尤其适合Django应用。本文深入讨论DRF面试常见问题,包括视图、序列化、路由、权限控制、分页过滤排序及错误处理。同时,强调了易错点如序列化器验证、权限认证配置、API版本管理、性能优化和响应格式统一,并提供实战代码示例。了解这些知识点有助于在Python面试中展现优秀的Web服务开发能力。
20 1
|
3天前
|
SQL 中间件 API
Flask框架在Python面试中的应用与实战
【4月更文挑战第18天】**Flask是Python的轻量级Web框架,以其简洁API和强大扩展性受欢迎。本文深入探讨了面试中关于Flask的常见问题,包括路由、Jinja2模板、数据库操作、中间件和错误处理。同时,提到了易错点,如路由冲突、模板安全、SQL注入,以及请求上下文管理。通过实例代码展示了如何创建和管理数据库、使用表单以及处理请求。掌握这些知识将有助于在面试中展现Flask技能。**
11 1
Flask框架在Python面试中的应用与实战
|
4天前
|
SQL 关系型数据库 MySQL
Python与MySQL数据库交互:面试实战
【4月更文挑战第16天】本文介绍了Python与MySQL交互的面试重点,包括使用`mysql-connector-python`或`pymysql`连接数据库、执行SQL查询、异常处理、防止SQL注入、事务管理和ORM框架。易错点包括忘记关闭连接、忽视异常处理、硬编码SQL、忽略事务及过度依赖低效查询。通过理解这些问题和提供策略,可提升面试表现。
25 6
|
5天前
|
机器学习/深度学习 数据可视化 数据挖掘
《Python 简易速速上手小册》第9章:数据科学和机器学习入门(2024 最新版)
《Python 简易速速上手小册》第9章:数据科学和机器学习入门(2024 最新版)
18 1
|
5天前
|
安全 数据处理 开发者
《Python 简易速速上手小册》第7章:高级 Python 编程(2024 最新版)
《Python 简易速速上手小册》第7章:高级 Python 编程(2024 最新版)
19 1
|
5天前
|
人工智能 数据挖掘 程序员
《Python 简易速速上手小册》第1章:Python 编程入门(2024 最新版)
《Python 简易速速上手小册》第1章:Python 编程入门(2024 最新版)
35 0
|
6天前
|
API Python
Python模块化编程:面试题深度解析
【4月更文挑战第14天】了解Python模块化编程对于构建大型项目至关重要,它涉及代码组织、复用和维护。本文深入探讨了模块、包、导入机制、命名空间和作用域等基础概念,并列举了面试中常见的模块导入混乱、不适当星号导入等问题,强调了避免循环依赖、合理使用`__init__.py`以及理解模块作用域的重要性。掌握这些知识将有助于在面试中自信应对模块化编程的相关挑战。
19 0
|
7天前
|
机器学习/深度学习 数据采集 算法
scikit-learn入门指南:从基础到实践
【4月更文挑战第17天】这篇指南介绍了scikit-learn,一个Python数据分析和机器学习的重要库。内容涵盖安装、数据加载与预处理、模型训练(如KNN分类器)、评估、调参优化及高级应用,如降维和聚类。通过实例展示了scikit-learn在分类任务中的使用,强调其在数据科学中的重要性。要深入了解,可参考官方文档和实践案例。