Raspberry Pi NFS和Samba文件服务器

1,293

21

简介:Raspberry Pi NFS和Samba文件服务器

这个项目是最后阶段的成果,整合两个先前作出和张贴电路。

***

1Raspberry Pi CPU温度指示器-发布于2020年11月20日

//www.sledutah.com/Raspberry-Pi-CPU-Tem。。。

2Raspberry Pi冷却风扇箱,带CPU温度指示器-发布于2020年11月21日

//www.sledutah.com/Raspberry-Pi-Box of-。。。

***

最初我计划制作一个文件服务器,它可以在RPI(Raspberry Pi)、Windows PC和其他Linux服务器之间共享文件。

为了避免从源计算机复制到USB以及将所有内容重新复制到目标计算机的不便,可以使用基于RPI的Samba和NFS服务器作为文件服务器。

尽管可以在Linux机器(如Ubuntu和Raspberry pi OS服务器)之间使用scp或rsync命令,但使用诸如cp和mv之类的通用文件处理命令要方便得多。

因此,制作了上图所示的RPI文件服务器。

此服务器可以支持以下功能。

-SSD(SanDisk,上图中的黑色)支持NFS在Linux服务器之间共享文件

-HDD(Seagate,白色)支持Samba在我的Windows PC和RPI之间共享文件

-使用内部专用RPI电源(5V 3A)

-集成了RPI CPU温度指示器(4个温度级别)

-温度高于50℃时冷却风扇自动启动

***

让我们更详细地了解如何组装和配置文件服务器。

步骤1:文件服务器设计和组件

由于文件服务器是通过组装电路板和其他组件(如HDD、SSD、开关电源模块等)构建的,所以我只展示了总体结构图。

关于冷却风扇和CPU温度指示器的电路细节,请参阅先前发布的项目内容。

我将只解释新添加的组件,使文件服务器。

-希捷硬盘是2.5“的数据磁盘,我买了很长一段时间前(也许10多年),它包括SATA到USB接口适配器(金属机箱被删除)

-SanDisk SSD与我从网店购买的SATA-to-USB3.0适配器接口(您可以通过“SATA-to-USB电缆”搜索此项)

-小型15W AC-DC开关电源(Mean Well RS-15-5)

