一个u盘大小的树莓派就能搭建一个服务器

小编本身就是一名python开发工程师,我自己花了三天时间整理了一套python学习教程,从最基础的python脚本到web开发,爬虫,数据分析,数据可视化,机器学习,等,这些资料有想要的小伙伴" 点击 " 即可领取

1,前言

由于小编在这段时候,看到了一个叫做树莓派的东东,初步了解之后觉得很有意思,于是想把整个过程记录下来。

2,树莓派是什么

Raspberry Pi(中文名为树莓派,简写为RPi,(或者RasPi / RPI) 是为学习计算机编程教育而设计),只有信用卡大小的微型电脑,其系统基于Linux。随着Windows 10 IoT 的发布,我们也将可以用上运行Windows 的树莓派。

自问世以来,受众多计算机发烧友和创客的追捧,曾经一“派”难求。别看其外表“娇小”,内“心”却很强大,视频、音频等功能通通皆有,可谓是麻雀虽小,五脏俱全。

用小编自己的话来说

用我的话理解就是树莓派就是一台主机,你可以外接显示器,键盘鼠标,u盘等等外设,因为它体积很小,而且又有很多串口和外接的口,可以直接调用很多底层硬件。

市面上的型号

市面上大多是 3 代 B+ 型,淘宝一搜树莓派一大堆都是,价钱纯主板(不要任何外设)在230+ 左右,有点小贵,超过我的预算,所以我继续寻找廉价的,终于让我发现了一款 100+的树莓派。

树莓派 zero w

树莓派zero w 是一款 mini 的树莓派,体质只有 3b+1/3。实际到手后,你会发现它真的超级小,超级可爱。以下是我的实物图,你可以看看大小到底有多 mini

在这里插入图片描述

你可以看到,最上面是一根普通的黑色签字笔,接下来是一个即插即用型的外接wifi 网卡,然后是一个 USB 读卡器,最底下的就是我们今天的主角 zero w。它真的超级小,有木有。真的是完美的诠释了那句“麻雀虽小,五脏俱全”的话。

zero w 这款树莓派的主要参数如下:

(1),BCM2835 处理器,1GHz主频,512MB RAM

(2),BCM43438 WiFi / BT 芯片

(3),micro-USB 电源接口

(4),micro-USB OTG 接口

(5),miniHDMI端口

(6),复合视频和重置扩展接口

(7),脆弱的 CSI 摄像头接口

(8),micro-SD 卡座,存放操作系统

(9),40-pin GPIO 扩展接口

(10),尺寸:65mm*30mm

你别看它的 cpu 只有 1 核,内存只有512MB,就觉得它可能什么都做不了,但是实际上它的性能还是很好的,用于跑一个网站真的是小case

更多树莓派

关于更多树莓派型号或者使用教程你可以去树莓派实验室这个网站,上面有丰富的资源。

3,树莓派zero w安装系统

1. 准备

你可能提前需要准备的东西如下:

(1),16GB or 32GBSanDisk 内存卡(注意是以前那种放在手机上,很小的哦)

