SAMBA文件共享服务

Samba最大的功能就是可以用于Linux与windows系统直接的文件共享和打印共享,Samba既可以用于windows与Linux之间的文件共享,也可以用于Linux与Linux之间的资源共享,由于NFS(网络文件系统)可以很好的完成Linux与Linux之间的数据共享,因而 Samba较多的用在了Linux与windows之间的数据共享上面。

第一种允许所有人访问

安装Samba服务

[root@localhost ~]# yum install -y samba

修改配置文件

[root@localhost ~]# vim /etc/samba/smb.conf

修改以下内容

[global]
map to guest = Bad User //用户不需要账号密码也可访问

将光标移到最后一行,添加以下内容。

[public]  \\共享名称为public 可随意修改
    comment = public //对共享目录的说明文件,自己可以定义说明信息
    path = /database  //共享目录为/database
    public = yes          // 所有人都可以查看

建立共享目录

[root@localhost ~]# cd /
[root@localhost /]# mkdir database
][root@localhost /]# cd database/
[root@localhost database]# touch test.txt

由于配置文件设置了匿名用户可以访问,所有要给匿名用户对共享文件上传下载的权限,所以要给共享目录/public授权为nobody权限

[root@localhost /]# chown -R nobody:nobody database/
[root@localhost /]# ll /database/
total 0
-rw-r--r--. 1 nobody nobody 0 Sep 10 02:50 test.txt
  • 重启服务
    [root@localhost /]# systemctl restart smb
  • windows访问Samba服务测试Centos7配置Samba服务详细步骤_第1张图片

第二种只允许指定用户成员访问

添加用户组和用户

创建用户,将用户加入到samba用户并设置密码(系统用户转化为samba)
[root@index-2 ~]# useradd test -s /sbin/nologin 
[root@index-2 ~]# smbpasswd -a test
New SMB password:
Retype new SMB password:
Added user test.

建立共享文件

[root@index-2 ~]# mkdir /public

修改配置文件

[root@localhost zu]# vi /etc/samba/smb.conf
添加以下内容
[user]
    comment = user
    path = /public
    valid users = test //指定用户
    public = yes        //访问权限
    writable = yes     //是否允许写入
    create mask = 0765 //创建文件和文件夹的权限

重启服务

[root@localhost zu]# systemctl restart smb

windows访问测试

Centos7配置Samba服务详细步骤_第2张图片
匿名用户可以访问share文件,但是不能访问user文件,指定用户需要登录才能访问user文件。