Skip to content

如何制作一个太阳能供电的树莓派FTP服务器

ftp1

ftp1

假设你已经通过我们简单易懂的说明建立好了你的树莓派。或者你已经看过我们的25件最值得去做的有趣事儿并且你现在想要一些更激动人心的东西。那么做一个太阳能供电的FTP服务器如何?

订购太阳板

我们将会使用一个玩家自制的25英镑的树莓派盒子,它拥有适合的插槽来放置你的输出接口,并且带有一个小太阳能板,一个电池盒和一个micro-USB电缆。你仅仅只需要提供4节镍氢充电电池就行了。

ftp2

用你的浏览器看向这里 — 你将找到通过PayPal下订单的所有信息。卖家Cottonpickers也把商品放在了eBay上,如果你更喜欢这种购买方式。

ftp3

静态IP地址

一旦从快递员手中接过你的包裹,把你的小派插上去并且为它接上电源和显示器。让我们开始编程吧。第一步是确保你的小派有一个静态的IP地址,因为我们需要在网络防火墙上添加例外来允许到来的FTP请求。

在小派的桌面,双击”LX Terminal”图标进入终端。敲入如下命令设置静态IP地址,

sudo nano /etc/network/interfaces

这个文件控制了树莓派的IP地址。你需要做的是稍微向下滚动到“iface eth0”一行把“DHCP”改成“static”。现在,在这一行的下方,为你的小派键入一个IP地址,还有子网掩码和网关。它看起来像这样,但是会根据你的家庭网络而不同。

address 192.168.1.93
netmask 255.255.255.0
gateway 192.168.1.254

假如你还不知道这些东西,那你可以通过你的路由器说明书找到你的IP地址和路由设置,或者通过在小派的终端里输入: ifconfig -a。这个命令会列出当前的IP地址,路由器DHCP配置的子网掩码和网关。接下来你该做的就是把这个IP地址敲到文件的“static”区域确保你的小派不会在重启之后有了一个不同的IP。
当你做完了这些事情,按一下Ctrl+X退出,再按一下“Y”保存改动,再按几次回车回到命令行。现在输入:

sudo /etc/init.d/networking stop
sudo /etc/init.d/networking start

这将会重启网络组件并且使用刚才保存的IP地址。
ftp4

VNC

在终端输入以下 命令,在每一行之后按一下回车。

sudo apt-get update
sudo apt-get install vnc-server
vncserver

当软件包下载并安装好之后,会提示你设置一个密码,重复一遍并且在出现view-only选项的时候选择“No”。
现在VNC已经装好了,我们需要确保它作为一个系统服务在每次小派重启的时候自动加载。通过下面的命令来实现:

sudo nano /etc/init.d/tightvncserver 并按一下回车

在打开的编辑器里,输入如下内容:

#!/bin/sh
# /etc/init.d/tightvncserver
# Set the VNCUSER variable to the name of the user to start tightvncserver under
VNCUSER='pi'
case "$1" in
   start)
     su $VNCUSER -c '/usr/bin/tightvncserver :1'
     echo "Starting TightVNC server for $VNCUSER "
     ;;
   stop)
     pkill Xtightvnc
     echo "Tightvncserver stopped"
     ;;
   *)
     echo "Usage: /etc/init.d/tightvncserver {start|stop}"
     exit 1
     ;;
esac
exit 0

ftp5

现在按一下“Ctrl+X”然后“Y”保存,再按几次回车回到命令行。现在我们要做的是修改我们刚才创建的脚本权限让它可以执行,通过以下命令:

sudo chmod 755 /etc/init.d/tightvncserver 并按一下回车

最后,我们需要把它加到启动脚本里,通过以下命令:

update-rc.d tightvncserver defaults 并按一下回车

现在你能做的是拔下显示器并且把你的小派放到有网线的地方,并且阳光充足(为太阳板充电)。如果你安装了类似TightVNC Viewer的工具你可以通过“192.168.1.93:1”(换成你自己的静态IP地址)以图形界面的方式访问到你的小派了。

VSFTPD

接下来就是配置FTP服务器的部分了。同样的,这也不是很困难,也可以在将来按照你自己喜好配置。在终端键入以下命令:

sudo apt-get install vsftpd 并按一下回车

当VSFTPD(代表Very Secure FTP Deamon)软件包下载安装完成,键入:

sudo nano /etc/vsftpd.conf 并按一下回车

这是控制VSFTPD的配置文件,它允许你设置所有类型的限制和策略,所以建议配置的时候要十分小心。为了使它运行,我们推荐改动下面的几行,每行一条,输入“YES”或“NO”:

Anonymous_enable=NO
Write_enable=YES
Local_enable=YES
Ascii_upload_enable=YES
Ascii_download_enable=YES

关于每条配置项的解释你可以通过它的注释看到,这里我们就不多说了。当你配置完成,像之前一样保存退出。
最后,通过重启小派来使得你所做的所有工作生效。你可以通过以下命令重启它:

sudo reboot并按一下回车

ftp6

通过FTP访问外接硬盘

我们喜欢把事情变得简单,因此我们访问外接硬盘的方法是把一个硬盘接到小派的USB口上并且通过FTP客户端来访问。
首先,你可以把硬盘接到电脑的USB口上并把它格式化成NTFS格式,卷标写上FTP。完成之后,把它接到小派上并且通过VNC在文件管理器里访问它,需要点一下“Yes”。
记下你的硬盘的路径 — 我们这里是/media/FTP。为了测试FTP访问,你需要装一个FTP客户端,例如FileZilla,并且在连接地址里输入:

192.168.1.93/media/FTP 把IP地址换成你自己的
Username: pi 换成你在配置VSFTPD时的用户名(默认是pi)
Password:raspberry 换成你自己设置的密码(如果用户名不是pi).

幸运的话,你现在已经能够访问到你的外接硬盘了,在你自己内部的网络里。

ftp7

外部访问

这个工程的最后部分涉及到从外部FTP访问到树莓派。这也是最说不清楚的一步,因为它根据你的路由模块不同而不同。例如,在basic BT model里,我只用在预定义好的应用里勾选FTP外部访问就行了,并且把它指向内网的树莓派地址。
你的可能完全不同,但是,为了完成这一步,你应该看看你的路由器说明书,或者Google一下你的路由模块看它是否有FTP外部访问教程。
ftp8

5 1 vote
Article Rating
Subscribe
Notify of
guest

This site uses Akismet to reduce spam. Learn how your comment data is processed.

0 Comments
Oldest
Newest Most Voted
Inline Feedbacks
View all comments
0
Would love your thoughts, please comment.x
()
x