Linux安装Samba服务器后如何配置共享文件夹访问权限?
- 云服务器
- 2025-12-11
- 5
在Linux系统中安装和配置Samba服务器可以实现在Windows、Linux等不同操作系统之间共享文件,方便跨平台数据传输,以下是详细的安装步骤和配置方法,以Ubuntu/Debian系统为例,其他发行版如CentOS/RHEL可使用yum或dnpm命令进行安装。
更新系统软件包列表并安装Samba服务,打开终端,执行以下命令:
sudo apt update sudo apt install samba sambacommon y
安装完成后,使用以下命令检查Samba服务状态:
systemctl status smbd
若未启动,可通过sudo systemctl start smbd和sudo systemctl enable smbd命令启动并设置开机自启。
接下来创建共享目录并设置权限,创建一个名为/home/share的目录,并赋予读写权限:
sudo mkdir p /home/share sudo chmod 777 /home/share
然后编辑Samba配置文件/etc/samba/smb.conf,使用sudo nano /etc/samba/smb.conf命令打开文件,在文件末尾添加以下配置:
[shared_folder] comment = Shared Folder path = /home/share browseable = yes writable = yes guest ok = no valid users = @sambashare
[shared_folder]为共享名称,path为共享目录路径,valid users指定允许访问的用户组。

创建Samba专用用户并设置密码,创建用户testuser并加入sambashare组:
sudo useradd m testuser sudo smbpasswd a testuser
将用户添加到sambashare组(需提前创建组:sudo groupadd sambashare,并将用户加入组:sudo usermod aG sambashare testuser)。
配置完成后,重启Samba服务使配置生效:

sudo systemctl restart smbd sudo systemctl restart nmbd
在Windows系统中,通过文件资源管理器输入\Linux服务器IP地址shared_folder访问共享目录,输入用户名和密码即可。
以下是常见配置参数说明:
| 参数 | 说明 |
|---|---|
| path | 共享目录的绝对路径 |
| browseable | 是否在网络上可见(yes/no) |
| writable | 是否允许写入(yes/no) |
| guest ok | 是否允许匿名访问(yes/no) |
| valid users | 指定允许访问的用户或用户组 |
相关问答FAQs
Q1:如何限制Samba共享目录的访问权限?
A1:可通过配置文件中的valid users参数指定允许访问的用户或用户组,例如valid users = user1,user2或valid users = @group1,结合Linux文件系统权限(如chmod和chown)进一步控制读写权限,若需只读权限,可设置read only = yes并覆盖writable = no。
Q2:无法访问Samba共享目录,提示“拒绝访问”怎么办?
A2:首先检查Samba服务是否正常运行(systemctl status smbd),确认共享目录路径和权限设置是否正确(ls ld /home/share),然后验证用户是否已加入valid users指定的组,并使用smbpasswd a为用户设置了密码,最后检查防火墙规则,确保允许Samba相关端口(如TCP 139、445)通过,可通过sudo ufw allow samba命令开放端口。
