Samba概述
Samba适用于在windows和linux之间进行文件共享,互相通信,我们可以将其搭建成一个功能非常强大的文件服务器,也可以将其架设成打印服务器提供本地和远程联机打印。
【nfs只能用于linux和linux之间的文件共享】
Samba应用环境
文件和打印机共享:是Samba的主要功能,SMB进程实现资源共享,将文件和打印机发布到网络之中,以供用户可以访问。
身份验证和权限设置:smbd服务支持user mode和domain mode等身份验证和权限设置模式,通过加密方式可以保护共享的文件和打印机。
名称解析:Samba通过nmbd服务可以搭建NBNS(NetBIOS Name Service)服务器,提供名称解析,将计算机的NetBIOS名解析为IP地址。
浏览服务:局域网中,Samba服务器可以成为本地主浏览服务器(LMB),保存可用资源列表,当使用客户端访问Windows网上邻居时,会提供浏览列表,显示共享目录,打印机等资源。
NETBIOS协议:
NetBIOS是Network Basic Input/Output System的简称,网络基本输入输出系统协议。一般指用于局域网通信的一套API,是由IBM公司开发。主要作用就是通过NETBIOS协议获得计算机名称,然后把计算机名解析为对应的IP地址。(可以理解为Samba服务的前身)
使用
安装:yum install samba samba-client
启动:systemctl start smb.service
查看端口:netstat -antpu| grep smb [445.139]
设置开机启动:chkconfig --level 3 smb on
linux使用:
smbclient -L sambaIP
windows使用:
win+R,输入共享的linux服务器ip
修改配置文件
修改配置文件:
- smb.conf,指定共享目录,为共享目录设置权限
- 在smb.conf文件中指定日志文件名称和存放路径
- 设置共享目录的本地系统权限及samba共享权限
- 重启服务
yum install samba samba-client
cp /etc/samba/smb.conf /etc/samba/smb.conf.bak
vi /etc/samba/smb.conf//在这里进行配置
mkdir -p /samba/file//共享文件
sudo chmod -R 0755 /samba/file
sudo groupadd sambashare
sudo useradd -M -d /samba/file -s /usr/sbin/nologin -G sambashare hh
sudo chown hh:sambashare /samba/file
sudo smbpasswd -a hh
sudo smbpasswd -e hh
systemctl restart smb.service
systemctl restart nmb.service
verify: smbclient //localhost/file -U hh
sudo chcon -t samba_share_t /samba/hh
systemctl stop firewalld
chmod -R 777 wfsc-cluster-45
note
做成服务,随机启动,关掉防火墙,
在/etc/hosts中配置本机的id,如果在这里不配置的话,linux会找不到本机,无法共享;
修改smb.conf中的workgroup=WORKGROUP//如果使用的是工作组,就这样配置