安装好samba后备份下配置文件:
hz@h:~$ sudo apt-get install samba
hz@h:~$ cd /etc/samba
hz@h:/etc/samba$ sudo cp smb.conf smb.conf.bk
hz@h:/etc/samba$ sudo vi smb.conf
例如:将/var/www/html文件夹设为共享
一.如果想设置一个无需验证的, 任何人都可以访问的共享文件夹
那么只需要在配置文件的最后面加上
[share] #不能和文件夹同名,这是win看到的文件夹名
comment=samba ##这个是说明,随意
path=/var/www/html
public=yes
create mask=0775
directory mask=0775
##需要修改文件夹,将/var/www/html权限设置为777,或者加上如下设置
forceuser=root
forcegroup=root
保存后重启samba:
hz@h:/etc/samba$ sudo /etc/init.d/sambd restart
windows下打开 开始-->运行-->输入\[ip address]\share
二. 如果想设置一个需要账号登录才能访问的共享文件夹
- 你需要一个系统用户(新建或者已存在),例如新建一个系统用户usamba:
hz@h:~$sudo adduser usamba
2. 建好后,将此用户添加到samba用户
hz@h:~$sudo smbpasswd -a usamba
hz@h:~$sudo smbpasswd -e usamba
3. 配置smb.conf文件,在最后加上
[user] #不能和文件夹同名
comment=samba
path=/var/www/html
public=no
valid users=usamba
create mask=0775
directory mask=0775
windows下打开 开始-->运行-->输入\[ip address]\user-->输入账号密码
如果此时你尝试修改或者添加文件,提示没有权限的话:
原因:与你需要共享的文件夹的访问权限和新建的samba用户的所拥有的访问权限相关。
如 /var/www/html的所属用户是root,所属用户组是root,权限是755。
而新建的系统用户usamba的所属的用户组是usamba,所以usamba用户是只能访问而不能修改。
这是一个访问权限的问题,要让usamba拥有修改,添加权限。
修改usamba的用户组和/var/www/html的用户组:
hz@h:~$sudo usermod -G hz usamba
hz@h:~$sudo chgrp -R hz /var/www/html