树莓派 (Raspberry Pi) 是什么?普通人怎么玩?(私有云NAS也会有;上传到百度盘的功能nas也有)

作者:王震宇
链接:https://www.zhihu.com/question/20859055/answer/54734499
来源:知乎
著作权归作者所有,转载请联系作者获得授权。
我两年前买的(约2013年),上面搭了十来种服务,比如:
  • 一个个人网站,虽然我在国外买了专业的网站空间,但是在自己家里搭建一个,放些好玩的东西,也蛮有意思的,更新起来也不需要FTP了,直接拷贝就可以了。服务器上顺便搭建了一个家庭相册,由于是局域网,速度很快。
  • 一个Git服务器,用来存放自己的部分代码,比如有些代码不想放在github上的,可以放在这里
  • 一个BT下载机(transmission),可以远程操作,随时随地的下载。
  • 家庭NAS,把所有的文档、电影、音乐、照片都放在这里,共享出来,家里的所有设备(手机、平板、电视盒子、电脑)都可以随意存取,再也不用担心iPhone,iPad的空间不够了,随时可以看在线电影。
  • 一个AirPlay服务,可以把苹果设备的音乐无线投放到树莓派上的音箱,用的是ShairPort
  • 一个私有云服务ownCloud,可以在任何地方,包括用手机,上传下载文件,同步日历等。这个服务比较慢,是唯一一个让我有购买新版Pi的理由。
  • 一个闹钟,整点会报时(早上第一次报时是女儿喊大家起床的录音),用Cronjob设置,顺便把当前的温度,AQI,PM2.5指数都报出来,本来用的是Google的翻译引擎在线翻译,后来Google翻译挂了,就把翻译好的音频文件下载下来,也可以用。
  • 用Cronjob在每周和每天不同的时间段,播放不同的儿歌,三字经,百家姓什么的,给家里的小朋友听,会不由自主的跟着学。
  • 一个语音信箱,发送邮件到一个指定的邮箱,邮件的内容就会被转换成语音,从树莓派的音箱播放出来。这个服务目前已经挂了,因为不能访问Google。有离线的TTS引擎,我也装了,叫做espeak,声音太烂了,难听,可能百度也有类似服务,没有研究过
  • 一个*代理服务,家里所有的设备都可以通过它FQ(设置proxy.pac)。并且还有一个脚本7x24的去扫描可用的Google IP。20多万个IP,大概只有100个左右可以用,由于是单线程,一周不到才可以扫描完一轮。
  • 一个Twitter机器人,每天定时把当地的天气情况发送到twitter,居然还有人follow它。
  • 网络收音机,用的不多,因为找不到好的广播流地址
  • 一个邮件同步器,把我常用的邮箱定时同步到本地,用的是offlineimap,然后用mutt收发,由于我的常用邮箱是Gmail,目前此功能也挂了
  • 自动上传视频文件到百度盘,我用iPhone或者小米运动相机拍摄的视频,我只要把它拖到NAS的一个目录里面,脚本就会自动把这些视频重新命名,把文件名改成日期和时间,方便以后查找,然后自动上传到百度云,同时自动按日期分类
  • 一个网络跳板,我可以远程操作家里的电脑,只要家里的电脑主板支持WAKE-ON-LAN都可以。这个和前面的几个功能一样,得要求你的宽带有公网IP,登录到树莓派后,执行命令激活其他电脑。
  • 一个网站资源下载器,比如文章、图片。可以写一些脚本去解析你常去的网站论坛,自动下载图片:汽车、风景、人文、美女等等。用SQLite,保存文件的MD5,小文件,重复文件自动删除。程序中把User Agent设置为知名浏览器,比如Chrome, IE等,否则可能会被拒绝下载
  • 一个dnsmasq服务,用来做内网的DNS服务器,彻底解决了女儿看优酷动画片上瘾的问题,cronjob定时把http://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的服务,如果不做任何设置,是不可以使用的。实际上我还是可以用,比如http://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权限去掉,这样小米盒子就无法读取了。

更新日志:

  • 2015-08-17 第一次更新
  • 2016-06-14 稍微加了点树莓派3的内容
上一篇:wgs84 转百度经纬度坐标


下一篇:Linux 驱动开发 二十七:自旋锁