Ubuntu下Samba的默认配置
/etc/samba/smb.conf
[global]
workgroup = WORKGROUP
server string = %h server (Samba, Ubuntu)
log file = /var/log/samba/log.%m
max log size = 1000
logging = file
panic action = /usr/share/samba/panic-action %d
server role = standalone server
obey pam restrictions = yes
unix password sync = yes
passwd program = /usr/bin/passwd %u
passwd chat = *Enter\snew\s*\spassword:* %n\n *Retype\snew\s*\spassword:* %n\n *password\supdated\ssuccessfully* .
pam password change = yes
map to guest = bad user
usershare allow guests = yes
[printers]
comment = All Printers
browseable = no
path = /var/spool/samba
printable = yes
guest ok = no
read only = yes
create mask = 0700
[print$]
comment = Printer Drivers
path = /var/lib/samba/printers
browseable = yes
read only = yes
guest ok = no
只读共享
- 先创建一个用于只读共享的目录(/data/doc),Samba用户在linux系统层面必须有这个目录的读和执行权限,为了便于测试,我们让Samba用户对这个目录有完全控制权限(读写执行),使用doc用户组来完成这个功能,tuser为测试用户
sudo su cd / groupadd doc mkdir -p /data/doc echo "123" >/data/doc/abc.txt chgrp -R doc /data chmod -R g+rwx /data usermod -G doc tuser
- 配置Samba共享
在配置文件中加入以下内容
重新加载配置[doc] path = /data/doc # read only = yes 是默认值,可以不设置 read only = yes
smbcontrol smbd reload-config
- 为Samba用户设置密码
smbpasswd -a tuser
- 测试读取
- 测试写入
- 修改现有文件
- 创建新文件
- 删除文件
- 创建子目录
读写共享
- 配置Samba共享
在配置文件中加入以下内容
重新加载配置[doc] path = /data/doc # read only = yes 是默认值,可以不设置 read only = no # 使新创建的文件和目录也有相应的权限被其他用户使用 force group = doc force directory mode = 0770 force create mode = 0770
smbcontrol smbd reload-config
- 测试读取
- 测试写入
- 修改现有文件
- 创建新文件
- 删除文件
- 创建子目录
- 用另一个用户tuser2访问共享,对tuser创建的文件进行前两步的测试
针对用户控制读写权限
- 配置Samba共享
在配置文件中加入以下内容
重新加载配置[doc] path = /data/doc # read only = yes 是默认值,可以不设置 read only = no # 使新创建的文件和目录也有相应的权限被其他用户使用 force group = doc force directory mode = 0770 force create mode = 0770 read list = tuser write list = tuser2
smbcontrol smbd reload-config
- 测试读取
- 测试写入
- 修改现有文件
- 创建新文件
- 删除文件
- 创建子目录
- 用另一个用户tuser2访问共享,进行前两步的测试
共享home
- 配置Samba共享
在配置文件中加入以下内容
重新加载配置[homes] path = /home/%U read only = yes write list = %U valid users = %U browseable = no
smbcontrol smbd reload-config
- 测试
- 这里也可以将read only设置为no,write list和valid users不设置,因为只有用户自己能看到homes共享
共享打印机
待完成
总是提示无权访问
如果在windows上访问samba共享时,即使输入了正确的用户名密码还是提示“没有权限”,可以执行以下命令清除连接后重试。
net use \\ip地址 /delete