300元 iRaspberry Pi 树莓派 实现超低功耗远程监控、远程下载和家庭共享

2016-07-01 09:00:17 207点赞 1152收藏 132评论

追加修改(2016-07-02 12:59:46):
更正: 安装中文字库和中文输入法命令为: sudo apt-get install ttf-wqy-microhei ttf-wqy-zenhei xfonts-wqy sudo apt-get install scim-pinyin

自从知道了什么值得买,就发现什么都值得买了。张大妈的信仰伴随我多年,今天终于鼓起勇气露(pian)露(jin)面(bi),第一次发原创希望给通过啊啊啊300元 iRaspberry Pi 树莓派 实现超低功耗远程监控、远程下载和家庭共享

好了废话不说,进入正题。

本帖需要有DIY精神,计算机及网络基础也是必须的啦,还需要闲置的移动硬盘

<<<<<<<<<<<<<<<分割线>>>>>>>>>>>>>>

晒一下我的树莓Server,树莓派3B相比前几代配置提升很大,但为何还是百兆网口,这便将有线网络传输速率死死地限制在12.5MB/s的速率以内。

300元 iRaspberry Pi 树莓派 实现超低功耗远程监控、远程下载和家庭共享

300元 iRaspberry Pi 树莓派 实现超低功耗远程监控、远程下载和家庭共享

手机控制端截图,已经在用Yeelink的小伙伴们可以看到我,目前只有CPU负载数据不全

300元 iRaspberry Pi 树莓派 实现超低功耗远程监控、远程下载和家庭共享

300元 iRaspberry Pi 树莓派 实现超低功耗远程监控、远程下载和家庭共享

迅雷远程下载页面

300元 iRaspberry Pi 树莓派 实现超低功耗远程监控、远程下载和家庭共享

访问SambaFTP共享服务(移动硬盘)截图

300元 iRaspberry Pi 树莓派 实现超低功耗远程监控、远程下载和家庭共享

移动端访问FTP服务(移动硬盘)截图

300元 iRaspberry Pi 树莓派 实现超低功耗远程监控、远程下载和家庭共享

从电脑拷贝文件到树莓派截图(这是树莓派是有线连接到路由器的,如果用树莓派无线连路由器速度峰值4MB/s,均值估计3MB/s)

300元 iRaspberry Pi 树莓派 实现超低功耗远程监控、远程下载和家庭共享

从树莓派拷贝文件到电脑截图(树莓派是有线连接路由器)

300元 iRaspberry Pi 树莓派 实现超低功耗远程监控、远程下载和家庭共享

树莓派稳定运行30天截图

300元 iRaspberry Pi 树莓派 实现超低功耗远程监控、远程下载和家庭共享

<<<<<<<<<<<<<<<分割线>>>>>>>>>>>>>>

〇、我为什么要这样做?

1)一块硬盘集中存储数据,让WLAN内电脑或便携设备能随时存取数据,也想过买NAS或者攒NAS,但觉得贵而且估计买来用得少,毕竟我对数据的速率要求不高,毕竟主要用来存取文档;

2)工作之余,也要看个电影美剧什么的,所以还需要下载,而且必须是远程下载,这样在任何地方发现好资源都可以提前下载(不限于电影);

3)单位在外地,网速快方便下载电影,如果在单位看不完也可以带回家再看,但总不能抱着NAS来回跑吧,所以需要移动硬盘。还要有权限管理移动硬盘上的数据,比如空间不够删个电影什么的,因为取消挂载和挂载两个步骤比较烦人,建议用Yeelink的开关型数据控制挂载和取消挂载;

4)远程监测树莓派服务器,查看温度啊负载啊之类的,远程开启或关闭业务,比如下载业务和共享业务,避免敲命令,也可以实现终端APP控制。(基于Yeelink

<<<<<<<<<<<<<<<分割线>>>>>>>>>>>>>>

一、实现功能

1)迅雷远程下载到与树莓派相连的移动硬盘;

2)一个账号实现在移动硬盘上SambaFTP文件共享及管理权限;

3)远程监控树莓派,远程开启或关闭树莓派上的服务。

