Linux进阶之文件与 Web 共享服务
文件与 Web 共享服务是企业和个人网络中不可或缺的一部分,Linux 提供多种文件共享解决方案,其中以 Samba 文件共享 和 NFS 网络文件系统 为代表。本章将详细讲解如何配置这些服务及其应用场景。
一、Samba 文件共享
1、Samba 简介
Samba 是一款开源软件,用于在 Linux 和 Windows 系统之间共享文件和打印机资源。它实现了 SMB/CIFS 协议,使不同操作系统能够轻松协作。
2、Samba 安装与配置
安装 Samba
在 Debian/Ubuntu 系统上安装:
sudo apt update
sudo apt install samba -y
在 CentOS/RHEL 系统上安装:
sudo yum install samba -y
配置 Samba
Samba 的主配置文件位于 /etc/samba/smb.conf
,编辑该文件添加共享目录:
[shared]
path = /srv/shared
browseable = yes
writable = yes
valid users = myuser
创建共享目录
sudo mkdir -p /srv/shared
sudo chmod 777 /srv/shared
创建 Samba 用户
将现有 Linux 用户添加为 Samba 用户:
sudo smbpasswd -a myuser
启动 Samba 服务
sudo systemctl restart smbd
sudo systemctl enable smbd
3、访问共享资源
Linux 客户端
使用 smbclient
访问:
smbclient //<server-ip>/shared -U myuser
Windows 客户端
通过资源管理器访问:
在地址栏输入 \\<server-ip>\shared
,并提供 Samba 用户名和密码。
二、NFS 网络文件系统
1、NFS 简介
NFS(Network File System)是一种允许网络上的不同机器共享文件的协议,特别适合 Unix/Linux 系统之间的文件共享。
2、NFS 安装与配置
安装 NFS 服务
在服务器端安装 NFS:
sudo apt update
sudo apt install nfs-kernel-server -y
配置 NFS
编辑 /etc/exports
文件添加共享目录:
/srv/nfs_shared 192.168.1.0/24(rw,sync,no_subtree_check)
上述配置将 /srv/nfs_shared
目录共享给子网 192.168.1.0/24
中的所有客户端,并设置为可读写模式。
创建共享目录
sudo mkdir -p /srv/nfs_shared
sudo chmod 777 /srv/nfs_shared
启动 NFS 服务
sudo systemctl restart nfs-kernel-server
sudo systemctl enable nfs-kernel-server
3、挂载 NFS 共享目录
客户端安装 NFS 工具
在客户端安装 NFS 工具:
sudo apt update
sudo apt install nfs-common -y
挂载共享目录
sudo mount -t nfs <server-ip>:/srv/nfs_shared /mnt
永久挂载
编辑 /etc/fstab
文件:
<server-ip>:/srv/nfs_shared /mnt nfs defaults 0 0
三、Samba 与 NFS 的对比
特性 | Samba | NFS |
---|---|---|
协议支持 | SMB/CIFS | NFS |
客户端支持 | Windows、Linux、MacOS | Linux、MacOS |
性能 | 对大文件操作较慢 | 高效的文件共享性能 |
配置复杂度 | 中等 | 简单 |
使用场景 | 混合网络环境 | Linux/Unix 专用网络 |
四、小结
通过本章学习,你掌握了以下内容:
- Samba 文件共享:从安装到配置共享目录及用户权限设置。
- NFS 网络文件系统:从基本配置到客户端挂载操作。
- 对比分析:理解两者的适用场景和优缺点。
Samba 和 NFS 各有优势,选择合适的文件共享服务可以显著提高网络协作效率。