把你的树莓派变成家庭媒体中心+下载机

今天收到了小派,UK产的绿板子,还配了个透明盒子,装在里面闪亮亮的很好看,而且只有卡片大小,寻思着用它做什么好呢?想来想去,看到人家拿小派作家庭媒体中心,还有人拿它当下载机,于是就萌生了一个家庭媒体中心+下载机二合一的东东,白天看电影,晚上添加任务让它自己下载到SD卡里,第二天就能看了,接上无线网卡,通过手机控制它,遥控器都省了。下面我们就开始吧。

你需要的东西:

也可能需要的东西:

高大上的奢侈品

[amazon_link asins=’B07BJ53TVT,B01CDBMT70,B01MDUA0H2′ template=’CopyOf-ProductGrid’ store=’boyd-23′ marketplace=’CN’ link_id=”]

需要安装的软件如下:

PC端:

  • putty(一个SSH工具,用于远程连到你的树莓派上,这样你就不用把你的小派挪来挪去了)
  • FileZilla(一个开源的ftp客户端,这样你可以把你电脑上的文件直接拖到你的小派里了)
  • win32DiskImager-binary(把网上下载的镜像刷到SD卡里)

前两款软件的安装都非常简单,直接一路下一步,第三款直接解压缩,这里就不介绍了

树莓派端:

  • Raspbmc(Xbmc的树莓派版,Xbmc是一个流行的媒体中心系统,基于linux,可以方便的播放你各种设备上的音频视频图片拽过来在你的Xbmc上播放,也能播放广播和在线视频,这里要赞一下Raspbmc的作者,Sam Nazarko,他还是一个19岁的学生,相当厉害)
  • aria2c(Linux下的命令行下载利器,nani?命令行???你是在逗我么,莫怕,接着往下看)
  • yaaw(基于web的aria2c的UI,可以添加任务,查看任务进度)
  • nginx(http服务器,用于承载yaaw)

我们需要从Raspbmc网站下载镜像,这里你有两个选择,

  1. 安装的时候比较痛苦:参照这篇教程,点击页面上的link链接或这里下载windows installer,按照页面上的指导向SD中刷入boot镜像(这个镜像只包含最基本的boot,在启动后会联网下载最新的镜像),完成后插入SD到你的树莓派中,开机,并为你的树莓派插上网线(此时无线网卡不可用),用前面提到的线缆连接上显示器(或电视机),看着蓝色的屏幕开始品尝你的程序员饮料吧,痛苦开始了,视你的网速,我是在等了2个小时之后突然发现它只走了20%然后果断放弃了
  2. 更新的时候比较痛苦:访问Raspbmc下载页面,点击页面上的Standalone Image下载完整镜像,解压缩得到一个sd.img,然后使用win32DiskImager-binary.exe工具刷入SD卡中(选择解压出的sd.img,然后“设备”里选择你的SD卡,注意一定要是你的SD卡,别选错了,然后点“写”),等刷成功之后,把SD插入树莓派中,启动,你就可以使用了,这个时候你也可以使用你的无线网卡了,需要配置一下,一会说。win32DiskImager

到此,媒体中心安装完成,恭喜你获得了“事倍功半”成就(Why?看了这么久蓝屏,就完成了一半,不是事倍功半么),好的,继续往下看!

我们开始配置下载机。

在PC上打开putty,进你的路由器看你的树莓派地址是多少,填进puttyHost Name(or IP address)栏里,点Open,
putty

在弹出的窗口中输入用户名pi,回车,然后是密码raspberry(屏幕上不会有任何显示),回车,你就打开了一个树莓派的shell,可以远程操作啦!(nani?又是命令行,这回帮不了你了,只能用命令行了,不过顺带学习一下linux的精髓也是不错的嘛,对吧)。我们开始安装软件。

第一次连接ssh可能还要进行一些配置,根据提示点ok就行了。

进入后先update一下软件源,使用命令

sudo apt-get update

首先安装aria2c

在shell窗口使用下面的命令进行安装

sudo apt-get install aria2

接下来我们做一些配置

mkdir ~/.aria2
touch ~/.aria2/aria2.session
nano ~/.aria2/aria2.conf

在aria2.conf里面输入如下内容,可以直接复制后在窗口里按鼠标右键粘贴

dir=/home/pi/Download #download folder, change to what you what
disable-ipv6=true
enable-rpc=true
rpc-allow-origin-all=true
rpc-listen-all=true
#rpc-listen-port=6800
continue=true
input-file=/home/pi/.aria2/aria2.session 
save-session=/home/pi/.aria2/aria2.session 
max-concurrent-downloads=3

按ctrl+o 保存,回车一下,然后按ctrl+x退出编辑,完了后运行:

aria2c --conf-path=/home/pi/.aria2/aria2.conf

测试有没有错误,如果没有错误的话按一下Ctrl + C终止当前程序,继续往下。

接下来我们让aria2c成为系统服务并且开机自启动

sudo nano /etc/init.d/aria2c

粘贴如下内容到窗口,注意格式一定要保持一致

#!/bin/sh
### BEGIN INIT INFO
# Provides:          aria2
# Required-Start:    $remote_fs $network
# Required-Stop:     $remote_fs $network
# Default-Start:     2 3 4 5
# Default-Stop:      0 1 6
# Short-Description: Aria2 Downloader
### END INIT INFO