<<<<<<<<<<<<<<<分割线>>>>>>>>>>>>>>

二、所需材料

1)树莓派3B,电源肯定是需要的,建议再配个外壳加风扇(可以在某宝买,主要是便宜);

300元 iRaspberry Pi 树莓派 实现超低功耗远程监控、远程下载和家庭共享2016年新款树莓派3代B型 Raspberry Pi Model 3 B树莓派3B¥298京东

2)移动硬盘;

3网线

4PCMac,需安装puttySecureCRTSSH软件。

<<<<<<<<<<<<<<<分割线>>>>>>>>>>>>>>

三、文件共享服务部署流程

1)连接以下设备

树莓派——无线路由器LAN口(RJ45网线)(也可以用无线,但是速度慢);

树莓派——移动硬盘(USB线);

TF卡插入树莓派卡槽内,需提前在TF卡上写好raspbian镜像(树莓派官网有提供,写入方法自行百度)。

300元 iRaspberry Pi 树莓派 实现超低功耗远程监控、远程下载和家庭共享闪迪(SanDisk)至尊高速移动MicroSDHC UHS-I存储卡 TF卡 16GB Class10 读速80Mb/s闪迪TF卡¥33.5京东

接下来就是给树莓派树上电开机,在无线路由器里查看树莓派获取的IP地址,例如是192.168.1.17。打开PCMacSSH软件,新建连接:

IP地址:192.168.7.17,端口:22

用户名:pi

密码:raspberry

到这里就可以敲命令了。

2)基本配置(nano编辑器的用法请自行百度)

扩展TF可用空间,执行:sudo raspi-config

选择Expand Filesystem

修改更新源,执行:sudo nano /etc/apt/sources.list

添加以下代码:

deb https://mirror.sysu.edu.cn/raspbian/raspbian/ jessie main contrib non-free

deb-src https://mirror.sysu.edu.cn/raspbian/raspbian/ jessie main contrib non-free

保存退出;

升级软件,执行:

sudo apt-get update

sudo apt-get upgrade

花时较长,需耐心等待;

安装中文字库与中文输入法,执行:

deb https://mirror.sysu.edu.cn/raspbian/raspbian/ jessie main contrib non-free

deb-src https://mirror.sysu.edu.cn/raspbian/raspbian/ jessie main contrib non-free

安装exFATNTFS支持软件,执行:

sudo apt-get install exfat-fuse

sudo apt-get install fuse-utils ntfs-3g

3)设置共享用户,挂载硬盘

创建共享用户share,设置它属于users用户组,设置密码为share,创建/home/share文件夹,执行:

useradd share -m -G users

passwd share

尝试挂载移动硬盘到/home/share下,执行:sudo fdisk -l

查看移动硬盘的路径,一般来讲是/dev/sdb1,此时执行:

sudo mount -o uid=1001,gid=1001 /dev/sdb1 /home/share

(添加-o 参数是针对exFATNTFS移动硬盘,因为exFATNTFS格式的硬盘没有LinuxUnix权限,有条件的话可以把硬盘格式化成ext3ext4,没条件就算了,我用的exFAT和NTFSOK。)

4)部署Samba服务

部署Samba服务,执行:sudo apt-get install samba samba-common-bin

安装完成后进入配置,执行:sudo nano /etc/samba/smb.conf

smb.conf末尾添加:

[share]

comment = share

path = /home/share

valid users = @users

public = no

writable = yes

browseable = yes

create mask = 0765

保存退出;

申明family用户为Samba用户,执行:smbpasswd -a share

重启Samba服务,执行:sudo /etc/init.d/samba restart

5)部署FTP服务

部署FTP服务,执行:sudo apt-get install vsftpd

安装完成后,修改配置文件,执行:sudo nano /etc/vsftpd.conf

修改以下内容:

anonymous_enable=NO

local_enable=YES

write_enable=YES

local_umask=022

保存退出,重启FTP服务,执行:sudo /etc/init.d/vsftpd restart

6)配置迅雷远程下载

