首先我们给虚拟机安装samba服务(如果搭的是别的仓库记得开仓库)

输入命令:yum install samba

虚拟机中使用Samba实现文件共享-LMLPHP

samba服务的配置文件在,我们来看一下/etc/samba/smb.conf

输入命令:cat   /etc/samba/smb.conf

虚拟机中使用Samba实现文件共享-LMLPHP

如果有很多注释行的话我们可以用下面这个命令过滤一下(我的没有所以没有这步)

输入命令:cat /etc/samba/smb.conf.bak | grep -v "#" | grep -v ";" | grep -v "^$" > /etc/samba/smb.conf

我们进入配置文件,将其中的参数改成这个样子

输入命令:vim  /etc/samba/smb.conf

虚拟机中使用Samba实现文件共享-LMLPHP

虚拟机中使用Samba实现文件共享-LMLPHP

虚拟机中使用Samba实现文件共享-LMLPHP

虚拟机中使用Samba实现文件共享-LMLPHP

虚拟机中使用Samba实现文件共享-LMLPHP

之后重启服务

输入命令:systemctl   restart   smb

虚拟机中使用Samba实现文件共享-LMLPHP

但此时SMB服务默认的验证模式为user,我们需要先创建用户数据库后才可以正常使用

首先验证一下是否为user模式
输入命令: cat /etc/samba/smb.conf
虚拟机中使用Samba实现文件共享-LMLPHP

接下来创建共享文件夹 (因为我们在下面的配置文件要用到,所有我们要建一个)

输入命令:mkdir /database

虚拟机中使用Samba实现文件共享-LMLPHP

我们在SMB服务主配置文件的最下面追加共享文件夹的配置参数(在最后面追加就好了)

输入命令: vim /etc/samba/smb.conf

虚拟机中使用Samba实现文件共享-LMLPHP

之后我们再重启一下服务

输入命令:systemctl   restart  smb

虚拟机中使用Samba实现文件共享-LMLPHP

可以把他添加到开机启动项

输入命令:systemctl enable smb

虚拟机中使用Samba实现文件共享-LMLPHP

下面我们使用Windows主机尝试访问,在我的电脑中输入\\192.168.22.100  (我服务器的ip是这个)(我们刚才下载服务以及修改服务的虚拟机就是服务器)

虚拟机中使用Samba实现文件共享-LMLPHP

当然我们这个时候还是进不去,嘻嘻,因为我们还没有配置完

在Windows系统要求先验证后才能访问共享,而SMB服务配置文件中密码数据库后台类型为”tdbsam“,所以这个帐户和口令是Samba服务的独立帐号信息,我们需要使用pdbedit命令来创建SMB服务的用户数据库。

虚拟机中使用Samba实现文件共享-LMLPHP

接下来我们创建SMB服务独立的帐号

输入命令:useradd longshisan

虚拟机中使用Samba实现文件共享-LMLPHP

下面我们为longshisan系统用户提升为SMB用户,同时设置密码

输入命令:pdbedit -a -u longshisan

虚拟机中使用Samba实现文件共享-LMLPHP

我们接下来在物理机中再试一下

虚拟机中使用Samba实现文件共享-LMLPHP

这时候你会发现你进来了!Windows成功访问SMB服务

虚拟机中使用Samba实现文件共享-LMLPHP

如果你在其中创建文件夹出现了这个问题,那么就是权限不够,我们去改一下权限

虚拟机中使用Samba实现文件共享-LMLPHP

切换到那个/文件夹下,查看一下

虚拟机中使用Samba实现文件共享-LMLPHP

改下权限

虚拟机中使用Samba实现文件共享-LMLPHP

再建就可以啦

虚拟机中使用Samba实现文件共享-LMLPHP

我们建立一个文件夹,再在虚拟机上看看,可以滴!

虚拟机中使用Samba实现文件共享-LMLPHP

虚拟机中使用Samba实现文件共享-LMLPHP

当然longshisan下也可以

虚拟机中使用Samba实现文件共享-LMLPHP

我们再在虚拟机中尝试一下,我们需要在客户端安装cifs-utils软件包 (额。。。虚拟机之间samba服务我并没有实现)

输入命令:yum install -y cifs-utils

虚拟机中使用Samba实现文件共享-LMLPHP

下面我们创建挂载目录

输入命令:mkdir /database

虚拟机中使用Samba实现文件共享-LMLPHP

然后我们在root家目录创建认证文件(依次为SMB用户名、SMB用户密码、SMB共享域)
输入命令:vim auth.smb

虚拟机中使用Samba实现文件共享-LMLPHP

这个文件比较重要我,我们给他小一点的权限

虚拟机中使用Samba实现文件共享-LMLPHP

我们再配置其挂载信息(内容依次为远程共享信息、本地挂载目录、文件系统类型、认证文件以及开机自检选项),在后面追加

输入命令:vim /etc/fstab

虚拟机中使用Samba实现文件共享-LMLPHP

下面使用mount命令的-a参数挂载所有在fstab文件中定义的文件信息

输入命令:mount -a

虚拟机中使用Samba实现文件共享-LMLPHP

成功挂载Samba的共享目录(能够看到共享文件了)

输入命令:cat /database/1.txt

05-15 19:07