一.介绍:

什么是samba:

samba是一个能让你的Unix计算机和其它MS Windows计算机相互共享资源的软件。samba提供有关资源共享的三个功能,包括:smbd,执行它可以使Unix能够共享资源给其它的计算机;而smbclient就是让Unix去存取其它计算机的资源;最后一个smbmount,则是类似MS Windwos 下“网络磁盘驱动器”的功能,可以让你把其它计算机的资源挂在自己的档案系统下。它们功能虽然简单,但没有samba,Unix和Windows的资源就很难共享。samba的功能十分实用,虽然没用亮丽的外表,但在局域网络中,它的确是一个很重要的工具。

smb协议:

SMB(ServerMessage Block,服务信息块)协议可以看作是局域网上的共享文件/打印机的一种协议,它可以为网络内部的其它Windows和Linux机器提供文件系统、打印服务或是其他一些信息。

 SMB的工作原理是让NetBIOS(Win95网络邻居通信协议)与SMB这两种协议运行在TCP/IP的通信协议上,且使用NetBIOSnameserver让用户的Linux机器可以在Windows的网络邻居里被看到,所以就可以和Win95/NT主机在网络上相互沟通,共享文件与服务了。

目前Microsoft正在开发一种新的文件和打印共享协议--CIFS(Common Internet FilesSystem,通用网络文件协议),该协议支持TCP/IP和DNS 等协议,能在www上支持文件和打印共享。在CIFS下服务器实际上是DNS名,由主机名和域名组成。这种变化是从NetBIOS命令结构中分离出来的。目前CIFS还没有得到广泛的应用。现在在Linux和Win95/NT之间的文件共享注意还是SMB和NFS。

samba的主要功能:

(1)提供Windows NT风格的文件和打印机共享Windows7、Windows8、Windows 10等依据此共享UNIX等其他操作系统的资源,外表看起来和共享文件夹 的资源没有区别。

 (2)解析NetBIOS名字IP在Windows网络中,为了能够利用网上资源,同时自己的资源也能被别人所利用;各个主机都定期地向网上广播自己的身份信息。而负责收集这些信息,为别的主机;提供检索情报的服务器就被称为浏览服务器.Samba 可以有效地完成这项功能在跨越网关的时候Samba还可以作WINS服务器使用。

(3)提供SMB客户功能利用Samba提供的smbclint程序可以从UNIX下以类似于FTP的方式访问Windows的资源。

(4)备份PC上的资源利用一个叫smbtar的shell脚本,可以使用tar格式备份和恢复一台远程Windows上的共享文件。

(5)提供一个命令行工具,在其上可以有限制地支持NT的某些管理功能。

 

二.安装和使用samba服务:

安装samba:yum -y install samba*    /*表示所有

启动服务:systemctl start smb nmb 

 

三.创建共享目录

// 创建的目录即之后能够在Windows主机上直接访问的目录。
// 例如:在用户gzd的主目录下新建share文件夹为共享目录
mkdir --p /home/gzd/smbshare          //-p  确保目录名称存在,不存在的就建一个
// 由于Windows下的文件夹需可读可写可执行,需更改权限为777
sudo chmod 777 /home/gzd/smbshare

 

四:修改配置文件

// 修改 /etc/samba/smb.conf
sudo vim /etc/samba/smb.conf


// 在smb.conf文件最后加上以下内容

[share]
path = /home/gzd/smbshare
public = yes
writable = yes
valid users = gzd
create mask = 0644
force create mode = 0644
directory mask = 0755
force directory mode = 0755
available = yes

共享云服务器是什么 共享型服务器是什么_服务器

 

五.设置登录密码

// 新建/etc/samba/smbpasswd文件
touch /etc/samba/smbpasswd
// 根据2.3设置的valid users,设置用户密码
// gzdaijie 替换为你在2.3中设置的用户名
sudo smbpasswd -a gzd
//输入两次密码后,会提示 Added user gzd. 表示设置成功
// 若用户名非当前登录系统的用户名,可能会提示Failed

 

六.重启服务

systemctl restart smb

 

七.在win上测试

打开win文件管理器,输入\\ip地址或主机名\share

ip a    //查看主机ip

等待几秒后

输入用户名和密码