解压迅雷下载对应固件(例:Xware1.0.31_armel_v5te_glibc)放在用户文件夹中(如/home/pi/xunlei

(下载链接:https://luyou.xunlei.com/forum.php?mod=forumdisplay&fid=51&filter=typeid&typeid=1

执行:sudo chmod 777 /home/pi/xunlei/* -R

执行:sudo /home/pi/xunlei/portal

THE ACTIVE CODE IS对应处代码为远程下载码,在https://yuancheng.xunlei.com/中绑定账号即可,之后添加下载地址也是在这里;

需停止远程服务时执行:sudo /home/pi/xunlei/portal -s

配置开机自动启动:

执行:sudo nano /etc/init.d/xunlei

添加代码:

#!/bin/sh

#

# Xunlei initscript

#

### BEGIN INIT INFO

# Provides: xunlei

# Required-Start: $network $local_fs $remote_fs

# Required-Stop:: $network $local_fs $remote_fs

# Should-Start: $all

# Should-Stop: $all

# Default-Start: 2 3 4 5

# Default-Stop: 0 1 6

# Short-Description: Start xunlei at boot time

# Description: A downloader

### END INIT INFO

do_start()

{

/home/pi/xunlei/portal

}

do_stop()

{

/home/pi/xunlei/portal -s

}

case "$1" in

start)

do_start

;;

stop)

do_stop

;;

esac

增加权限,执行:sudo chmod 755 /etc/init.d/xunlei

更新开机启动,执行:sudo update-rc.d xunlei defaults

查看状态信息

这部分是非必要的,可以查看一些简单状态信息。

在启动时会有类似一行输出,表示你的控制端口:

your control port is: 9000.

在浏览器中输入https://IP地址:9000/getsysinfoIP替换为你路由器的IP,端口换为你的控制端口),会看到类似如下信息:

[ 0, 1, 1, 0, "42SND1",1, "201_2.1.3.121", "", 1 ]

其中有用的几项为:

第一项:0表示返回结果成功

第二项:1表示检测网络正常,0表示检测网络异常

第四项:1表示已绑定成功,0表示未绑定

第五项:未绑定的情况下,为绑定的需要的激活码

第六项:1表示磁盘挂载检测成功,0表示磁盘挂载检测失败

7)配置移动硬盘自动休眠

安装hdparm实现硬盘自动休眠,执行:sudo apt-get install hdparm

立即休眠sdb1硬盘,执行:sudo hdparm -Y /dev/sdb1

60/12=5min后休眠硬盘,执行:sudo hdparm -S 60 /dev/sdb1

每次重启后自动执行hdparm程序:

执行:sudo nano /etc/rc.local

fi后和exit 0前插入一行命令:hdparm -S 60 /dev/sdb1 &

说明:超过休眠时间后再访问,需要2-3s才能加载出来,休眠能一定程度上保护硬盘。

注意:迅雷服务开启时会一直给其他用户提供下载源,所以服务开启时硬盘一直在工作得不到休眠,可采用关闭服务的方式让硬盘一段时间后自动休眠。

8)配置树莓派重启后自动挂载硬盘

这一部分比较重点,因为挂载不好就没有修改权限,还记得前面3)***挂载硬盘里面对-o参数的描述吧。

但这里不同,执行:sudo nano /etc/fstab

/etc/fstab最后添加代码:

/dev/sdb1 /home/share/ auto defaults,noatime,uid=1001,gid=1001 0 0

至此,服务端的Samba/FTP服务端已经做好。可以在电脑、移动终端、电视盒子上使用了,登陆地址为192.168.1.17(对应前文的举例,具体地址具体填写),登陆账号和密码都是share,如果是FTP还需要端口号(默认21),编码方式推荐UTF-8,如果有乱码就换一下其他编码方式吧,用share用户登录后可以拥有读写权限,方便在移动端删除数据或存入数据,而不用拔下移动硬盘。

注意:Linux要先取消挂载才能拔USB存储设备,初期可采用键入命令方式,等Yeelink熟悉后就可以创建开关型数据,在移动端或网页操作挂载和取消挂载了。

<<<<<<<<<<<<<<<分割线>>>>>>>>>>>>>>

四、树莓派的远程监测与控制——Yeelink物联网服务

1)准备

yeelink网站申请账号,添加设备,添加传感器(数据型/开关型),并记录下API KEYAPIURL

2)上传CPU温度实例

pi文件夹下编写代码yeelink.py,内容如下:

import os

import requests

import json

import time

import commands

def getCPUtemp():

cpu = open("/sys/class/thermal/thermal_zone0/temp")

# file.close()

return (float(cpu.read())/1000)

def main():

apiheaders = {'U-ApiKey':'你之前申请的API KEY,是一串数字和字幕的混合','content-type':'application/json'}

cputemp_apiurl = "你增加的数据型传感器的URL"

CPU_temp = getCPUtemp()

cputemp_payload = {'value':CPU_temp}

r=requests.post(cputemp_apiurl, headers=apiheaders, data=json.dumps(cputemp_payload))

print('CPU Temp = '+str(CPU_temp))

if __name__ == '__main__':

main()

这串代码执行一次后上传一次数据,执行:python yeelink.py就能出现执行结果:CPU Temp = 50.464,如下图:

300元 iRaspberry Pi 树莓派 实现超低功耗远程监控、远程下载和家庭共享

同时上传该数据至yeelink,也可以在def man()后增加while 1,实现一直执行,这里不做过多描述。

3Yeelink控制树莓派的迅雷下载服务实例

pi文件夹下编写代码xunlei.py,内容如下:

import os

import requests

import json

#import time

import commands

def main():

apiheaders = {'U-ApiKey':'你之前申请的API KEY,是一串数字和字幕的混合'}

xunlei_apiurl = "你增加的开关型传感器的URL"

xunlei = requests.get(xunlei_apiurl,headers=apiheaders)

xunlei_status = xunlei.json()

if xunlei_status['value'] == 1:

os.system ('sudo service xunlei start')

print ('Xunlei Service On!')

else:

os.system ('sudo service xunlei stop')

print ('Xunlei Service Off!')

if __name__ == '__main__':

main()

注意:需结合迅雷远程下载的启动服务才可配合执行,前面已附上。

这串代码执行一次后将从设置的开关型数据那取得结果:开或关,执行:python xunlei.py就能执行关闭迅雷服务,并出现执行结果:Xunlei Service Off!,还有个Xunlei Service On!,只是我刚好关闭了迅雷服务,如下图:

300元 iRaspberry Pi 树莓派 实现超低功耗远程监控、远程下载和家庭共享

也可以在def man()后增加while 1,实现一直执行,这里不做过多描述。

4)用cron实现Yeelink服务

前两个实例都需要手动执行,可以利用cron计划任务来执行特定的的任务,我在picron里加入了以下代码,执行:nano picron

* * * * * python /home/pi/yeelink.py

* * * * * python /home/pi/xunlei.py

添加完后保存退出,然后执行:crontab picron

上面两行代码分别指每分钟执行上述yeelink.pyxunlei.py,就意味着每分钟树莓派都可以上传CPU数据到Yeelink、获取开关信息到树莓派并执行,这就从某种意义上实现了远程控制。同时Yeelink也有APP,免去了网页版的不方便。

5)我的Yeelink

分为三个开关:Yeelink服务、Yeelink监测和Yeelink控制;Yeelink服务用来关闭所有Yeelink检测和控制,Yeelink监测用来开关温度及负载数据上传,Yeelink控制用于开关对树莓派的功能控制;

因为我每个python代码都是只执行一次,没有死循环,所以主要借助了cron定时任务,那么对所有的Yeelink服务也采用了更换picron的方式,即创建了:picron_000picron_001picron_010picron_011picron_100picron_101picron_110picron_111,共八个picron通过Yeelink的开关型数据进行到换,000-111中的三位数字分别代表了Yeelink服务、Yeelink监测和Yeelink控制的关闭(0)和开启(1)。

通过以上一个数据一个开关的例子大家就能实现很多功能了,比如服务的开关,比如挂载与取消挂载,这里有一个原则:先挂载后开迅雷,先关迅雷后取消挂载,不然/home/share文件夹下会生成迅雷的文件,到时候就挂载不上硬盘到/home/share了。网上很多关于树莓派的帖子和教学,不得不感谢开源的力量,才实现了我的需求。

配置都结束后重启一下看看能不能正常启动,能不能正常加载服务,重启命令:sudo reboot

至此,我写完了(还是因为写不下去了)300元 iRaspberry Pi 树莓派 实现超低功耗远程监控、远程下载和家庭共享。总结一下:虽然速度和稳定性比不上专业NAS,但对于想尝鲜的玩家来讲已经能体会到一些了,毕竟平时读取和写入的速度已经满足文档的存取了,并行数据存取性能应该很差(这是事实,必须承认,但只有我一个人用感觉还好);另一方面,NAS动辄上千还要配硬盘让我真的很担忧这笔投资对我是否值得(不要喷我,NAS目标用户除外哈),可能我还是喜欢折腾吧,拿来用Samba/FTP服务看视频真的是爽的不要不要的,试过在iPad Air 2(5G)用AVPlayerHD播放720p视频,缓冲时间4s不到,还可以忍受(路由器是阿苏斯AC68U)。好了,我要继续去看《远古外星人》了:

300元 iRaspberry Pi 树莓派 实现超低功耗远程监控、远程下载和家庭共享

300元 iRaspberry Pi 树莓派 实现超低功耗远程监控、远程下载和家庭共享

后记:第一次原创,请大家慢点喷,肯定有值友会更好的方法,我能向你学习吗?!这里顺便提一个问题:CPU负载的py代码我手动输入,在Yeelink可以获取,但通过cron就不能实现了,也试过while 1和time.sleep (5*60)都不行,在VNC下前台用while 1执行倒是可以,不知问题在哪里,有实现成功的吗?

展开 收起
132评论

  • 精彩
  • 最新
  • 这种soc功能太弱 没什么好玩

    100多块钱搞个hp的瘦客户机 , 内存cpu网卡全有了 而且x86的 ,什么都好搞.

    校验提示文案

    提交
    功耗太大了

    校验提示文案

    提交
    两百块钱的差价啊。足够这类10w瘦客户端连续不断的开机器五年了
    但是 可以任意家内存网卡硬盘。运行速度也快上不止2倍吧?
    所以呢 这种机子发发朋友圈就好了。可别正儿八经用 没事给自己找不自在

    校验提示文案

    提交
    收起所有回复
  • 我能向你学习吗

    校验提示文案

    提交
    大家一起交流

    校验提示文案

    提交
    收起所有回复
  • 来解答下楼主的百兆口疑问吧,就好像硬盘读写速度一样,普遍tf卡写入只有20兆,假如使用超过硬盘读写速度的网口,那硬盘就挂了吧。。。其次这东西百兆口发热已经这么高了,千兆的散热怎么操作是个问题了就。

    校验提示文案

    提交
    [惊喜] 学习了 谢谢

    校验提示文案

    提交
    你这个比喻不恰当啊。好多能接移动硬盘的路由器,是千兆口的,网络写入速度能超过树莓派的12.5

    校验提示文案

    提交
    还有7条回复
    收起所有回复
  • 迅雷远程下不了被举报的资源怎么搞

    校验提示文案

    提交
    被举报的也可以下啊 我下也好几百KB

    校验提示文案

    提交
    收起所有回复
  • aria能远程吗?

    校验提示文案

    提交
    可以 以前是要用chrome插件辅助 不知道现在什么情况

    校验提示文案

    提交
    收起所有回复
  • 买过树莓派2代尝试过做NAS+下载机+盒子。下载机这块太麻烦而且效果不够理想。

    校验提示文案

    提交
    不建议盒子和下载机同一个 [抠鼻]

    校验提示文案

    提交
    多SD卡=多系统 [内伤]

    校验提示文案

    提交
    收起所有回复
  • 买个黄标6300V2,上述功能皆能实现,还是千兆AC

    校验提示文案

    提交
    其他功能在我的AC68U上实现了,但是yeelink和传感器温度有点难搞,楼主怎么弄的教教我

    校验提示文案

    提交
    好多路由器可以刷开源的openwrt系统,linux内核,其实和树莓派没有本质区别。至于怎么给openwrt开发软件,我只用过很多第三方插件,却不太懂,只提供思路

    校验提示文案

    提交
    还有2条回复
    收起所有回复
  • 这个一个小米路由mini不是就搞定了吗?

    校验提示文案

    提交
    那也是 买来就用

    校验提示文案

    提交
    收起所有回复
  • 能否通过电脑远程访问硬盘资料?先给你打赏

    校验提示文案

    提交
    理论上可以 但首先要有公网IP配合DDNS 不然会很麻烦 我有尝试过花生棒 但FTP访问拒绝

    校验提示文案

    提交
    收起所有回复
  • 播放器看着挺好,求名子?

    校验提示文案

    提交
    AVplayerHD

    校验提示文案

    提交
    收起所有回复
  • 请问路由器拨号获取IP 自动变怎么破?另外,3B接的移动硬盘不需要外接电源吗?

    校验提示文案

    提交
    用动态域名咯 但是你得有公网IP 如果获取到的是内网IP那就没辙了 3B接移动硬盘不需电源

    校验提示文案

    提交
    多谢了,我现在插的是2.1A 的手机充电器,回家试试行动硬盘能带动不 [脸红]

    校验提示文案

    提交
    收起所有回复
  • 二代用户路过打个招呼,手里有一个二代跑transmission挂pt,功耗低又稳定 [欢呼] ,丢在角落半年没动过了 [欢呼]

    校验提示文案

    提交
    还是要偶尔扫扫灰的 [抠鼻]

    校验提示文案

    提交
    放在柜子角落里 [欢呼] 上次看它还是刚过完年吧 [脸红] [苦恼]

    校验提示文案

    提交
    收起所有回复
  • [吐舌] 期待大兄能出多个树莓派的用途,官网英语看不懂是硬伤。

    校验提示文案

    提交
    可以去看看树莓派实验室或者论坛

    校验提示文案

    提交
    收起所有回复
  • 能加速下载大姐姐吗

    校验提示文案

    提交
    看你迅雷账号咯

    校验提示文案

    提交
    大姐姐,有迅雷账号都不能加速,我说的是thunderspeedhacker

    校验提示文案

    提交
    收起所有回复
  • 二代行不行?

    校验提示文案

    提交
    应该是一样的

    校验提示文案

    提交
    树莓派是用来折腾的做做小车、控制之类的。做nsa、下载机 可能还不如国产的香蕉派香橙派之类的,那个带sata口,和千兆网卡,还不如迅雷 下载宝,usb3和千兆

    校验提示文案

    提交
    收起所有回复
  • 你的cron 怎么写的 是不是带了 “%”号,带了这个 需要转义。

    校验提示文案

    提交
    没带“%”。字数补丁啊啊

    校验提示文案

    提交
    收起所有回复
  • 中文字库那段错了
    迅雷下载介绍的不完全

    校验提示文案

    提交
    哦对 粘贴错了 谢谢

    校验提示文案

    提交
    收起所有回复
  • @cresparks 求教一个问题,迅雷下载的目录如何设置?我的挂载点是/mnt/download 但迅雷上设置下载目录是c:\tddownload

    校验提示文案

    提交
    在远程下载页面下添加任务时注意 在存储路径那里可以选择

    校验提示文案

    提交
    收起所有回复
  • @cresparks 存储路径是显示c:\downloads

    校验提示文案

    提交
    存储设备挂载上后检查有没有写权限

    校验提示文案

    提交
    收起所有回复
  • 太好了,,上面的功能正是我需要的,,,另外lz,,一般的电视机能播放放在文件共享里的视频么。。。

    校验提示文案

    提交
    只要你的电视机支持samba(网络共享)或者ftp,都是可以的。
    不过一般我们都用电视盒子。

    校验提示文案

    提交
    恩,谢谢啦。。。机顶盒能播放内网上的视频么?好像可以的

    校验提示文案

    提交
    收起所有回复
提示信息

取消
确认
评论举报

相关文章推荐

更多精彩文章
更多精彩文章
相关好价
最新文章 热门文章
1.1K
扫一下,分享更方便,购买更轻松