《树莓派开发实战(第2版)》——2.12 将树莓派用作网络存储服务器

本文涉及的产品
文件存储 NAS,50GB 3个月
简介:

本节书摘来自异步社区《树莓派开发实战(第2版)》一书中的第2章,第2.12节,作者[英]Simon Monk(蒙克),韩波 译,更多章节内容可以访问云栖社区“异步社区”公众号查看。

2.12 将树莓派用作网络存储服务器

面临问题

你想要把树莓派用作网络存储服务器,即从网络中的电脑访问树莓派连接的大容量USB驱动器。

解决方案

这个问题的解决方案是安装配置Samba。为此,可以使用如下所示的命令。

$ sudo apt-get install samba
$ sudo apt-get install samba-common-bin

现在,请将USB硬盘驱动器接入树莓派。该驱动器将自动挂载到/media文件夹下面。为了检查是否挂载到位,可以使用下列命令进行检查。

$ cd /media
$ ls

这时,该驱动器应该被显示出来,其名称为格式化它时所取的那个。树莓派每次重启的时候,都会自动挂载这个驱动器。

现在,你需要配置Samba,以便该驱动器可以在网络上共享。为此,首先要添加一个Samba用户(pi)。请输入下列命令,并提供一个密码。

$ sudo smbpasswd -a pi
New SMB password:
Retype new SMB password:
Added user pi.

接下来,需要修改/etc/samba/smb.conf文件,具体如下所示。

$ sudo nano /etc/samba/smb.conf

需要寻找的第一行位于文件顶部附近。

workgroup = WORKGROUP

如果你打算通过Windows机器连接时,只需要修改这里就行了。这里应该改成Windows工作组的名称。对于Windows XP系统来说,默认的工作组名称是MSHOME;对于后续的Windows版本来说,其名称为HOME。(但是,还是检查一下自己的Windows网络为好。)

下一个需要修改的地方位于该文件下方的Authentication部分。

请找到下面这行内容。

# security = user

删除前面的注释符号#,启用安全保护。

最后,向下滚动到文件尾部,并添加如下所示内容。

[USB]
path = /media/NAS
comment = NAS Drive
valid users = pi
writeable = yes
browseable = yes
create mask = 0777
public = yes

保存文件,并输入下列命令重启Samba。

$ sudo /etc/init.d/samba restart

如果一切正常的话,USB驱动器现在就能够实现网络共享了。

进一步探讨

如果要从Mac OS X连接驱动器的话,只需在Finder菜单中选择Go→connect to Server。然后,在Server Address字段中输入smb://raspberrypi/USB,这时就会出现一个登录对话框,在此,你需要将用户名改为pi(见图2-13)。


screenshot

如果你想从Windows机器上面连接NAS的话,见具体过程取决于Windows的版本情况。不过,基本过程是一致的,就是需要输入网络地址,该地址应该为raspberrypiUSB(见图2-14)。


screenshot

之后,输入正确的用户名和密码,就可以使用NAS磁盘了(见图2-15)。


screenshot

如果你是Linux用户,可以使用下列命令来挂载NAS驱动器。

$ sudo mkdir /pishare
$ sudo smbmount -o username=pi,password=raspberry //192.168.1.16/USB /pishare

参考资料

你也许想要修改树莓派的网络名称,例如piNAS,具体方法请参考2.4节。

相关实践学习
基于ECS和NAS搭建个人网盘
本场景主要介绍如何基于ECS和NAS快速搭建个人网盘。
阿里云文件存储 NAS 使用教程
阿里云文件存储(Network Attached Storage,简称NAS)是面向阿里云ECS实例、HPC和Docker的文件存储服务,提供标准的文件访问协议,用户无需对现有应用做任何修改,即可使用具备无限容量及性能扩展、单一命名空间、多共享、高可靠和高可用等特性的分布式文件系统。 产品详情:https://www.aliyun.com/product/nas
相关文章
|
2月前
|
机器学习/深度学习 人工智能 运维
企业内训|LLM大模型在服务器和IT网络运维中的应用-某日企IT运维部门
本课程是为某在华日资企业集团的IT运维部门专门定制开发的企业培训课程,本课程旨在深入探讨大型语言模型(LLM)在服务器及IT网络运维中的应用,结合当前技术趋势与行业需求,帮助学员掌握LLM如何为运维工作赋能。通过系统的理论讲解与实践操作,学员将了解LLM的基本知识、模型架构及其在实际运维场景中的应用,如日志分析、故障诊断、网络安全与性能优化等。
87 2
|
2天前
|
缓存 负载均衡 监控
HTTP代理服务器在网络安全中的重要性
随着科技和互联网的发展,HTTP代理IP中的代理服务器在企业业务中扮演重要角色。其主要作用包括:保护用户信息、访问控制、缓存内容、负载均衡、日志记录和协议转换,从而在网络管理、性能优化和安全性方面发挥关键作用。
16 2
|
1月前
|
存储 网络协议 安全
软件管理,磁盘存储,文件系统以及网络协议
【11月更文挑战第9天】本文介绍了软件管理、磁盘存储和网络协议等内容。软件管理包括软件生命周期管理和软件包管理,涉及需求分析、设计、实现、测试、发布、维护等阶段,以及软件包的安装、升级和依赖关系处理。磁盘存储部分讲解了磁盘的物理结构、分区与格式化、存储管理技术(如 RAID 和存储虚拟化)。网络协议部分涵盖了分层模型、重要协议(如 HTTP、TCP、IP)及其应用与安全。
|
2月前
|
存储 安全 数据可视化
提升网络安全防御有效性,服务器DDoS防御软件解读
提升网络安全防御有效性,服务器DDoS防御软件解读
56 1
提升网络安全防御有效性,服务器DDoS防御软件解读
|
1月前
|
存储 关系型数据库 MySQL
查询服务器CPU、内存、磁盘、网络IO、队列、数据库占用空间等等信息
查询服务器CPU、内存、磁盘、网络IO、队列、数据库占用空间等等信息
598 2
|
3月前
|
存储 弹性计算 测试技术
阿里云服务器实例规格vCPU、内存、网络带宽、网络收发包PPS、连接数等性能指标详解
阿里云服务器ECS实例可以分为多种实例规格族。根据CPU、内存等配置,一种实例规格族又分为多种实例规格。而实例规格又包含vCPU、处理器、内存、vTPM、本地存储、网络带宽、网络收发包PPS、连接数、弹性网卡、云盘带宽、云盘IOPS等指标,本文为大家详细介绍实例规格的这些指标,以供大家了解和选择。
172 14
阿里云服务器实例规格vCPU、内存、网络带宽、网络收发包PPS、连接数等性能指标详解
|
2月前
|
Kubernetes 应用服务中间件 nginx
搭建Kubernetes v1.31.1服务器集群,采用Calico网络技术
在阿里云服务器上部署k8s集群,一、3台k8s服务器,1个Master节点,2个工作节点,采用Calico网络技术。二、部署nginx服务到k8s集群,并验证nginx服务运行状态。
919 1
|
2月前
|
网络协议 Java API
【网络】TCP回显服务器和客户端的构造,以及相关bug解决方法
【网络】TCP回显服务器和客户端的构造,以及相关bug解决方法
68 2
|
2月前
|
存储 网络协议 Java
【网络】UDP回显服务器和客户端的构造,以及连接流程
【网络】UDP回显服务器和客户端的构造,以及连接流程
60 2
|
2月前
|
存储 网络协议 Java
【网络】UDP和TCP之间的差别和回显服务器
【网络】UDP和TCP之间的差别和回显服务器
73 1
下一篇
DataWorks