准备一块树莓派

第二季度接了一个有意思的任务——用机器学习算法做数据拟合,算法本身没什么,但是如何让一个在python中的算法变成一个有界面的服务就比较有意思了。我刚好又买了一块树莓派3,于是打算把后端程序放在树莓派上运行。首先需要在新鲜出炉的树莓派上做一些环境准备……

1. 例行更新

更新前最好用df -h确认一下存储卡剩余空间:

固件升级并重启:

1
2
sudo apt-get install rpi-update
sudo rpi-update && sudo reboot -h now

软件包升级

1
sudo apt-get update && time sudo apt-get upgrade && time sudo apt-get dist-upgrade

参考Why use apt-get upgrade instead of 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
2
3
4
5
6
IPSec gateway <VPN服务商提供的服务器地址>
IPSec ID ""
IKE Authmode psk
IPSec secret <VPN服务商提供的共享秘钥>
Xauth username <VPN服务商给出的用户名,通常是注册用户名>
Xauth password <VPN服务商给出的密码,通常是注册密码>

连接vpnc:

1
sudo vpnc --local-port 0

断开vpnc:

1
sudo vpnc-disconnect

参见vpnc

4. 部署Miniconda

这里就不仔细介绍这位conda家族成员了。

下载并安装Miniconda:

1
2
3
wget http://repo.continuum.io/miniconda/Miniconda3-latest-Linux-armv7l.sh
sudo md5sum Miniconda3-latest-Linux-armv7l.sh
sudo /bin/bash Miniconda3-latest-Linux-armv7l.sh

安装过程会自动设置环境变量

设置环境变量(自动设置的内容,无需手动配置):

1
2
3
sudo vi /home/pi/.bashrc
# 最后加入:
export PATH="/home/pi/miniconda3/bin:$PATH

新建python环境,使用conda管理python环境,类似与virtualenv,可以让我们独立管理各种用途的python环境:

1
conda create -n webenv python=3.4

使用时激活环境

1
source activate webenv

注销环境:

1
source deactivate

评论

Your browser is out-of-date!

Update your browser to view this website correctly.&npsb;Update my browser now

×