近期文章

Linux 2017-07-14

树莓派搭建AirPlay服务实现WiFi无线音响外放

升级系统:

sudo apt-get update
sudo apt-get upgrade

通常情况下树莓派的音频输出使用的是HDMI接口,我们需要下面的命令将其变更为普通音频输出口

sudo amixer cset numid=3 1

安装系统所必需的软件包:

sudo apt-get install git libao-dev libssl-dev
sudo apt-get install libcrypt-openssl-rsa-perl libio-socket-inet6-perl
sudo apt-get install libwww-perl avahi-utils libmodule-build-perl

安装Perl Net-SDP协议软件:

cd ~
git clone https://github.com/njh/perl-net-sdp.git --depth=1 perl-net-sdp
cd perl-net-sdp
perl Build.PL
sudo ./Build
sudo ./Build test
sudo ./Build install

使用Shairport将树莓派设置为AirPlay接收器:

cd ~
git clone https://github.com/hendrikw82/shairport....
Linux 2017-07-13

在树莓派上搭建TimeMachine

安装软件

首先更新系统:

sudo apt-get update
sudo apt-get upgrade

执行如下命令,使得raspbian支持hfs+分区。

sudo apt-get install hfsplus hfsutils hfsprogs

支持ntfs

sudo apt-get install ntfs-3g

安装配置netatalk服务

sudo apt-get install netatalk

安装Avahi

sudo apt-get install avahi-daemon libnss-mdns

配置

创建挂载目录

sudo mkdir -p /var/nsa/disk/TimeMachine/
sudo chown -R pi:pi /var/nsa/disk/TimeMachine/

挂载硬盘

列出所有块设备

sudo blkid

输出类似下图: diskinfo
TYPE="hfsplus"就是我们的TimeMachine的硬盘。
挂载:

sudo mount -U 3eab1fc9-0235-39d5-9ed1-dce6f91f81f3 -t hfsplus -o force,rw /var/nsa/disk/TimeMachine/

配置netatalk服务

/etc/netatalk/AppleVolumes.defaul...

Mac 2017-06-23

备份和恢复raspberrypi镜像

备份raspberrypi镜像很简单,直接用命令就可以搞定,下面介绍下方法。 首先需要知道树莓派磁盘的磁盘编号,终端下输入:

diskutil list

输出类似下图:
diskutil
可以看到/dev/disk1是32G树莓派的磁盘,/dev/disk2是1T的移动硬盘,我们要备份的就是/dev/disk1。 备份命令如下:

sudo dd if=/dev/rdisk1 of=backup.img bs=4M

恢复的话使用如下命令:

sudo dd if=backup.img of=/dev/rdisk1 bs=4M

说明下:

diskutil 所列出来的 MicroSD 卡是 /dev/disk1,而这里 dd 的 if 参数所使用的是 /dev/rdisk1,两个都是同一张 MicroSD 卡,不过 /dev/rdisk1 是没有经过缓冲区、直接进行存取的 raw device,所以读取与写入速度会比较快(请参考 hdiutil 的线上手册).如果使用 /dev/rdisk1 失败的话,可以改用 /dev/disk1.

但是这样备份出来的镜像太大了,实测32G备份完成之后30G左右,我们可以使用Gzip压缩下:

sudo dd if=/dev/rdisk1 bs=4M | gzip > backup.gz

备份完成之后大概4G左右。 恢复的话使用如下命...

随笔杂谈 2017-06-21

Linode误删恢复记录

今天无聊想着切换个新的ip地址,然后就在linode后台添加新的vps,添加好之后在 Remote Access标签下面的IP Swap按钮来切换ip.但是新创建的ip都是172开头的,宝宝不开心不喜欢这样的ip,然后就删vps又加vps想得到一个好看点儿的ip地址,那时候是刚睡了午觉迷迷糊糊的,换着换着突然发现,咦,我的原来的vps呢.卧槽被我删掉了...顿时惊醒了大半.想起来部署网站还有各种环境就头疼,于是本着试试看的态度提交了个ticket给linode,大意就是说不小心删掉了vps能不能给我恢复过来.
发了ticket之后就刷着ticket对话页面,等着对方回复我,过了大概半小时左右,客服回复了,可以恢复!只要创建一个新的vps,配置可以和之前的配置相同,然后在后台设置下就可以了. 具体步骤是在新的vps的Dashboard界面,点击 Deploy an Image 然后在image下拉框点开最底下选择 Recently Deleted Disks ,就会有你刚刚删掉的vps的image,选择好之后点击 Deploy,然后默默的等恢复就可以了, 恢复好之后你还可以提交ticket给客服,让他帮你恢复到之前的ip地址.
幸亏linode还有恢复功能,要不然就又得折腾老久了.

6623 0
Python 2017-06-04

使用树莓派实现WebCamera实时监控

配件就一个可以跑起来的树莓派,然后再有一个淘宝上的那种摄像头模块就可以了。
效果如下图:
WebCamera 这样就可以开着树莓派,然后只要通过浏览器就可以实时监控到你感兴趣的地方,代码也挺简单的,如下:

基于python3,需要安装picamera

pip install picamera

下面是示例代码:

#!/usr/bin/env python
# encoding: utf-8


"""
@version: ??
@author: liangliangyy
@license: MIT Licence
@contact: [email protected]
@site: https://www.lylinux.net/
@software: PyCharm
@file: webcam.py
@time: 2017/5/22 下午10:36
"""

import io
import picamera
import logging
import socketserver
from threading import Condition
from http import server

PAGE="""\
<html>
<head>
<title>picamera MJPEG streaming demo</title>
</head>
<body>
<h1>PiC...
Python 2017-05-19

Python虚拟环境设置

virtualenv

virtualenv 是一个可以在同一计算机中隔离多个python版本的工具。有时,两个不同的项目可能需要不同版本的python,如 python2.6.6 / python3.0 ,但是如果都装到一起,经常会导致问题。所以需要一个工具能够将这两种或几种不同版本的环境隔离开来,需要哪个版本就切换到哪个版本做为默认版本。virtualenv 既是满足这个需求的工具。它能够用于创建独立的Python环境,多个Python相互独立,互不影响,能够:

  • 在没有权限的情况下安装新套件
  • 不同应用可以使用不同的套件版本
  • 套件升级不影响其他应用

安装: pip install virtualenv

使用方法

创建环境

virtualenv [新环境名] :这会再当前目录下创建一个新环境目录 可使用 virtualenv --help 来查看如何使用。可以使用参数 --python=/usr/bin/python3 来创建一个已经安装的的Python环境。

使用环境

切换到新环境目录 执行:source ./bin/activate 来激活环境,激活后在命令行的前面会出现新环境名称 接下来可使用pip命令安装新环境需要的各种包。(pip命令在创建新环境时自带)

退出虚拟环境

deactivate

如果要删除虚拟环境,只需退出虚拟环境后,删除对应的虚拟环境目录...

发现更多