准备工作

  • 硬件准备
    • 树莓派
    • TF卡 + 读卡器或卡套
    • 5V树莓派电源(电流最好2A左右)+ MicroUSB电源线
    • 网线一根
    • 已联网的路由器
  • 软件准备
    • 下载操作系统(可以到这里下载,这里我选用的Raspbian)
    • 镜像写入工具(Windows可以选用win32diskimager,Linux/OSX直接使用dd即可)

写入操作系统镜像

本例演示如何在OSX下写入Raspbian操作系统镜像。

准备好镜像

-rw-r--r--@  1 james  staff  3276800000  2 16 23:09 2015-02-16-raspbian-wheezy.img

准备好TF卡

df -h
# Filesystem    Size   Used  Avail Capacity  iused  ifree %iused  Mounted on
# /dev/disk2s1  30Gi   32Ki   30Gi     1%        0      0  100%   /Volumes/NO NAME

diskutil list
# /dev/disk2
#    #:                       TYPE NAME                    SIZE       IDENTIFIER
#    0:     FDisk_partition_scheme                        *31.9 GB    disk2
#    1:             Windows_FAT_32 NO NAME                 31.9 GB    disk2s1

在本例中,我们的SD卡就是/dev/disk2。

写入SD卡

sudo diskutil unmount /dev/disk2s1  # 注意,不要使用eject,写入SD卡需要保持连接。

sudo dd bs=4m if=2015-02-16-raspbian-wheezy.img of=/dev/disk2

sudo diskutil eject /dev/disk2

启动系统

开机启动

把TF卡插入树莓派TF卡槽,接上网线和电源。如果有HDMI线,可以连接电视屏幕查看启动过程。

SSH连接树莓派

待启动完成后,从路由器管理界面中找到树莓派IP,然后使用SSH连接到树莓派。

Raspberry in Routes

ssh pi@192.168.1.242 # 默认密码 raspberry

配置树莓派

sudo raspi-config
  1. Expand Filesystem 由于默认启动前,它无法知道当前的配置TF卡有多大,执行该动作可以将根分区扩展到整张SD卡。
  2. Change User Password 可以在这里修改默认密码。
  3. Enable Boot to Desktop/Scratch 选择默认的启动模式,是图形界面还是文本模式。
  4. Internationalisation Options 配置当前的Locale,Timezone,Keyboard Layout。
  5. Enable Camera 是否启用树莓派摄像头功能。
  6. Add to Rastrack 是否要加入树莓派地图,一般不添加。
  7. Overclock 超频设置,自己按要求设置,稳定第一,一般800MHz,900MHz问题不大。
  8. Advanced Options
    • Overscan 可以扩充或者缩小屏幕的设置。
    • Hostname 设置树莓派的主机名,方便网络访问时查看。
    • Memory Split 设置分配多少内存给GPU使用。
    • SSH 是否启用SSH远程访问功能,对于无显示器,鼠标键盘的树莓派,请务必启用该功能。
    • Device Tree 是否启用设备树功能。Device Tree是一种描述硬件的数据结构,它起源于 OpenFirmware (OF)。在Device Tree中,可描述的信息包括(原先这些信息大多被hard code到kernel中):
      • CPU的数量和类别
      • 内存基地址和大小
      • 总线和桥
      • 外设连接
      • 中断控制器和中断使用情况
      • GPIO控制器和GPIO使用情况
      • Clock控制器和Clock使用情况
    • SPI 启用或者禁用自动加载SPI(串行外设接口)内核模块,需要其它的外设产品例如PiFace。
    • I2C 是否自动加载I2C内核模块
    • Serial 是否启用shell与串口通信功能,如果要使用GPIO,建议启用。
    • Audio 强制音频通过HDMI或者3.5毫米接口输出。
    • Update 将这个工具升级到最新版本。

修改完配置后,重启树莓派。

由于其不带BIOS,所有的BIOS配置信息都记录在/boot/config.txt中。

更新系统到最新版本

sudo rpi-update

更新apt

sudo apt-get clean

sudo apt-get update

sudo apt-get -y upgrade

sudo apt-get -y dist-upgrade

如果apt-get很慢的话,不妨修改/etc/apt/sources.list,换一个镜像

在更新过程中,如果碰到 Hash Sum Mismatch 错误,那么恭喜你中奖了,这个问题也困扰了我一整天,查了Google也找不到比较靠谱的解决方案。这个问题之所以会产生,是因为你所使用的网络供应商,有些会设置一些透明缓存,以增加网络内部速度,减少出口的流量,你获取的某些文件不是源服务器上的真正文件,是从缓存中获取的,当缓存中获取的一些校验信息跟源中不一致的时候,自然提示校验失败,无法继续更新。

此问题实际上跟apt软件仓库的格式设计有关。新发布的版本的软件仓库更新比较频繁,按道理缓存中的文件应该同步更新,可惜因为多个镜像站点的有快慢,因此造成了缓存无法保证一致性。

当网络提供商足够有实力,不设置透明缓存时,这个问题是不存在的。这就是为什么有些人反馈使用无线上网卡(移动、联通的3g网络)就一切OK,一单换回长城宽带、或者宽带通就不行了。

解决问题的办法主要有以下2个:

  1. 翻墙,或者把树莓派连到可翻墙的笔记本。
  2. 第二种方法就比较折腾了。
    • 修改/etc/resolv.conf,新增Google的DNS服务IP。

        nameserver 8.8.8.8
        nameserver 8.8.4.4
      
    • 先禁用 /etc/apt/sources.list.d 中所有的源,再执行如下命令

        sudo rm -rf /var/lib/apt/lists/*
        sudo apt-get clean
        sudo apt-get update --fix-missing
      

到这里,树莓派的基础配置基本完成,Take your time and enjoy it!