网络文件共享受到两层控制:服务决定谁可以连接,Linux 文件系统决定该连接实际能读取或修改什么。本动手课程在比较面向 Unix 风格挂载的 NFS 与面向 SMB 客户端和混合环境的 Samba 时,明确呈现这两层机制。
你将发布并挂载 NFS export,配置匿名和认证 Samba 共享,并使用标准客户端在本机测试。最终挑战会建立一个仅限 localhost 的 NFS 项目 export、一个可写公共 SMB 投递箱,以及同时受身份与仅所有者权限保护的财务共享。
你将学到什么
- 安装 NFS 服务端与客户端软件包,并使用
exportfs激活共享 - 定义 NFS 客户端范围以及
rw、sync、no_subtree_check行为 - 挂载 NFS export、验证挂载并测试读写访问
- 安装 Samba、查看
smbd与nmbd并备份基础配置 - 使用
smbclient配置并测试可浏览的匿名 SMB 共享 - 创建关联的 Linux 与 Samba 身份,并用
valid users限制私有共享 - 让共享定义与所有权及
777、700等权限模式保持一致
本课程适合谁
本中级课程适合需要通过 NFS 或 SMB 公开共享目录的 Linux 管理员、DevOps 与网络学习者、支持工程师和混合环境运维人员。如果网络访问规则和底层 Linux 权限曾让你感到是两个互不相干的问题,本课程尤其有用。
前置要求: 掌握 Linux 终端、软件包、服务、挂载、用户、所有权、权限和 sudo 基础。熟悉客户端—服务器网络会有帮助。
学习环境: 同时充当本地服务器和客户端的 Debian/Ubuntu 风格 LabEx Linux 终端,配有 NFS 工具、Samba、smbclient 和预置共享目录。
常见问题
什么时候该使用 NFS,什么时候该使用 Samba?
NFS 把远程 export 挂入 Unix 风格文件系统树,常用于 Linux/Unix 系统之间;Samba 实现 SMB,更适合 Windows 互操作和混合设备环境。课程在本机练习两者,便于比较配置与访问模型。
公共共享设置是生产安全基线吗?
不是。引导 NFS 示例允许任意客户端并使用 777,最终公共 SMB 投递箱也允许匿名用户写入 777 目录,这些选择只是为了减少学习中的权限阻碍。最终 NFS export 限定为 127.0.0.1,财务共享则展示认证加仅所有者权限的更安全对照。
挂载和共享是持久、加密或集中认证的吗?
/etc/exports 与 smb.conf 中的服务端定义会持久保存,但引导 NFS 客户端只执行手动 mount,不会写入 /etc/fstab。课程不配置 NFS Kerberos、SMB 传输加密、目录服务、配额、ACL 或自动挂载。