case "$1" in
start)
    echo -n "Starting aria2c"
    sudo -u pi aria2c --conf-path=/home/pi/.aria2/aria2.conf -D 
;;
stop)
    echo -n "Shutting down aria2c "
    killall aria2c
;;
restart)
    # killall aria2c
    sudo -u pi aria2c --conf-path=/home/pi/.aria2/aria2.conf -D
;;
esac
exit

之后按ctrl+o保存,回车一下,再按ctrl+x退出编辑

使用命令进行权限更改

sudo chmod 755 /etc/init.d/aria2c

测试服务是否可以启动:

sudo service aria2c start

如果只显示Starting aria2c,没有其他错误提示的话就成功了
添加aria2c服务自动运行:

sudo update-rc.d aria2c defaults

到此aria2c就可以开机自启动了。

下来是安装nginx web服务器

在shell窗口使用命令进行安装

sudo apt-get install nginx

由于Raspbmc以及自带的远程管理占用了80端口,因此我们需要更改nginx的端口号使他们不相互冲突,通过修改nginx.conf文件实现

使用下面的命令进入修改

sudo vi /etc/nginx/sites-available/default
小技巧
当你在命令行输入路径时,可以使用tab键进行自动补全,如果有多个候选项,按tab键进行切换

进入vi后,输入

/listen

按回车 查找listen,找到

server {
#listen 80; ##...
#listen [::]:80 ...

按方向键移动光标(nani?不能用鼠标?对不起,不能)到第一个listen的”#”,按del删除,再移动光标到80,按一下字母i,进入编辑模式,此时就可以自由编辑了,把80改为8080,改完后应该是这个样子:

server {
listen 8080; ##...
#listen [::]:80 ...

按一下esc键,回到浏览模式,然后按一下冒号键(shift + ;键),输入wq,保存退出
edit-nginx-conf

使用如下命令启动nginx

sudo /etc/init.d/nginx start

进入http://树莓派的ip:8080/你能看到Welcome to nginx!说明安装成功(OY!)
nginx

再来是yaaw,

这里下载yaaw,可以使用git直接下载到树莓派上或者在PC端点击页面的右下角那个“Download Zip”下载最新版本,解压缩,再通过FileZilla上传到你的树莓派上的,我推荐第二种方式,这样你就不用命令行了:)

在PC端解压缩yaaw的压缩包,解压出的文件夹叫yaaw-master,我们把它重命名名为yaaw

我们还需要更改一下nginx的www目录访问权限,才能使用ftp把yaaw扔进去

sudo chmod 777 /usr/share/nginx/www/

之后打开FileZilla,在”主机”处输入你的树莓派的ip,用户名输入pi,密码输入raspberry,点击“快速连接”,然后在下面“本地站点里”选择yaaw所在的本地路径,在“远程站点”里定位到/usr/share/nginx/www,把刚才的yaaw拖进去就行了。
FileZilla
然后在你的shell上使用命令

sudo chmod -R 777 /usr/shared/nginx/www/yaaw

让yaaw文件夹可以被浏览器访问。

然后在pc的地址栏里输入http://树莓派IP:8080/yaaw,就能看到任务管理界面了,它看起来像这个样子
yaaw
到此大功告成,OY!!

别着急,我们还需要一些额外的工作使你以后的使用更方便。有点耐心,就要完了。

一些额外的工作:

  • 首先要把系统语言改成中文,在System-Settings-Appearance-International里把Language改成Chinese(Simple),光标移开就自动换了,然后把字符集改成Chinese Simplified (GBK)
    language setting
  • 无线网的配置,这个需要在树莓派的UI界面进行,进入程序-Raspbmc Settings-Network Configuratioin
    netword setting
  • 请为你的小派在路由器里分配一个固定的IP地址,这样可以省去很多麻烦。

远程控制:

你现在有两种方式来远程控制你的树莓派了,

  • 通过浏览器访问http://你的树莓派IP 来访问,他看起来像这样
    browser remote
  • 通过智能手机,参考这里 Android, IOS

知识加油站:

什么是树莓派?
树莓派是一款基于ARM的微型电脑主板,以SD卡为内存硬盘,卡片主板周围有两个USB接口和一个网口,可连接键盘、鼠标和网线,同时拥有视频模拟信号的电视输出接口和HDMI高清视频输出接口,以上部件全部整合在一张仅比信用卡稍大的主板上,具备所有PC的基本功能只需接通电视机和键盘,就能执行如电子表格、文字处理、玩游戏、播放高清视频等诸多功能。 Raspberry Pi B款只提供电脑板,无内存、电源、键盘、机箱或连线。

最后让我们的主角亮个像吧:

IMG_20131214_234139[1]

13 Comments

  1. 博主写的真是不错!按照你的教程 我成功了。你写的我相信很多人都看到了。感谢!

    我中间遇到一个问题,你开始提到安装sudo apt-get install aria2c 我试了很多次没有成功,最后用sudo apt-get install aria2成功了,不知道是什么原因。

  2. 兄台,你那个restart脚本有问题

    由于这个脚本和执行进程都叫arai2c,killall的时候会将服务进程和正在执行的脚本都杀死,后面的sudo -u pi aria2c –conf-path=/home/pi/.aria2/aria2.conf -D 是不会执行的

Leave a Reply

Your email address will not be published. Required fields are marked *

This site uses Akismet to reduce spam. Learn how your comment data is processed.