「树莓派」是什么以及普通人怎么玩?

关注者
6,688
被浏览
1,136,012

62 个回答

我两年前买的(约2013年),上面搭了十来种服务,比如:
  • 一个个人网站,虽然我在国外买了专业的网站空间,但是在自己家里搭建一个,放些好玩的东西,也蛮有意思的,更新起来也不需要FTP了,直接拷贝就可以了。服务器上顺便搭建了一个家庭相册,由于是局域网,速度很快。
  • 一个Git服务器,用来存放自己的部分代码,比如有些代码不想放在github上的,可以放在这里
  • 一个BT下载机(transmission),可以远程操作,随时随地的下载。
  • 家庭NAS,把所有的文档、电影、音乐、照片都放在这里,共享出来,家里的所有设备(手机、平板、电视盒子、电脑)都可以随意存取,再也不用担心iPhone,iPad的空间不够了,随时可以看在线电影。
  • 一个AirPlay服务,可以把苹果设备的音乐无线投放到树莓派上的音箱,用的是ShairPort
  • 一个私有云服务ownCloud,可以在任何地方,包括用手机,上传下载文件,同步日历等。这个服务比较慢,是唯一一个让我有购买新版Pi的理由。
  • 一个闹钟,整点会报时(早上第一次报时是女儿喊大家起床的录音),用Cronjob设置,顺便把当前的温度,AQI,PM2.5指数都报出来,本来用的是Google的翻译引擎在线翻译,后来Google翻译挂了,就把翻译好的音频文件下载下来,也可以用。
  • 用Cronjob在每周和每天不同的时间段,播放不同的儿歌,三字经,百家姓什么的,给家里的小朋友听,会不由自主的跟着学。
  • 一个语音信箱,发送邮件到一个指定的邮箱,邮件的内容就会被转换成语音,从树莓派的音箱播放出来。这个服务目前已经挂了,因为不能访问Google。有离线的TTS引擎,我也装了,叫做espeak,声音太烂了,难听,可能百度也有类似服务,没有研究过
  • 一个Twitter机器人,每天定时把当地的天气情况发送到twitter,居然还有人follow它。
  • 网络收音机,用的不多,因为找不到好的广播流地址
  • 一个邮件同步器,把我常用的邮箱定时同步到本地,用的是offlineimap,然后用mutt收发,由于我的常用邮箱是Gmail,目前此功能也挂了
  • 自动上传视频文件到百度盘,我用iPhone或者小米运动相机拍摄的视频,我只要把它拖到NAS的一个目录里面,脚本就会自动把这些视频重新命名,把文件名改成日期和时间,方便以后查找,然后自动上传到百度云,同时自动按日期分类
  • 一个网络跳板,我可以远程操作家里的电脑,只要家里的电脑主板支持WAKE-ON-LAN都可以。这个和前面的几个功能一样,得要求你的宽带有公网IP,登录到树莓派后,执行命令激活其他电脑。
  • 一个网站资源下载器,比如文章、图片。可以写一些脚本去解析你常去的网站论坛,自动下载图片:汽车、风景、人文、美女等等。用SQLite,保存文件的MD5,小文件,重复文件自动删除。程序中把User Agent设置为知名浏览器,比如Chrome, IE等,否则可能会被拒绝下载
  • 一个dnsmasq服务,用来做内网的DNS服务器,彻底解决了女儿看优酷动画片上瘾的问题,cronjob定时把youku.com解析到127.0.0.1,只有规定的时间可以看优酷。这个服务还可以用来解决另外两个问题:过滤广告网站、访问被ISP通过DNS解析过滤的网站,比如Google,Gmail什么的,家里的设备无须安装任何软件,也不需要做设置。
  • 一组Yeelink的脚本,用来同步Pi的性能指标(比如CPU利用率等)到云端,用于在手机上显示。并且还可以用手机去控制Pi上面跑的程序,目前我只写了一个用来控制BT程序的开和关。有兴趣的可以移步这里:Yeelink - 连接世界到云端,专注物联网云服务去看看他们的教程。
补充:
  • 我的Pi是有自己的域名的,由于电信的公网IP会变,所以Pi里面有个脚本,定时检查自己的IP是不是变了,如果变了,就通过DNS服务商的API,自动更新域名解析,没有这个设置的话,万一IP变了,无法从外面访问。
  • Pi外接的是笔记本上拆下来的硬盘,居然连续跑了两年多还没有坏,24x7,实在是让我惊讶。除了偶尔几次接口莫名其妙的接触不良,重新插拔一下就好了。
  • 对于上面提到的几个基于Google的服务,如果不做任何设置,是不可以使用的。实际上我还是可以用,比如translate.google.com或者offlineimap。方法是:定期把可用的Google IP更新到dnsmasq里面。IP失效后,再换一个就可以了。
  • 上面提到的各种应用,其实都可以在一个安装了Linux的普通PC上实现,但是Pi特别的地方,就是它的尺寸小,不耗电,无噪音,价格低。大部分人不会把一台PC放在家里24小时的开着,却可以接受Pi这样24x7的开着。