-亚克力底盘(透明面板尺寸为15cm(宽)x 10cm(高)x 5mm(深)x 1,15cm(宽)x 10cm(高)x 3mm(深)x 3

-金属支架7cm(3.5mm)x 4,4cm(3.5mm)x 4,3.5cm(3.5mm)x 4

-螺栓和螺母

***

除上述新组件外,所有其他项目均被重新用作以前项目的输出,包括PCB板、连接器和电缆。

第2步:安装开关电源模块

当您处理和连接到高压(220V)的房屋电源,仔细布线是绝对必要的这项工作!

请仔细检查产品文档以将电源模块连接到RPI。

由于RPI3型号B需要至少2.5A的PSU(电源单元)作为建议,我使用3A专用开关电源。

另外,为了防止RPI的欠压警告,我正在通过打开开关电源模块的VR将输出电压稍微调整为5.3V。

当连接两个外部硬盘时,通常开关电源的输出电压会略微降低,并且经常会出现RPI(黄色雷电图标)的欠压警告。

在RPI 3型号B的情况下,USB外围设备的最大总电流消耗可支持高达1.2A。

因此,驱动两个外部硬盘不会是问题。

但当冷却和其他电路工作时,它们至少会消耗超过300mA的电流。

因此,我使用额外的手持电话充电器为其他电路和风扇供电。

根据RPI规范,即使在温和的系统负载下,通常也会消耗500mA的电流。

因为我以前在使用RPI电源时遇到过一些问题,所以完全的电源线分离似乎是最清晰的解决方案。

步骤3:完成基本RPI框

当您没有必要没有额外的外设连接,这是完全配备的RPI盒,包括内部电源和温度调节。

但当我制作文件服务器时,外部硬盘将被安装到这个基本的RPI机箱上。

对于外壳电路板和组件,我通常使用亚克力面板和金属支架。

我想这是最简单的方法,把所有的东西组装成一个完整的外壳式结构。

第4步:装配和安装硬盘

实际上,当所有的东西都放在一起,并纳入亚克力底盘,通常我不想去组装它,因为电缆总是令人头痛。

但硬盘需要安装和固定,我已经解除组装,你可以看到电路板是如何包装在一起的亚克力底盘。

亚克力面板的优点是易于层添加简单地堆叠在现有的一个面板上的另一个面板。

由于这个特点,我在大多数DIY项目中都使用亚克力面板。

第5步:硬盘安装和固定

堆叠第二层,其中包含希捷硬盘已完成,并通过USB电缆与RPI连接。

为了在现有面板上安装额外的亚克力面板,需要钻4个孔以插入金属支架。

对齐孔的位置是必要的组装亚克力面板整齐堆叠的方式。

步骤6:安装和连接SSD

作为装配工作的最后阶段,SSD安装在附加的丙烯酸面板上,并用金属支架固定在第二层的顶部。

当每个面板层中的4个孔位置没有正确对齐时,装配工作变得有点困难,成品底盘形状变得有点难看。

第7步:

步骤8:安装和配置Samba

由于各种各样的网站上都有非常详细的操作方法和技术描述,所以我将不详细解释Samba本身和安装过程的实质。

总结所有内容,仅提及Samba安装和配置的要点如下。

***

-sudo apt install samba samba common bin(安装samba)

-sudo smbpasswd-a pi(作为Samba用户添加pi)

-sudo vi/etc/桑巴/smb.con公司(将以下配置数据插入smb.cnf公司)

***

[圆周率]

comment=pi共享文件夹

路径=/mnt/nashdd

有效用户=pi

browseable=是

guest ok=否

只读=否

创建掩码=0777

***

-sudo/etc/init.d/samba restart(重启samba服务)

***

安装和配置完成后,您可以挂载RPI目录“/mnt/nashdd”(实际上是Seagate HDD整个磁盘容量的500GB)作为网络驱动器,如上图所示。

Samba是从windowspc和RPI上传/下载文件的非常有用的工具。

下面步骤中所示的温度波动图是通过Samba将RPI中的日志文件复制到Windows PC来创建的。

步骤9:安装和配置NFS

当NFS客户端装载共享目录时,“df

-客户端的“h”命令输出显示挂载的NFS卷,如上图所示。

NFS的安装和配置比Samba要复杂得多。

因此,我不会详细解释如何将NFS安装到服务器和客户端。

配置还需要编辑多个文件,如“/etc/fstab”、“/etc/exports”、“/etc”/主机.允许“等等。

您可以在以下网站上找到详细的操作方法和技术说明。

***

https://www.raspberrypi.org/documentation/configur。。。

***

我经常使用NFS从torrent服务器获取下载的文件,而不使用复杂的scp或rsync命令。

简单的说,你可以把cp或mv文件当作存储在本地磁盘上的文件。

正如您在本篇文章的最后一个“进一步开发”步骤中所看到的,一些更有用的应用程序是可能的。

第10步:温度控制

我只是好奇冷却风扇电路如何控制CPU温度在几乎一天的时间。

所以我通过Samba文件共享服务复制了日志文件,并用msexcel制作了图表。

结果如下。

-冷却风扇回路运行后,温度不得超过50℃

-多次观察到温度超过50℃,但由于冷却风扇的运行,温度立即下降

-NFS write(将下载的视频文件从torrent服务器移动到NFS服务器)会给NFS服务器带来很大的系统负载

-由于冷却风扇的运行,温度迅速升高,随后冷却下来

-NFS read(使用VLC通过客户端从NFS服务器播放视频)系统负载并没有太大的影响,如图的后面所示

第11步:进一步发展

随着所有相关硬件相关工作的完成,不会对NFS/Samba文件服务器进行任何额外的修改或开发。

但是NFS服务器可以以各种方式使用,如上图所示。

在两个putty会话中,左侧是NFS服务器的屏幕,右侧是运行客户端屏幕的VLC客户端应用程序。

播放的视频显示在电脑屏幕上方的5英寸液晶屏上。

正如我提到的,这种NFS服务器访问和利用不会给服务器带来太多负担。

谢谢你把这个故事读完…。

第一个分享

    建议

    • 任何事都有可能

      任何事都有可能
    • 让它成为真正的学生设计挑战

      让它成为真正的学生设计挑战
    • 方块码竞赛

      方块码竞赛

    讨论