(2),一根最普通不过的 usb 安卓数据线(not type-c

(3),u 盘格式化工具(推荐使用SDFormatter

(4),系统烧写工具(Win32DiskImager

(5),树莓派系统(可以去官网下载)

我使用的是 Raspbian Stretch Lite 这个系统镜像,这个系统是官方制作的,lite是无桌面版的,只有黑漆漆的控制台,优点是体积小,省性能和内存。

名字带有desktop的是有桌面ui的,对不熟悉liunx系统的朋友可能更友好,但是体积很大,占用的性能也会更高。

在这里插入图片描述

2. 第一步下载系统镜像

下载好你需要的系统镜像后,如下图

在这里插入图片描述

一开始只有一个zip 的压缩包,大小大概 360MB 左右,你需要把它解压,得到上图的文件夹。

在这里插入图片描述

然后进入文件夹可以看到一个 img 的镜像,大小为1.7GB 左右。

ps:这个官方的Raspbian 镜像,如果是其他第三方的镜像,可能下载后的压缩包解压后不是 img 镜像,这种情况请另行百度解决。

3. 使用 Win32DiskImager 往内存卡中写入镜像

在这里插入图片描述

把内存卡插入读卡器后,插入电脑。

打开Win32DiskImager 软件后,选择img镜像,设备选择你的 U 盘,然后点击写入就可以了,写入完成后会弹出成功的提示框。

ps: 我上图没有选择设备,因为的没插入读卡器,仅仅是示范而已

4. 修改 boot 分区的文件

先别急着拔出读卡器,此时,我们电脑可以看到 u 盘中只有一个名为boot 的分区,大小可能只有40MB左右,不要着急,因为window 不识别内存卡中 liunx系统的其他分区。

** 4.1 新建 ssh 文件**

因为我们的 ero w有一个 mini hdmi 的接口,但是我不需要屏幕,所以需要使用 ssh 连接到zero w中的系统,所以需要在第一次开机就能开启 ssh功能。

我们进入boot 分区内,然后新建一个名为 ssh的文件,注意不要后缀名!!!!也不要往里面写任何东西!!

4.2 新建 wpa_supplicant.conf 文件

因为 ssh连接是需要ip 地址的,所以我们需要将 zero w 在第一次开机自动连接wifi,使其和我们的电脑处于一个局域网,这样我们才可以通过ssh连接到zero w 的系统。

同样的在 boot 分区内,新建一个名为wpa_supplicant.conf 的文件,然后往里面写入如下内容后保存:

country=CN
ctrl_interface=DIR=/var/run/wpa_supplicant GROUP=netdev
update_config=1

network={
ssid="你的wifi名字"
psk="你的wifi密码"
}

5. 组装我们的最小主机并连接

取出读卡器中的内存卡,然后插入到zero w中,使用一根usb 安卓数据线连接电源(5V1A)即可。

等待几分钟,期间我们的zero w 的指示灯会一直闪烁,很正常,等待指示灯常亮的时候,我们去路由器上,查看一下树莓派的ip地址。

在这里插入图片描述

可以看到我们zero wip192.168.0.104,然后使用 ssh连接工具(推荐使用putty)连接树莓派,初始账户为pi,密码是raspberry

在这里插入图片描述

连接成功,如上图所示。这样我们的系统就正确无误的安装好了。

ps: 如果是手机开启热点当做一个路由器的话,咱们手机下载一个名叫android terminalapp,然后输入ip neigh 指令,就可以查到连接到手机的设备的 ip信息了。

6. 优化咱们树莓派的系统

6.1 修改源

因为国外的源,咱们在国内的连接过去网速很慢,所以我们需要修改为国内的源,我修改的是中科大的源。

6.1.1 修改 sources.list 文件

sudo nano /etc/apt/sources.list
--注释其他内容,添加以下:
deb http://mirrors.ustc.edu.cn/raspbian/raspbian/raspbian stretch main contrib non-

6.1.2 修改 raspi.list 文件

sudo nano /etc/apt/sources.list.d/raspi.list
--注释其他内容,添加以下:
deb http://mirrors.ustc.edu.cn/archive.raspberrypi.org/debian stretch main ui

6.1.3 执行更新

sudo apt-get update
sudo apt-get upgrade

6.2 修改时区

sudo dpkg-reconfigure tzdata
找到亚洲 Asia,然后选择 shanghai 就可以了。

6.3 开机自启 ssh

第一种:

sudo raspi-config
进入选择找到 interfacing option 选择,然后找到 ssh,按回车使能 enable 就可以了。

第二种:

在终端命令行中启动 SSH 服务后,如果系统重启或关机后启动,SSH 服务默认是关闭的,依然需要手动启动,为了方便可以设置 SSH 服务开机自动启动,打开 /etc/rc.local 文件,在语句 exit 0 之前加入:/etc/init.d/ssh start

建议都试试,反之我的是可以了。

7. 安装 nginx

#安装
sudo apt-get install nginx
#启动
sudo /etc/init.d/nginx start
#重启
sudo /etc/init.d/nginx restart
#停止
sudo /etc/init.d/nginx stop

打开浏览器访问192.168.0.104(你的树莓派 ip 地址),可以看到 nginx 的页面,说明安装好了。

8. 内网穿透

内网穿透,意思就是将内网(本地)的 web应用通过nat穿透到公网上,从而让别人可以访问到。

内网穿透目前主要由ngrokfrp 两种,都非常好用,国内ngrok 免费的有ittun、sunnynatapp,这三个都是免费的,前面两个可以自定义域名,后面的需要 vip 版本才可以自定义域名。

我这三种都试过,我发现 sunnyarm 版本的ngrok客户端在我的树莓派运行不了,ittun 的和natppngrok都可以,由于需要自定义域名,我使用的是ittunngrok_arm版本的。

使用方法这三者官网都有详细说明,大家自行查看。

这是正常运行时的截图:

在这里插入图片描述

因为需要ngrok在后台运行,所以我用的是screen会话使其可以在后台运行。但是开启自启,还没有实现,万一断电或者断网了,我必须手动去运行一下 ngrok,这是目前没有解决的痛点。

9. 更多

树莓派不仅仅只是可以用于运行一个网站,还有很多很多的功能等待你的开发,可以多去看看树莓派实验室里面,很多大神都写了很多实用的教程。

我的zero w状态信息如下:

在这里插入图片描述

在上面开启了一个nginxngrok 服务,内存剩余还有250MB,还是很舒服的,cpu温度也不算高,运行两天了,基本在 37-39之间。

以上就是小编今天为大家带来的内容,小编本身就是一名python开发工程师,我自己花了三天时间整理了一套python学习教程,从最基础的python脚本到web开发,爬虫,数据分析,数据可视化,机器学习,等,这些资料有想要的小伙伴" 点击 " 即可领取

  • 1
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值