【Linux】使用Samba、NFS共享文件夹给Windows
方法 1:使用 Samba(推荐)
Samba 是 Linux 和 Windows 之间共享文件的标准协议。
1.安装 Samba
sudo apt update
sudo apt install samba -y # Ubuntu/Debian
或
sudo dnf install samba -y # CentOS/RHEL/Fedora
2.配置 Samba
编辑配置文件 /etc/samba/smb.conf:
sudo nano /etc/samba/smb.conf
在文件末尾添加以下内容(按需修改):
[mnt_share]
path = /mnt
browsable = yes
writable = yes
guest ok = no # 禁止匿名访问(推荐)
valid users = your_username # 替换为你的 Linux 用户名
3.设置 Samba 用户密码
将你的 Linux 用户添加到 Samba(需输入密码):
sudo smbpasswd -a your_username
4.重启 Samba 服务
sudo systemctl restart smbd
sudo systemctl enable smbd # 开机自启
5.从 Windows 访问
方法 a:打开文件资源管理器,输入 \Linux_IP\mnt_share,输入用户名和密码。
方法 b:映射为网络驱动器(右键“此电脑” → “映射网络驱动器”)。
方法 2:使用 NFS(适合局域网高速访问)
NFS 适合 Linux 和 Windows 之间的高性能共享,但 Windows 需安装 NFS 客户端。
1.在 Linux 上安装 NFS 服务端
sudo apt install nfs-kernel-server -y # Ubuntu/Debian
或
sudo dnf install nfs-utils -y # CentOS/RHEL/Fedora
2.配置 NFS 共享
编辑 /etc/exports:
sudo nano /etc/exports
添加以下内容(允许 Windows 主机访问):
/mnt 192.168.1.0/24(rw,sync,no_subtree_check) # 替换为你的局域网网段
3.重启 NFS 服务
sudo systemctl restart nfs-server
sudo exportfs -a # 重新加载配置
4.在 Windows 上配置
启用 NFS 客户端:
控制面板 → 程序 → 启用或关闭 Windows 功能 → 勾选 NFS 客户端。
挂载共享:
在 CMD 或 PowerShell 中运行:
mount -o anon \\Linux_IP\mnt X:
(X: 是驱动器号,可选)
防火墙设置
如果启用了防火墙,需放行相应端口:
Samba:
sudo ufw allow samba # Ubuntu
或
sudo firewall-cmd --add-service=samba --permanent # CentOS/Fedora
NFS:
sudo ufw allow from 192.168.1.0/24 to any port nfs # Ubuntu
或
sudo firewall-cmd --add-service=nfs --permanent # CentOS/Fedora
注意事项
权限问题:确保 /mnt 及其子目录的权限允许访问:
sudo chmod -R 755 /mnt
sudo chown -R your_username:your_group /mnt
安全性:
仅共享必要的目录。
使用强密码(Samba)或限制 IP 范围(NFS)。
性能:Samba 适合通用共享,NFS 适合高速局域网。
选择适合你的场景的方法即可!
评论区(暂无评论)