Total Pageviews

Sunday, 8 February 2015

树莓派入门

首先来看看树莓派是什么:
树莓派英语Raspberry Pi),是一款基于Linux系统的只有一张信用卡大小的单板机电脑。它由英国的树莓派基金会所开发,目的是以低价硬件自由软件刺激在学校的基本的电脑科学教育。
这学期即将结束的时候,我因为机缘巧合,拿到了一块树莓派。
我 的这块树莓派型号是B+,拥有512M的RAM和四个USB接口,理论上,把它接入电源,再连上网络,就可以作为一个独立的主机来工作了,而由于其 GPIO的接口,还可以和物理世界发生联系,所以拥有极大的想象空间。它可以用来做服务器,智能家居控制中心,机器人,无人机,甚至遥控坦克,它几乎可以 做任何好玩的东西。
当然,想象很丰满,现实很凌乱。面对着一块赤裸的电路板,我能做点什么呢?
我首先做的就是上网搜索,忧伤 的是,看上去资料最全的网站是个非常封闭的论坛,充斥着各种VIP邀请码,很多内容不注册不充值VIP还无法看,我认为这不仅违背了互联网的精神,还违背 了树莓派的精神,所以我决定做点违背安全的事情,我用一个并发软件穷举了这个论坛的100个账号,尝试用二十种弱口令登录,然后很顺利的发现一个弱口令账 户,用这个账户登录上去,看到了隐藏的教材,但我遗憾的发现,这些所谓的内部资源,依旧不能解决我的问题,没有一个帖子接地气的告诉你,怎么从一块板子开 始,连接和进入它的里面。
于是我转而开始寻找外文资料,经过几个小时的摸索,终于成功的进入了树莓派,当然,我还没涉及到任何物理世界的联 系,离玩转树莓派还很遥远,不过万事开头难,走好第一步总是值得高兴的。但我想,如果有简明完善的入门教程,我会更快体验到树莓派的乐趣,所以我决定趁热 打铁,写一个适用于完全从0开始的小菜鸟的教程,希望能让你进步到我这样的大菜鸟。

认识树莓派

我们可以在网上找树莓派的资料来看,但要拿在手上才会有感性的认识

如 图所示,树莓派的能连接的地方大致有这么几种:USB,网卡,HDMI,电源,gpio,SD卡插槽。作为初学菜鸟,我们暂时用不到gpio。我们只需要 接入电源/SD卡/网络 就行了。电源没什么多说的,接上插头就行了,剩下的两个东西就稍微麻烦一些了。SD卡作为储存器,我们要把操作系统写入到这里面。

写入系统

你需要一张至少8个G的SD卡,注意这里有一个小坑,树莓派需要的不是大的SD卡,而是小一些的SD卡,并且,不是所有SD卡都能正常工作,这里有一份树莓派可工作和不可工作的SD卡清单,请自行查阅。
接下来,将SD卡用读卡器连入电脑,在电脑上将操作系统写入树莓派。由于我只试过Windows下的写入,所以如果你是Mac用户,只有在网上找找相关的流程了。Windows下,先下载树莓派的操作系统(debain)到本地并解压:http://pan.baidu.com/s/1o2oz0 ,然后下载一个叫做win32diskimager的工具:http://www.onlinedown.net/soft/110173.htm
第二步,打开win32diskimager,在软件中选择操作系统debain解压出的的img文件,“Device”下选择SD卡的盘符,然后选择“Write”

中途可能会弹出一个框,选但别管他,选“Yes”,继续安装。
然后就开始安装系统了,根据你的SD速度,安装过程有快有慢。 安装结束后会弹出完成对话框,说明安装就完成了,如果不成功,请关于防火墙一类的软件,重新插入SD进行安装.
值得一提的是,安装完成后会发现SD卡只有几十M了,这不是卖SD卡的商家坑你,而是因为linux下的分区win下是看不到的,正常现象。如果用分区软件查看SD卡,是能看到它的真实大小的。
接下来把SD卡从电脑拔出,插到树莓派里面,至此,我们完成了系统的安装,接下来,是网络了。

远程连接

有两种种方式可供树莓派连入网络
1.无线网卡
2.直接接网线
事实上,由于我没有视频设备,所以只能通过远程来控制树莓派,而这又必须要求先连入网络,问题在于,如果不设置无线网络,即使用无线网卡也是连不到网络的,所以我只有采用网线直连的方法。
我将路由器的一条网线接到树莓派上面,路由器已经做好了设置,这意味着插入网线就可以获得一个内网IP,并且可以上网。不过问题又来了,我们怎么知道树莓派的IP呢?如果不知道IP就无法远程连接树莓派,也就无法做任何操作。
很简单,其实在路由器的管理页面就看得到。

如图,有一个名叫raspberrpi的主机,它就是树莓派,而它的IP地址是192.168.0.103,这下问题就变得轻松了许多。
我们下载远程连接工具Putty,填入树莓派的IP地址

