samba共享目录

更好地实现了不同系统之间的文件互访


安装samba服务
yum -y install samba samba-client

主配置文件
/etc/samba/smb.conf

案例一、windows与Linux之间共享
背景:共享目录,任何人都可以访问,不需要输入密码,只读
vim etc/samba/smb.conf
找到
  workgroup = MYGROUP
  修改为
   workgroup = WORKGROUP
   
找到
security = user
修改为
security = share

在最后添加:
[jqm]
    comment = share all
    path = /tmp/sambadir
    browseable = yes
    public = yes
    writable = no


启动服务
/etc/init.d/smb start

创建目录存放目录
mkdir /tmp/sambadir

创建测试文件
cp /etc/passwd /tmp/sambadir/1.txt
mkdir /tmp/sambadir/test


赋予权限
chmod 777 /tmp/sambadir/test
ll /tmp/sambadir/
总用量 8
-rw-r--r-- 1 root root 1760 8月  23 15:15 1.txt
drwxrwxrwx 2 root root 4096 8月  23 15:16 test

测试一、
在win7中测试:
按win键+R键,在对话框中输入\\192.168.10.106,会出现设置共享的名字jqm
打开后会发现两个文件test和1.txt,发现在test目录下不能创建添加,在1.txt文件中也不能修改


测试二、在Linux下测试
1.安装samba-client
smbclient //192.168.10.106/jqm
Enter root's password:
Domain=[WORKGROUP] OS=[Unix] Server=[Samba 3.6.23-35.el6_8]
Server not using user level security and no password supplied.
smb: \> ls
.                                   D        0  Tue Aug 23 15:16:07 2016
..                                  D        0  Tue Aug 23 15:15:29 2016
test                                D        0  Tue Aug 23 15:16:07 2016
1.txt                                     1760  Tue Aug 23 15:15:56 2016

注意这里要求输入密码部分直接回车即可
可以看到共享的文件,但是也不能再里面做任何操作

2.使用挂载方式:
安装挂载时需要的包
yum -y install cifs-utils

mount -t cifs //192.168.10.106/jqm /opt/
Password:
要求输入密码同样直接回车即可

进入opt目录下查看
[root@jqm opt]# ls
1.txt  test
可以发现共享的文件出现,但是同样不能进行任何操作

#############################################################

案例二、
背景:共享目录,任何人使用用户名及密码访问,可读写
进入配置文件
vim etc/samba/smb.conf
修改为
security = user
在最后添加
[lc]
        comment = share for users
        path = /tmp/sambadir
        browseable = yes
        writable = yes
        public = no


创建测试账户
useradd smbuser1
新建samba账户
pdbedit -a smbuser1

重启服务
/etc/init.d/smb restart


测试一、在Linux中测试
使用用户名及密码直接登录测试
smbclient -Usmbuser1 //192.168.10.106/lc
输入smbuser1的密码进入
可以在共享的test和1.txt中进行修改、添加等操作


测试二、win7中测试
按win键+R键,在对话框中输入\\192.168.10.106,需要输入用户名及密码才能进入进行操作

测试三、Linux中使用挂载方式
mount -t cifs -o username=smbuser1,password=123123 //192.168.10.106/lc /opt/

挂载完成后可以进入共享文件中进行操作

注意:
1.创建samba用户:
pdbedit -a 用户名

2.删除samba用户
pdbedit -x 用户名

3.列出samba用户列表
pdbedit -L

4.列出samba用户列表详细信息
pdbedit -Lv 

常见全局配置项的含义
workgroup:所在工作组名称,默认为MYGROUP
server string:服务器描述信息
security:安全级别,可用值如下:
        share:可匿名访问
       user:需由本服务器验证用户名及密码
        server:需指定另一台服务器来验证用户名及密码
       domain:由windowns域控制器验证用户名及密码
log file:日志文件位置,“%m”变量表示客户机地址,默认设置为/var/log/samba/%m.log,表示将日志文件保存到/var/log/samba/中,按每个客户机建立一个日志文件
max log size:日志文件的最大容量,单位为KB
passwd backend:设置共享账户文件的类型
                 默认使用tdbsam(TDB数据库文件)
                网络内有LDAP认证,改用ldapsam
                兼容旧版本的samba密码文件,改为smbpasswd
                
常见共享目录配置项的含义
comment:对共享目录的注释、说明信息
path:共享目录在服务器中对应的实际路径
browseable:该共享目录在“网上邻居”中是否可见
guest ok:是否允许所有人访问,等效于“public” 
writable:是否可写,与read only的作用相反
Samba服务设置的读取、写入权限,优先级要低于文件系统中设置的权限