虽然买了两三年,至今觉得用起来挺好的,就那么安静的躺在角落里,省电绿色环保。至于普通人能不能这么玩,我觉得只要有些许编程基础,完全可以玩,去网上搜搜,找些现成的代码,改改就可以了。当然如果一点编程基础都没有,搞些简单的还是可以的。按照网络教程来就可以了。

---分割线,以上是树莓派一代的应用,下面是三代的应用---

最近买了树莓派3,性能大大的提高了,一代还在服役,没有任何问题。我把一些应用分散到两个Pi上了,为了负载均衡。
  • 一个视频编辑工作站,安装了avconv和ffmpeg,用来做视频的编辑,我主要用来做视频分割。比如,运动相机或者iPhone拍出来的视频,首尾有些被手挡住的镜头,可以用avconv切割掉,视频多了才能看出效果,因为视频编辑比较耗时,可以把时间点写的脚本里,让它慢慢跑。也可以做其他的视频编辑,比如转码什么的。
  • 一个个人开发环境,给vim安装了一堆常用的插件,又安装了MySQL,Redis等等。这样,你可以在任何时候登录上来做开发,无论你在家里、公司还是别处,一句话:你熟悉的开发环境触手可及。
  • 升级版的电视儿童锁,Youku被定时屏蔽,可是她摸索了后,转而去看本地下载过的动画片,于是我把电视接在小米智能插座上,定时给电视断电,结果被她发现断电后,再去重启插座就可以了(按那个白色按钮,她的原话)。所以再追加了一个脚本,定时把下载过的动画片的目录的execute权限去掉,这样小米盒子就无法读取了。
  • 准备在上面跑一个Volunteer Computing Project,具体项目在这里(BOINC),最近比较忙没有时间捣鼓,等空了再弄吧。

更新日志:
  • 2015-08-17 第一次更新
  • 2016-06-14 稍微加了点树莓派3的内容
  • 2016-11-24 收到知乎通知,由于众所周知的原因,该文章被系统隐藏。经过多次的猜测和更新,终于在感恩节的今天回来了,我是该’感恩‘呢?还是无奈呢?
1、树莓派是个便宜的教育用的“电脑”,我觉得它的配置完全对得上这个称号,用来写点脚本,跑个简单的程序完全没问题,简单的上网什么的毫无压力。
2、普通人是个什么定义?如果是非程序员的普罗大众,那树莓派没什么好玩的。甚至好多人现在回家都不开电脑了,就拿pad看看电视玩玩游戏,树莓派作为一个微型电脑,对普通人来说有什么好玩的?别逗了。就说它的性能,跟你手里的手机性能都差了十万八千里远。即便是你手机的性能,装个linux对普通人来说有什么意义?没有意义,别说手机了,电脑都不装linux的。

所以如果有需要一个持续开机的电脑,一个用来学习Linux,学习简单编程的电脑,或者用它来打造某些好玩的设备,那它就比较合适。但是如果用来科学上网,你需要的是openwrt路由;如果需要架设网站,你需要的是vps;一个私有git服务器,相信我数据丢失的风险相当大,出门左拐有bitbucket;BT下载和NAS,你需要的是一个真正的NAS;airplay,小米电视都有,安卓机顶盒都有,方式多到简直不要不要的;私有云NAS也会有;上传到百度盘的功能nas也有;网站资源下载是什么,如果是爬站那普通人用不到,如果只是想看新闻,大多数都有rss,你需要的是feedly;dnsmasq在openwrt,这都不是事儿;远程开机关机——openwrt装个pptpd,你就在家里;定时的语音任务——找个旧手机设定闹铃就好了,好多闹铃app支持自己录音的。

折腾久了,就发现你想要的早就有消费级的产品了,何必用自己的时间去折腾呢,人生苦短,快用python。

利益相关,用openwrt路由的树莓pier,我只是拿它写写代码,随时可以通过路由器直接ssh回去,tmux让我随时可以继续写之前的代码,它让我可以随时验证我的想法。

PS:话说树莓派还是一个挺稳定的server。
pi@raspberrypi ~> uptime
10:06:43 up 70 days, 13:05, 1 user, load average: 0.01, 0.02, 0.05