准备一块树莓派
第二季度接了一个有意思的任务——用机器学习算法做数据拟合,算法本身没什么,但是如何让一个在python中的算法变成一个有界面的服务就比较有意思了。我刚好又买了一块树莓派3,于是打算把后端程序放在树莓派上运行。首先需要在新鲜出炉的树莓派上做一些环境准备……
1. 例行更新
更新前最好用df -h
确认一下存储卡剩余空间:
固件升级并重启:
1 | sudo apt-get install rpi-update |
软件包升级
1 | sudo apt-get update && time sudo apt-get upgrade && time sudo apt-get dist-upgrade |
另外,对于有洁癖的人,可以隔一段时间执行一下清理:
1 | sudo apt-get clean |
2. 远程访问
常用的几个远程访问方式有ssh
、远程桌面协议、互联网访问。
ssh
的配置参考SSH (SECURE SHELL)
远程桌面配置参考VNC (VIRTUAL NETWORK COMPUTING)
使用Dataplicity配置互联网访问:
1 | curl https://www.dataplicity.com/fldsy1bm.py | sudo python |
3. 配置VPN(Cisco IPSec)
有时网络环境不太好,应该提前准备个梯子(我买的泰坦加速器):
安装vpnc
:
1 | sudo apt-get install vpnc |
配置vpnc,
1 | sudo vi /etc/vpnc/default.conf |
按下面的格式写入VPN配置:
1 | IPSec gateway <VPN服务商提供的服务器地址> |
连接vpnc:
1 | sudo vpnc --local-port 0 |
断开vpnc:
1 | sudo vpnc-disconnect |
参见vpnc
4. 部署Miniconda
这里就不仔细介绍这位conda家族成员了。
下载并安装Miniconda:
1 | wget http://repo.continuum.io/miniconda/Miniconda3-latest-Linux-armv7l.sh |
安装过程会自动设置环境变量
设置环境变量(自动设置的内容,无需手动配置):
1 | sudo vi /home/pi/.bashrc |
新建python环境,使用conda
管理python环境,类似与virtualenv
,可以让我们独立管理各种用途的python环境:
1 | conda create -n webenv python=3.4 |
使用时激活环境
1 | source activate webenv |
注销环境:
1 | source deactivate |