第3章 让树莓派运行起来

作者: vctea | 来源:发表于2019-02-26 22:26 被阅读161次

       前面章节我们已经对树莓派进行了简单的介绍,使用树莓派作为机器人的控制系统是一个非常不错的选择,本章我们将进一步介绍如何安装、配置和使用树莓派,主要内容如下。

    • 所需材料,介绍运行树莓派所需的软、硬件材料及其注意事项和建议。
    • 安装操作系统,介绍一种安装树莓派官方操作系统Raspbian的方法。
    • 登录树莓派,介绍在无显示器条件下使用SSH方式远程登陆树莓派的方法和技巧,包含启用SSH、WiFi配置、XShell使用等内容。
    • 配置操作系统,介绍Raspbian系统的配置工具raspi-config,以及系统的语言和区域、默认语言环境等基本配置的配置方法。
    • 升级软件包,介绍使用Raspbian系统的软件包管理工具apt进行系统升级的相关知识和技巧。
    • 关机和重启,介绍几个关闭和重启树莓派的基本命令。

    3.1 所需材料

    3.1.1 硬件

    • 树莓派3B+型主板
         树莓派3B+型主板是当前的最新版本,提供了最为丰富的功能,可以很方便的作为机器人的控制系统。
    • 电源
         树莓派3B+型主板的额定电压为5V稳压直流电,额定电流为2.5A,可采用micro USB、GPIO和PoE三种方式供电,本章使用micro USB方式供电。在低负载运行的情况下,2A的电流也可以让树莓派正常运行,目前许多安卓智能手机的充电器(2A电流)都是可以使用的。当高负载运行时,我们应该使用能提供更大电流的电源,否则可能导致充电器过热甚至报废,也可能引起树莓派重启。另外,由于树莓派本身没有电源开关,为方便开关机,同时避免拔插电源线对树莓派造成损伤,建议使用带有开关的micro USB电源。
    • MicroSD卡
         树莓派使用MicroSD卡安装系统和存储数据,对性能要求较高,因此建议选择大容量(16GB以上)的高速(Class10以上)的MicroSD卡。您还可以准备多一张MicroSD卡用于安装不同的操作系统。
    • 读卡器(可选)
         如果您的计算机没有自带MicroSD卡读卡器,那么您需要准备一个,安装系统的时候需要用到。
    • 网线(可选)
         用于将树莓派接入网络,由于树莓派3B+提供了千兆的以太网口,使用千兆超6类网线可能获得更快的网速。当然了,使用百兆的超5类网线也是可以的。
    • 树莓派外壳(可选)
         树莓派本主板身是不带外壳的,主板外面裸露许多连接部件,当把接触到金属的时候非常容易发生短路,甚至造成损坏。所以,为树莓派配备一个合适的外壳进行保护是很有必要的。目前,市面上有很多类型的树莓派外壳,树莓派官方也出品有相应的外壳,您可以根据需要进行选择。

    3.1.2 软件

    • Raspbian Stretch Lite
         树莓派官网提供了NOOBS和Raspbian两个官方的操作系统镜像。NOOBS的全称为New Out Of Box System(全新开箱即用系统),实际上是一个图形化的操作系统安装工具,其中NOOBS自带完整版的Raspbian,而NOOBS Lite则仅仅是NOOBS本身,您只要在NOOBS中选择想要安装的系统,它就会自动下载安装。Raspbian才是树莓派官方真正的操作系统,基于Debian系统定制,官方提供了Raspbian Stretch with desktop and recommended software、Raspbian Stretch with desktop和Raspbian Stretch Lite三个版本的镜像,“Stretch”是Debian系统的版本代号,其中“Raspbian Stretch with desktop and recommended software”带有图形界面和一些推荐的应用软件,“Raspbian Stretch with desktop”仅提供图形界面,“Raspbian Stretch Lite”则仅提供命令行界面。由于NOOBS和系统安装包会占用一定的存储空间,且安装操作系统的时候需要外接显示器,因此NOOBS并不是最好的选择。另外,按照“简单”的原则,我们选择使用最为精简的Raspbian Stretch Lite版本,使用过程中再按需手工安装相应软件。
         下载地址:https://www.raspberrypi.org/downloads/

    • Etcher
         Etcher是一款免费的U盘镜像制作工具,可以将镜像刻录到U盘,我们将用它将Raspbian系统安装到MicroSD卡上。类似的软件还有Win32 Disk Imager等,您可以根据习惯选择。
         下载地址:https://www.balena.io/etcher/

    • SDFormatter(可选)
         SDFormatter是一个简单的SD卡修复工具,也是树莓派官网推荐的SD格式化工具。在安装树莓派后,您会发现MicroSD卡的容量与实际容量不符(只剩下很少的存储空间),如果你想恢复MicroSD卡的容量,就可以使用SDFormatter进行格式化。
         下载地址:https://www.sdcard.org/downloads/formatter_4/

    • XShell
         XShell是一个强大的安全终端模拟软件,支持SSH1、SSH2、TELNET、Serial等多种协议,我们将用它远程登录树莓派。官方提供有免费版供个人和教育使用,相比专业版,免费版仅是限制最多只能打开四个标签页,但这并不影响我们的使用。与XShell类似的软件还有SecureCRT、Putty等,您可以根据习惯选择。
         下载地址:https://www.netsarang.com/en/

    • Advanced IP Scanner(可选)
         Advanced IP Scanner是一个免费的网络扫描器,可以分析LAN,我们将用它来确定树莓派的IP地址。类似的网络扫描工具有很多,您也可以选择其他类似的工具。
         下载地址:http://www.advanced-ip-scanner.com/cn/

    3.1 安装操作系统

       Raspbian系统的安装步骤如下:
       步骤 1: 将MicroSD卡插入到电脑上。
       步骤 2: 运行Etcher,点击“Select image”按钮选择要安装的系统镜像,选择要安装系统的驱动器,然后点击“Flash!”按钮开始安装系统,如图 3.1所示。整个过程大约需要几分钟的时间,请耐心等待。

    图 3.1 安装操作系统

    提示:

    • Etcher通常能自动识别出要安装系统的驱动器,我们一般不需要进行额外设置。
    • raspbian的镜像是一个zip格式的压缩文件,文件名一般为“发布时间-raspbian-stretch-lite.zip",例如:2018-11-13-raspbian-stretch-lite.zip,Etcher支持直接使用zip格式压缩文件进行安装,所以我们不需要把镜像文件解压出来。
    • 开始安装系统后,MicroSD卡原有的数据都会给格式化掉,因此我们应该非常谨慎。

       安装成功后,把MicroSD卡插入树莓派,同时给树莓派接上鼠标、键盘、显示器和电源,就可以和普通个人计算机一样使用。

    3.2 登录树莓派(SSH方式)

       在使用树莓派时,尤其是作为机器人控制系统,很少会使用到显示器,更多是采用网络远程登录的方式。事实上,网络远程登录方式更为便捷,且几乎可以完成所有的工作。常见的远程登录树莓派的方法有SSH和VNC。其中,SSH是命令行界面的远程管理工具,也就是登录后只提供命令行界面,而VNC则是图形化的远程管理工具,提供图形化界面,前提是你的系统上安装了图形界面。以下是SSH方式登录树莓派的步骤和技巧:
       步骤 1: 开启SSH服务。将MicroSD卡插回计算机,在MicroSD卡的根目录下(也就是树莓派的/boot目录)新建一个空白的文件,并命名为ssh,注意文件名不要带有后缀。
       步骤 2: 接入网络。有线方式接入网络,仅需要用网线将树莓派和交换机(路由器)连接起来即可。若想在没有显示器的情况下通过WiFi接入网络,则可以通过在MicroSD卡的根目录下新建一个名为wpa_supplicant.conf的配置文件来实现,配置文件内容参考以下格式填写。

    ctrl_interface=DIR=/var/run/wpa_supplicant GROUP=netdev  
    update_config=1  
      
    network={  
    ssid="WiFi名称"  
    psk="WiFi密码"  
    key_mgmt=WPA-PSK  
    priority=1  
    scan_ssid=1  
    }
    

       配置文件的前两行为固定写法,不需要改动。network字段的内容应根据WiFi的实际设置修改,配置文件中可以有多个network配置表示连接不同的WiFi。其中,ssid为WiFi名称;psk为WiFi密码;key_mgmt为WiFi加密方式;priority为WiFi连接优先级,为非负数,数字越大优先级越高;scan_ssid用于设置是否连接到隐藏ssid的WiFi,其值为1时表示连接。以下是几个常见的network配置:

    • 连接没有密码的WiFi:
    network={  
    ssid="WiFi名称"  
    key_mgmt=NONE  
    }  
    
    • 连接使用WEP加密的WiFi:
    network={  
    ssid="WiFi名称"  
    key_mgmt=NONE  
    wep_key0="wifi密码"  
    }  
    
    • 连接使用WPA/WPA2加密的WiFi
    network={  
    ssid="WiFi名称"  
    key_mgmt=WPA-PSK  
    psk="wifi密码"  
    }  
    

       完成以上步骤后,就可以将MicroSD卡插回树莓派,接上电源启动树莓派。

    提示:

    • 建议尽量采用WiFi方式接入网络,这样可以减少树莓派的接线数量,增加灵活性,便于今后的使用。
    • 不要同时使用有线和WIFi方式连接网络,很可能会造成你的树莓派无法访问。

       步骤 3: 确定IP地址。在没有显示器的情况下,我们很可能不知道树莓派的IP地址,而远程登陆到树莓派首先需要知道树莓派的IP地址,以下是两个解决这个问题的技巧。

    • 网络扫描法
         如图3.2所示,运行Advanced IP Scanner设置要扫描的地址范围,软件会自动识别出您的电脑所在的网段,您也可以根据实际修改,然后点击扫描(Scan)开始扫描,根据网络的规模和速率的不同,扫描的时间也会有所不同。扫描结束后,我们从结果中要到制造商(Manufacturer)为“Raspberry Pi Foundation”就是您的树莓派的网络信息,从中可以找到树莓派的IP地址。

      图 3.2 获取树莓派网络信息
    • 路由器查询法(DHCP)
         在局域网中,IP地址一般由DHCP服务器负责管理,对于家庭或中小型企业的局域网,DHCP服务器的功能通常由路由器承担。如果您拥有路由器的管理权限,那么可以登陆路由器管理界面查找树莓派的IP地址。树莓派Raspbian系统的默认主机名是raspberrypi,您只要在路由器里面找到该主机名对应IP地址即可,不同路由器的管理界面大同小异,请根据您的路由器说明书操作。

    提示:
       路由器为树莓派动态分配的地址是有租期的,租期一到,树莓派的IP地址很可能会改变,因此不便于我们以后的使用。如果路由器具备管理功能,建议在路由器上把树莓派的MAC地址和IP地址绑定在一起,确保同一台树莓派的IP地址永远不会改变(即使更换了操作系统),让我们既能享受自动分配IP地址的方便,又能保证IP地址是固定的,方便今后的各种网络连接操作。

       步骤 4: 登录树莓派。如图3.3所示,运行XShell,新建一个会话(Sessions),并按图3.4填写连接(Connection)和用户身份验证(Authentication)。其中,名称(Name)字段为会话名称,可任意填写;主机(Host)字段为树莓派的IP地址,请根据实际填写;用户名(User Name)字段为树莓派的用户名,第一次登录树莓派使用pi用户即可,今后您可以根据实际新建其它的用户登录;密码(Password)为pi用户的密码,默认为raspberry。

    图 3.3 XShell 新建会话(Session)
    图 3.4 SSH登录配置信息

       XShell登录树莓派后的界面如图3.5所示,这是一个典型的Linux命令行界面,我们可以在这里使用各种命令来控制树莓派。

    图 3.5 XShell登录树莓派

    3.3 配置操作系统

       为了更好的使用树莓派,建议在第一次登录树莓派后进行一些基本的配置。Raspbian系统自带一个叫raspi-config的系统配置工具,可以对树莓派的CPU频率、内存分配、网络、接口等众多项目进行配置。
       运行raspi-config需要root权限,可以在终端输入以下命令运行。

    sudo raspi-config  
    

       raspi-config的界面如图3.6所示。这个界面操作比较简单,用键盘上的上、下键进行菜单项目的选择,左右键进行确定和取消等按钮的选择,回车键进入,Esc键取消返回,空格键选定选项,改完后选择Finish退出(可能会重启)。

    图 3.6 raspi-config

    提示:

    • 其他Linux系统一样,在Raspbian系统的命令行下仅需要输入命令、目录或文件的前几个字符,然后按Tab键就能自动补全,如有相重的,再按一下Tab键,系统会列出当前目录下所有以这几个字符开头的名字。例如:输入“raspi-”,再按Tab键,就能自动补全为“raspi-config”,而输入“raspi”,再按两下Tab键,则会列出以raspi为开头的命令。这种命令行自动补全的功能非常方便,极大的提升了输入命令的效率。
    • sudo命令表示以系统管理员身份执行指令。例如:运行raspi-config需要管理员权限,而登录树莓派的pi用户是一个普通的用户,所以我们需要输入“sudo raspi-config”。这是Linux系统下一个非常常用的方法,后继章节中我们还会不断用到。

       Raspbian系统的语言、时区等国际化选项(Internationalisation Options)的默认值均为英国,为了适应本地化的需要,我们在这里重点介绍如何使用raspi-config设置语言和时区,让树莓派更好的支持中文,其余配置将在今后使用到的时候再进行介绍。

    • 语言和区域设置
         运行raspi-config,进入Localisation Options->I1 Change Locale添加支持语言,如图3.7所示,用上下键和空格去掉“en_GB.UTF-8 UTF-8”,添加以下5项:

    en_US.UTF-8 UTF-8
    zh_CN GB2312
    zh_CN.GB18030 GB18030
    zh_CN.GBK GBK
    zh_CN.UTF-8 UTF-8

    图 3.7 添加支持语言

       添加完成后回车确认,在出现的菜单选择en_US.UTF-8为默认值并回车确认,如图3.8所示。

    图 3.8 设置默认语言环境

       最后,退出raspi-config并运行以下命令重启系统,让设置生效。

    sudo reboot  
    

    提示:
    在Raspbian系统中,并非所有的软件都能很好的支持中文,所以我们还是把系统的默认语言环境设置为en_US.UTF-8。

    • 设置时区
         Raspbian系统的默认时区为格林威治时间 (GMT),要比北京时间慢8小时。进入Localisation Options->I2 Change Timezone,选择Asia(亚洲)再选择shanghai(上海)即可更正时间问题。

    3.4 升级软件包

       Raspbian系统默认安装的软件比较旧,安装完系统后,建议首先进行升级。Raspbian系统使用apt(Advanced Packaging Tool)管理软件包,可以使用apt命令升级软件,升级的速度受apt源的影响比较大,默认使用的apt源由树莓派基金会提供,服务器在国外,速度比较慢,因此建议先修改apt的配置文件,将apt源更换为国内的镜像以提高升级速度。
       Raspbian系统有两个apt源的配置文件,分别是 /etc/apt/sources.list/etc/apt/sources.d/raspi.list。其中,/etc/apt/sources.list是Raspbian系统apt源的配置文件,包含了大部分的软件。/etc/apt/sources.list.d/raspi.list是树莓派基apt源的配置文件,由树莓派基金会单独提供维护,仅包含raspi-config、minecraftpi、树莓派桌面环境、内核固件驱动等少量软件,国内目前只有清华大学和中国科技大学提供有该apt源的镜像,且不是很稳定。因此,这里我们仅对/etc/apt/sources.list进行修改。
       已更换Raspbian系统apt源为例,首先使用管理员权限编辑/etc/apt/sources.list文件,参考命令行为:

    sudo nano /etc/apt/sources.list  
    

       其次,如图3.9所示,使用#注释掉原来的内容,并更换相应的配置。


    图 3.9 更换Raspbian系统apt源

       最后,使用 Ctrl+O 回车保存文件后,Ctrl+X 退出编辑器。

    提示:
    以下为国内主流的Raspbian系统apt源镜像(/etc/apt/sources.list):
    中国科技大学 http://mirrors.ustc.edu.cn/raspbian/raspbian/
    清华大学 https://mirrors.tuna.tsinghua.edu.cn/raspbian/raspbian/
    大连东软 http://mirrors.neusoft.edu.cn/raspbian/raspbian/
    重庆大学 http://mirrors.cqu.edu.cn/raspbian/raspbian/
    浙江大学 http://mirrors.zju.edu.cn/raspbian/raspbian/
    阿里云 http://mirrors.aliyun.com/raspbian/raspbian/
    搜狐 http://mirrors.sohu.com/raspbian/raspbian/

    以下为国内主要的树莓派apt源镜像(/etc/apt/sources.list.d/raspi.list):
    中国科技大学 https://mirrors.ustc.edu.cn/archive.raspberrypi.org/
    清华大学 https://mirrors.tuna.tsinghua.edu.cn/raspberrypi/

       修改完后,依次执行以下命令就可以完成升级,升级过程一般需要几十分钟甚至几个小时才能完成,请耐心等待。

    sudo apt update # 更新apt源  
    sudo apt upgrade # 更新已安装的软件包  
    sudo apt dist-upgrade # 升级系统  
    

    3.5 关机和重启

       树莓派本身没有开关机按钮,但我们不建议直接拔插电源来关机或重启,而是使用以下方法。

    • 关机可以使用以下任一条命令:
    sudo shutdown -P now  
    sudo halt  
    sudo poweroff  
    
    • 重启可以使用以下任一条命令:
    sudo reboot  
    sudo shutdown -r now  
    

    3.6 本章小结

       本章首先介绍了运行树莓派所需的硬件和软件,其次介绍了安装Raspbian系统的方法,然后介绍了在没有显示器的条件下采用ssh方式登录树莓派的方法和技巧,简单介绍了配置Raspbian系统的基本知识,讨论了升级Raspbian系统的方法,最后介绍了关机和重新系统的几个基本命令。

    相关文章

      网友评论

        本文标题:第3章 让树莓派运行起来

        本文链接:https://www.haomeiwen.com/subject/hxctuqtx.html