2.5 初始化系统
在烧录完成并第一次启动树莓派时,初学者的心情肯定是无比激动的,但这才刚刚开始!为了让树莓派顺利运行,还有一些配置工作需要做,下面将介绍树莓派第一次初始化配置过程中的一些配置细节,用户可根据实际情况进行特定的选择。
首先连接树莓派外设,树莓派接口信息如图2-12所示。
图2-12 接口介绍
◆ SD card:SD卡插槽,在背面。
◆ Power:树莓派电源。图2-12是树莓派4B的示意图,因此是USB-C接口类型,俗称Type-C电源接口。
◆ Monitors:Mini HDMI接口。左边是索引为0的接口(即第一个接口),右边是索引为1的接口(即第二个接口),支持两个屏幕同时显示,单屏幕可以达到4K@60FPS。
◆ Camera:树莓派CSI相机接口。
◆ Sound:3.5mm音频接口。
◆ Keyboard & mouse:USB接口。可连接鼠标、键盘、移动硬盘等USB设备。
◆ Network:以太网接口。接网线连接交换机或者路由器设备,更多时候用的是树莓派自带的WiFi连接功能。
连接好的树莓派外设如图2-13所示。
正常开机,启动树莓派后,会显示桌面的状态,如图2-14所示。
首次启动树莓派时,将弹出“ Welcome to Raspberry Pi”应用程序,指导用户完成初始设置,如图2-15所示。
图2-13 树莓派外设
图2-14 Raspbian Desktop
图2-15 欢迎界面
单击Next按钮,出现如图2-16所示的界面,设置所在的国家/地区、语言和时区,然后再次单击Next按钮,进入密码设置界面。
图2-16 国家/地区、语言和时区设置
设置信息如下:Country选择China,Language选择British English,Timezone选择Shanghai,并勾选Use English Language和Use US keyboard选项,其意义是使用英文,并使用美标键盘,因为国内大部分键盘都是美标的布局,如果有特殊键盘布局的,可以在后续章节看到配置键盘映射的方法。有些用户开始随便将Country选择了United Kingdom,随着后面使用,在敲命令时会发现管道符号、重定向符号等特殊符号打不出来,会很抓狂。因此,初始化时一定要按照本书的建议来做。也有用户会问为什么不用中文?因为在终端中使用中文可能会出现不识别或者识别较差的情况,这算是一个历史遗留的问题,相信后续会慢慢改进,当然选择中文也是可以的,根据不同的用途,使用不同的配置即可。
输入树莓派的新密码,然后单击Next按钮,如图2-17所示。
图2-17 密码设置
接下来选择网络SSID名称,输入密码连接到WiFi网络。联网设置如图2-18所示。
图2-18 联网设置
注意:如果树莓派型号没有无线连接,则不会看到此画面。
单击Next按钮,让向导检查对Raspbian的更新并安装(这可能需要一些时间)。一般情况下,本书推荐读者先跳过此步骤,等后面配置完成以后,再执行这个步骤。由于网络的原因,第一次更新会很慢,大多数人等不及都会更换为国内的源,实际上官方系统在2019年后的镜像中已经可以通过查询距离最近的源进行安装源的分配了。例如,某用户居住在上海,当使用官方源进行更新时,系统会自动选择距离其比较近或者性能更好的源服务器进行更新和下载。
更新时使用的虽然是官方源地址,但是更新时读取仓库信息的服务器是来自国内某大学的源服务器,所以手工更改更新源配置其实并不是必须的。如果对更新速度有较高要求,可以尝试更改源服务器地址,如更改为清华源服务器地址等,可以参考网上提供的资料进行,这里不再赘述。使用官方更新源信息如图2-19所示。
图2-19 更新源信息
最后,单击Finish按钮或Restart按钮完成设置。注意,仅在需要完成配置并使其生效时才需要重启。设置完成如图2-20所示。
图2-20 设置完成
至此,树莓派的初始化设置已经完成了,可以开始登录系统并探索树莓派秘境了!
初始化配置完成后,如果觉得之前的配置有的不太符合需求,该如何重新配置呢?可以通过树莓派自带的脚本工具raspi-config来完成。
工具在使用时,前面要加一个sudo命令,这个命令的意思是赋予用户临时获取超级用户root的权限来执行该命令,用直白点儿的语言说就是让普通用户像管理员那样使用这个命令或工具,临时赋予root用户的权限来执行原本只有root用户可以执行的二进制文件(命令)。当然这个是临时赋予普通用户的权限,在执行完命令后就会失效,一方面避免普通用户权力过大出现误操作的概率;另一方面也时刻提醒普通用户在执行命令前需要三思而后行,避免出现删库跑路的情况。
而这个命令怎么使用并在哪里进行输入呢?对于很多不熟悉Linux系统的用户来说,使用树莓派就被鼠标的活动区域限制了,在系统中,用户经常会打开一个terminal,称为终端。曾经操作树莓派时,一个年轻的后生看着笔者打开的终端,感慨万千:这都什么年代了,还在用DOS系统?笔者只是笑而不语,殊不知Linux不发威,你还真当它是DOS?要知道当年有一句名言:“Command Line equal cash line”,翻译过来就是:“命令行就是现金行”,这年头靠Linux系统赚钱的人不在少数,开源软件、开源硬件,用起来不知道多惬意呢!
如图2-21所示,单击Terminal工具按钮,或者在菜单栏中选择Accessories→Terminal,或者直接按下Ctrl+Alt+T组合键,均可以快速打开一个终端,其效果如图2-22所示,它是用户通向树莓派魔幻世界的一个窗口。
图2-21 打开终端
图2-22 终端效果图
如果没有配置外部显示器的情况下,只要有网络环境,就可以通过在自己的Windows计算机上远程操作树莓派。(1)在图形界面上的终端内输入该命令和远程SSH登录后打开的终端中使用该命令的效果是一样的。通过SSH登录后使用命令的效果如图2-23所示,执行后效果如图2-24所示。
图2-23 远程SSH
图2-24 raspi-config命令界面
在这个终端内,几乎可以完成所有对树莓派调试的操作,包括编写代码、调试程序、播放视频、上传下载文件等。
1.改变用户密码
当选择该选项时,会出现提示信息,询问是否更改pi用户密码,默认的系统账户是pi,密码是raspberry,一般建议初始化系统时改为自己的密码,如图2-25所示。
图2-25 更改用户密码提示界面
在密码修改的过程中会提示输入,如图2-26所示,用户输入新密码时不会回显,因此看不到输入的密码信息,只需要输入后按Enter键,然后再输入一次即可。两次密码都输入正确后,会提示修改成功字样,如图2-27所示,下一次登录树莓派系统时就可以使用新密码登录了。
图2-26 密码输入界面
图2-27 密码修改成功提示
2.网络选项设置
使用GUI(Graphic User Interface,图形用户接口)方式进行配置网络也非常方便,如图2-28所示。
图2-28 网络配置
各项参数的含义如下:
◆ N1 Hostname:设置主机名。默认主机名是raspberry,可以改成用户喜欢的名字。
◆ N2 WiFi:设置WiFi的SSID信息的输入框,填入用户的WiFi信息即可。
◆ N3 Network interface names:启动或者禁用网络接口的配置选项。
◆ N4 Network proxy settings:设置网络代理的选项,可以设置HTTP代理、HTTPS代理、FTP代理、RSYNC代理等。
3.启动选项设置
可以设置启动时进入桌面或者字符模式,以及配置开机画面的选项,如图2-29所示。
图2-29 启动选项设置
各项参数的含义如下:
◆ B1 Desktop/CLI:设置启动到桌面还是启动到字符界面。有时用户需要树莓派以占用非常少量资源的模式运行,就需要进入字符界面,也就是CLI(Command Line)模式。
◆ B2 Wait for Network at Boot:这个选项开启后,树莓派启动时会等待网络成功连接后再继续启动。有时用户做了一些物联网应用,希望设备在联网的状态下才正常运行应用程序,就需要等待网络连接成功再启动。这个功能很有用,后面一些应用就可以加上这个功能来辅助。
◆ B3 Splash Screen:开机画面是否启用。如果启用就会看到开机时有个背景图,显示一个好看的树莓派系统界面;如果不启用,开机时就会显示整个启动序列,更加直观地了解树莓派的启动过程。
4.本土化设置(字符集及语言设置)
本土化设置用于调整字符集、时区、键盘映射布局,以及WiFi Country信息等,设置界面如图2-30所示。
图2-30 本土化设置界面
各项参数的含义如下:
◆ I1 Change Locale:更改字符集。建议选择en_US.UTF-8编码格式,使用UTF-8编码格式一般情况下是不会出现乱码的,如图2-31所示。一般默认字符集也选择一样的配置即可,默认字符集配置如图2-32所示。
图2-31 字符集定义
图2-32 默认字符集
◆ I2 Change Timezone:更改时区。数据存储时时间戳很重要,因此计算机时间信息的正确与否会影响数据安全性,所以需更改到用户所在的时区,如图2-33和图2-34所示。
图2-33 区域设置
图2-34 具体时区设置
◆ I3 Change Keyboard Layout:更改键盘布局。关于键盘布局,笔者曾经也遇到很多麻烦,当设置键盘布局的区域信息时没有设置对,导致在终端输入时,管道符“|”和输入输出重定向符号“>>”无法正常输入,终于找到原因是因为选择了英标的键盘布局。建议大家选择美标的键盘。
◆ I4 Change WiFi Country:更改WiFi国家。强调一下,这里的WiFi Country选择CN China,如图2-35所示。WiFi Country非常重要,它是设置了一个合法的WiFi通道以适应国情,在配置初期如果没有定义好WiFi Country的信息,很有可能网络连接后时断时续,甚至无法联网。
图2-35 WiFi Country设置
5.接口选项设置(开启或者关闭接口)
接口选项是配置树莓派硬件功能最多的地方,例如摄像头接口、SPI接口、I2C接口、串口等,都可以直接在这里配置物理特性的启用和关闭,可配置选项如图2-36所示。
图2-36 接口选项设置
接口如下:
◆ P1 Camera:摄像头接口。
◆ P2 SSH:SSH服务。
◆ P3 VNC:VNC服务。
◆ P4 SPI:SPI接口。
◆ P5 I2C:I2C接口。
◆ P6 Serial:串口。
◆ P7 1-Wire:单总线接口。一般用来接单总线协议的设备,例如温度传感器DS18B20。
◆ P8 Remote GPIO:远程访问GPIO接口。
接口启用的方法非常简单,进入相应的选项,选择enable就可以了,部分物理接口启用后需要重新启动树莓派才生效。
6.超频设置
超频设置仅适用于树莓派1代或者树莓派2代产品,树莓派4B无法使用,如图2-37所示。
图2-37 超频设置
7.高级设置
高级设置可以扩展文件系统,调整屏幕显示,进行内存分割,调整音频、分辨率、屏保等设置,如图2-38所示。
高级选项多是针对树莓派系统层面的设置,大部分情况下建议保持默认即可,如果有兴趣的用户可以尝试调试,但是对于初级用户,建议不要随便修改,避免出现不可预见的错误。
图2-38 高级设置
部分选项含义如下:
◆ A1 Expand Filesystem:扩展文件系统。用来确保整个SD卡的空间都可使用,因为制作镜像时为了节省空间,将镜像中空白无数据的部分都缩减掉了,这样制作出来的镜像文件才会比较小,方便网络传输并且适应不同容量的SD卡。当烧录完系统后,需要它执行后将整个SD卡的空间都识别出来并且利用起来,当然这个操作在开机自动初始化时已经执行过了,如果用户不放心或者想要执行一下也是无害的。
◆ A2 Overscan:过扫描。在某些电视机中,过扫描是一种行为,其中输入图片的一部分显示在屏幕的可视范围之外。之所以存在,是因为20世纪30年代到21世纪初期的阴极射线管电视机的视频图像在屏幕边界内的定位方式上存在很大差异。后来,在图像周围出现黑色边缘的视频信号已成为惯例。这个选项是针对一些很老的显示设备,如果是现在比较先进的电视机作为显示器,那么无须考虑开启这个参数。
◆ A3 Memory Split:内存分割。这个功能允许通过改变分配给GPU的内存来调整显存的大小,建议根据实际物理内存的数量来进行分割,并且是2的幂次方倍数,例如16、32、64、128等。GPU拥有的内存越多,图形处理速度越快,反之亦然,这样就可以根据实际应用进行调试了。例如某用户要做图像渲染,用到GPU多一些,那么就多分配一些内存给它,总的内存不能超过物理内存,如图2-39所示。
8.更新
更新选项和在终端使用命令sudo apt-get update拥有相同的效果。
图2-39 内存分割
9.关于配置工具说明
这是一个介绍工具的说明信息,如图2-40所示。这个工具直接有效,非常方便,希望读者记住使用它的命令:sudo raspi-config。
图2-40 关于工具说明
至此,从安装到初始化的操作已经完成了,接下来开始尝试在终端中获取树莓派的各种信息,了解树莓派系统结构及编程环境。
(1) 远程调试用到最多的方式是SSH(Secure Shell),即用SSH工具远程登录到树莓派系统,并且只有命令行窗口,没有图形化界面的远程操作方式。Windows端的SSH工具很多,常用的有Putty、MobaXterm等。