在Ubuntu中搭建共享文件夹,通常有两种主要方法:使用Samba服务或通过NFS(Network File System)。以下是每种方法的详细步骤:
使用Samba服务
Samba允许Windows、Mac和Linux系统之间共享文件和打印机。
步骤1:安装Samba
打开终端,并运行以下命令来安装Samba:
sudo apt update
sudo apt install samba
# 查看版本信息
samba -V
# Version 4.19.5-Ubuntu
步骤2:配置Samba
创建一个共享目录(例如/home/ethan/sambashare):
sudo mkdir -p /mnt/sambashare
sudo chown nobody:nogroup /mnt/sambashare
sudo chmod -R 777 /mnt/sambashare
sudo chcon -t samba_share_t /mnt/sambashare
创建一个共享用户组来统一管理共享文件夹访问权限(例如sambashare):
# 查看用户组信息
grep samba /etc/group
# 创建用户组(如果不存在)
sudo groupadd sambashare
配置Samba。编辑Samba配置文件:
sudo vi /etc/samba/smb.conf
在文件中添加以下配置(根据你的需求调整路径和设置):
[global]
min protocol = SMB3
workgroup = WORKGROUP
server string = %h server (Samba, Ubuntu)
# 如果使用DHCP,需要配置以下内容:
interface = wlx6c1ff742ce99 enp5s0
#usershare allow guests = yes
security = user # 认证模式:share匿名|user用户密码|server外部服务器用户密码
map to guest = Bad User
domain master = yes
local master = yes
preferred master = yes
os level = 65
[sambashare]
path = /mnt/sambashare
browsable = yes
available = yes
read only = no
public = yes
writable = yes
# guest ok = yes # 允许来宾用户访问,相当于 public
# valid users = nobody
guest ok = no
valid users = ethan,@sambashare
保存并关闭文件。
步骤3:重启Samba服务
sudo systemctl restart smbd nmbd
或者使用:
sudo service smbd restart
sudo service nmbd restart
步骤4:添加用户到Samba密码数据库(可选)
如果你想让用户通过Samba访问共享文件夹,需要为这些用户设置Samba密码:
# 如果用户不存在,先添加用户(如果用户已存在,跳过)
sudo useradd -g sambashare yourusername
# 然后设置密码
sudo smbpasswd -a yourusername
# 输入密码后激活用户
步骤5:客户端访问
在Windows系统中,需要先安装samba支持,通过控制面板-程序和功能-启用或关闭Windows功能-勾选“SMB客户端”和“SMB自动删除”,然后重启电脑。
打开“文件资源管理器”,在地址栏中输入:
\\yourserverip\sambashare
Linux和Mac系统中,使用以下命令:
smbclient //yourserverip/sambashare -U yourusername
smb://yourserverip/sambashare
其他说明
若遇到问题可先查看日志信息tail -100f /var/log/samba/log.nmbd
删除指定网络映射驱动器net use X: /delete
添加网络驱动器net use X: \\ip\sambashare /user:\yourusername
问题:指定的网络文件夹目前是以其他用户名和密码进行映射的。
通过cmd命令行,删除所有网络映射驱动器后重试:net use * /delete
问题:你没有权限访问 \yourserverip\sambashare。
检查共享目录的用户和组是否正确配置。可参考上面第二部进行配置。
参考资料
https://cloud.tencent.com/developer/article/2439538
转载请注明来源,欢迎对文章中的引用来源进行考证,欢迎指出任何有错误或不够清晰的表达。可以邮件至 ethan89@aliyun.com