2016年1月

树莓派 raspberry 播放 路由器 上的电影

首先介绍一下情况:

  1. 路由器是基于openWRT的智能路由器;
  2. 路由器上面安装了 BT 客户端, 路由器一直开机, 且低功耗,使用BT下电影有优势;
  3. BT 客户端下的电影存放在路由器挂载的一个移动硬盘上面;
  4. 家里有另外一个树莓派, 它本身具有 HDMI 接口, 可以直接omxplayer播放电影

为什么不用路由器直接播放, 都是ARM的芯片?

  • 路由器的内存只有64M, 上面还跑其他服务, 没有 HDMI 接口,平时智能通过 samba 共享给其他设备.

详细步骤:

  1. 树莓派安装 sshfs
    sudo apt-get install sshfs

  2. 路由器安装 openssh-sftp-server
    ipkg install openssh-sftp-server

  3. 树莓派远程挂载路由器的资源
    mkdir /mnt/remote #创建挂载文件夹
    #挂载 user 是路由器上用户名, /mnt/movies 是路由器是电影文件夹
    sudo sshfs user@192.168.1.1:/mnt/movies /mnt/remote

  4. 播放电影
    omxplayer -o hdmi /mnt/remote/test.mp4

遇到的问题:

  1. 路由器无法安装 sftp-server?
    查看你的 ipkg 的配置文件 /etc/ipkg.conf
  2. sshfs 报错 : sshfs remote host has disconnected
    使用debug 参数去看一下:
    sudo sshfs -o debug,allow_root remote@192.168.1.1:/mnt/X /mnt/remote
  3. sshfs 在debug情况下报错: sh: /opt/libexec/sftp-server: not found
    确认你共享服务器上装有 sftp-server, 没有的话, 去安装
  4. 共享了, 可是没有读权限
    加上 -o allow_other 选项
  5. 树莓派 可以播放, 但是 HDMI 输出没有视频
    配置 /boot/config.txt
    hdmi_force_hotplug=1
    hdmi_drive=2

BitTorrent 协议规范 [中文翻译板]

原文网址 BitTorrent.org

BEP: 3
标题: BitTorrent 协议规范
版本: f61df4010379f5c40090a9b77b73e57db7045dee
最后修改: Fri Oct 11 15:00:20 2013 -0700
作者: Bram Cohen bram@bittorrent.com
状态: Final
类型: Standard
创建于: 10-Jan-2008
过往历史: 24-Jun-2009 (arvid@bittorrent.com), clarified the encoding of strings in torrent files. 20-Oct-2012 (arvid@bittorrent.com), clarified that info-hash is the digest of en bencoding found in .torrent file. Introduced some references to new BEPs and cleaned up formatting. 11-Oct-2013 (arvid@bittorrent.com), correct the accepted and de-facto sizes for request messages

BitTorrent is a protocol for distributing files. It identifies content by URL and is designed to integrate seamlessly with the web. Its advantage over plain HTTP is that when multiple downloads of the same file happen concurrently, the downloaders upload to each other, making it possible for the file source to support very large numbers of downloaders with only a modest increase in its load.

BitTorrent 是一个文件分发的协议. 它以URL识别内容,特地设计为可以与网络无缝集成。

- 阅读剩余部分 -

Raspberry 每5分钟拍一张照片并上传到远程服务器

  1. 启动 raspberry的 camera 功能
    命令行 raspi-config 找到拍照设置,enable 它。 退出并选则重启

  2. 编写拍照并上传的脚本 脚本放在 /var/spool/cron/pi 目录,命名为 photo.sh

    #!/bin/sh

    cd /home/pi/photo
    time=$(date +"%H%M")
    suffix=.jpg
    fileName=img$time$suffix

    raspistill -t 1000 -o $fileName
    sshpass -p 密码 scp $fileName 用户名@192.168.1.108:/mnt/远程目录/$fileName
    rm $fileName

  3. 加入 cron job
    crontab -e
    加入 ×/5 5-23 × × × /var/spool/cron/pi/photo.sh
    (上面的×是星号)

  4. 重启 cron 进程
    sudo service cron restart

可能遇到的问题
sshpass 没有安装 : sudo apt-get install sshpass
脚本正常执行, 却没有scp copy 到远程: 可能没有接收ssh key, 手工 ssh 登录一次
不要使用 sudo crontab -e, 这是以 root 的身份加
上面的脚本只保留一天的照片所以第二天会覆盖第一天的。

Raspberry pi 2 B 初始设置

只买了 Raspberry Pi 2 B 的主机, wifi连接接口, 初始设置使用 hdmi 连接电视。需要先通过网线连接,到路由器管理界面看它的 树梅派 的IP 地址

  1. 官方下载 image
    (我下载的是 RASPBIAN JESSIE LITE 只有350多M,解压后的 .img 文件1.5G左右)

  2. 根据官方文档写入sd卡 我是linux 上写入, 其实就一个命令:
    dd bs=4M if=2015-11-21-raspbian-jessie.img of=/dev/sdd

  3. 插上显示器(我用的是hdmi 接电视)网线,无线wifi 接口,以及上面写入image的 mirco sd卡

  4. 到路由器界面看 树梅派 用的IP (我的192.168.1.141)

  5. ssh 登录到 树梅派 ssh pi@192.168.1.141
    密码是默认 raspberry

  6. 设置无线wifi
    官方文档 这里
    sudo vi /etc/wpa_supplicant/wpa_supplicant.conf
    设置好之后,到路由器管理界面去看它的新IP, 就可以拔掉网线了

  7. 再次到路由器管理界面看树梅派使用无线wifi 连接的IP

  8. 添加新用户
    mkdir /home/foo //新建foo的home文件夹
    groupadd general //创建general group
    useradd -g general -d /home/foo foo //创建用户foo
    passwd foo //改密码
    chown /home/foo foo //赋予home文件夹 权限
    visudo 添加sudo权限 (ctr + M是写入)

  9. 更改root密码