点击Open,来到登录界面

输入树莓派的默认账号和密码:
账号:pi
密码:raspberry
点击回车,就看到了我们熟悉的Linux界面


其实这个时候,我们已经在这块小电路板里面了!当我第一次进入树莓派的时候,简直比第一次进入生命的大和谐还要兴奋。
看着树莓派的红黄小灯灵动的闪烁,我觉得它能满足我关于这个世界的种种奇妙设想,当然,前路是坎坷的。
我 给树莓派安装了远程图像连接程序,然后发现上面还有不少游戏,但它的作用远不止这点,它是物联网,它是连接,它也可以是分布式控制或去中心化主机,但最重 要的是,它激发起人们对于神奇世界的探索欲望。其实它被开发的目的就是教育孩子,从这一点上,我觉得它的意义不比苹果手机或任何优秀产品逊色。
或许,树莓派的意义就是那句计算机史上前所未有的名言警句:
“Hello,World”

用树莓派做个自己用的小服务器,翻墙路由器,或者控制中心什么的还是没问题的 。
---------------

树莓派初体验,安装Ubuntu 14.04 LTS

关于树莓派

动机

如之前在某篇文章最后写的,发现了可以用ipv6做反向代理,以及树莓派可以安装Ubuntu 14.04后,原本只是感兴趣的树莓派瞬间就提上了购买的日程。

购买

树莓派、外壳和散热片

当然还是去某宝,买了树莓派2B和一个外壳以及散热片。

HDMI转DVI转接口

因为显示器不支持HDMI,然后考虑到比较流行的HDMI转VGA是从数字信号转为模拟信号,转接口内部用芯片实现,且对于树莓派而言对于HDMI转VGA口选择无源还是有源的争论不绝于耳;所以直接上HDMI转DVI,不需要用到芯片转换,可靠方便多了。注意DVI口也有多种型号,注意显示器的支持。

电源

关于电源的问题,正好我有个SONY的1.5A电源适配器,就直接拿来用了。不过收到的树莓派里说明书中写着要求电源为大于1.8A的,但鉴于我不怎么用USB口,1.5A的树莓派运转起来还算良好。

microSD卡

microSD卡就是坑了,最开始搜到的树莓派需要用哪种内存卡,看到有人说是全尺寸的SD卡我就打算直接用闲置的SD卡了,class 10的应该能满足了;收到货等到要插卡的时候才发现需要的是microSD卡,真不知道是谁说的是全尺寸的SD卡。于是又下单等了一天收到microSD卡和读卡器。

USB HUB

因为本身出发点是做迷你服务器用,所以买了个带电源的USB HUB,供带动移动硬盘。

安装Ubuntu 14.04 LTS

安装Ubuntu14.04完全遵照的Ubuntu wiki中的步骤。

下载并写入

镜像照着wiki中提供的地址下载,下载完后解压.img供写入。
写入到microSD卡安装树莓派官方提供的软件和步骤。将microSD卡插入读卡器,然后插入电脑;打开Win32DiskImager,选择刚才解压的.img镜像,选择microSD卡的盘符,然后write。

安装设置Ubuntu

注意这个Ubuntu镜像并不包含openssh,所以这是必须直连树莓派。
插上键盘,接上显示器,然后接上电源,树莓派就开始工作了。Ubuntu启动完毕后,登录用户名密码都是ubuntu。

开启root账户

对于这个需要折腾的Ubuntu来说,直接用root账户会方便不少。
Bash
sudo passwd root
然后输入当前用户的密码,就是ubuntu了;然后输入两次root的新密码。
Bash
su root
输入root密码就进入root账户啦。

使用全部分区空间

此时Ubuntu并没有利用到全部SD卡的空间,需要手动设置。
Bash
fdisk /dev/mmcblk0
删除第二分区:按d,再按2
重建第二分区:按n,再按p,再按2,再按enter,再按enter,再按w
然后重启Ubuntu
Bash
reboot
输入
Bash
resize2fs /dev/mmcblk0p2
这样Ubuntu就使用到了全部SD卡的空间。

更新源

这是必须的步骤了
Bash
apt-get update
apt-get upgrade

设置SWAP

此Ubuntu本身没有SWAP,需要手动建立,不过这里有个自动完成SWAP设置的软件,此软件会默认设置RAM两倍大小的SWAP分区,所以树莓派中会生成2G大小的SWAP分区。
Bash
apt-get install dphys-swapfile
安装并设置完成后,SWAP即设置完成。

安装SSH服务器

这个是必装的了,允许SSH访问
Bash
apt-get install openssh-server
这样就算初始化设置完成了,因为这个镜像相当于是Ubuntu的最小镜像,所以很多软件或依赖都没有安装,所以可能很多apt-get install都会顺带安装一大堆依赖。

参考