本文允许转载,转载请标明出处:http://blog.csdn.net/oQinYou/article/details/52043986
离上一次配置samba已经快2年了,现在又有机会需要搭一次samba,简单的记录一下;
1.安装samba
sudo apt-get install samba
sudo apt-get install smbfs
2.创建共享目录
mkdir /home/horrarndoo/samba_share
sudo chmod 777 /home/horrarndoo/samba_share
3.创建samba配置文件
1)保存现有的配置文件(备份)
sudo vim /etc/samba/smb.conf
2)修改配置文件
在smb.conf最后添加
[share]
path = /home/horrarndoo/samba_share
available = yes
browseable = yes
public = yes
writable = yes
4.创建samba账户
sudo touch /etc/samba/smbpasswd
sudo smbpasswd -a horrarndoo
然后会要求你输入samba帐户的密码
(如果没有第四步,当你登录时会提示 session setup failed: NT_STATUS_LOGON_FAILURE)
5.重启samba服务器
sudo /etc/init.d/smbd restart
6.测试使用
可以在windows下输入ip使用,在文件夹处输入 "\\" + "Ubuntu机器的ip或主机名"
7.samba的启动
在linux启动时自动启动,以超级用户权限修改/etc/rc.local,在文件尾部加入一条语句如下:
service smb restart
以上只是最简配置,仅能保证windows和linux服务器互通,账户组以及各个权限设置都没有;
下面是增加了账户组和权限的samba配置:
例如:在一个系统管理员usr_admin下:分别有三个文件夹(注:这3个文件都要给可读写权限);
设置了3个组:usr_admin组,MultiMedia组,WifiAudio组;
其中usr_admin可以访问任何一个组的文件夹(RW),有最高权限;
其他各个用户组只对自己本组文件夹有读写权限(RW),对非本组文件夹仅有读(R)权限;
Guest文件夹各个组都可以访问,但是只有usr_admin组才拥有读写权限(RW),其他组仅有读(R)权限;
新建samba用户以及分组步骤:
1.新建组命令: sudo groupadd MultiMedia
2.新建用户命令:sudo adduser username
3.将用户添加进组命令:sudo adduser username MultiMedia
4.设置samba用户密码命令:sudo smbpasswd -a username (这个密码是samba客户端
登陆的密码)更换密码也是用这个命令
(注:修改了/etc/samba/smb.conf 一定要重启samba服务:sudo /etc/init.d/smbd restart)
(注:samba用户名必须是linux系统用户名,及linux系统存在的用户才可以作为samba用户名)
(注:若在windows端已经登录了samba服务器需要切换用户登录的话,可以执行 net use * /delete /y ,这样就可以不用重启而达到切换用户登录的目的)
/etc/samba/smb.conf 具体配置如下
read list属性代表可访问但是不可以修改的组list;
create mask是用户创建文件时的权限掩码;对用户来可读可写,对用户组可读可写,对其它用户可读;
directory mask 是用来设置用户创建目录时的权限掩码,意思是对于用户和用户组可读可写,对其
它用户可读可执行;
其它的不做详细介绍,如有需要,可参考:
http://blog.csdn.net/oqinyou/article/details/52043939
注:以上本人亲自整理并测试通过。