一. Samba简介
Samba是在Linux系统上实现SMB(Session MessageBlock)协议的一个免费软件,以实现文件共享和打印机服务共享。
samba是模仿Windows网上邻居的SMB的通讯协议,将Linux操作系统“假装成”Windows操作系统,通过网上邻居的方式来进行文件传输的。
samba的特点:支持匿名和身份验证共享数据,它的安全性也比较高
samba支持的协议有:
nmb(监听137,138号端口,提供域名访问,属于UDP协议)
smb(监听139号端口,服务消息块,提供Linux平台共享服务,属于TCP协议)
cifs(监听445端口,提供windows平台共享服务,属于TCP协议)
samba的主配置文件:/etc/samba/smb.conf
二.Samba服务器组件
samba有两个主要的进程smbd和nmbd。smbd进程提供了文件和打印服务,而nmbd则提供了NetBIOS名称服务和浏览支持,帮助SMB客户定位服务器,处理所有基于UDP的协议。
三.安装Samba服务
1.安装Samba服务
修改主机名
[root@localhost ~]# hostnamectl set-hostname samba
[root@localhost ~]# bash
[root@samba ~]#
安装Samba服务
[root@samba ~]# yum install -y samba
2.配置Samba服务
修改Samba配置文件(/etc/samba/smb.conf)
[root@samba ~]# vi /etc/samba/smb.conf
...
load printers = yes --->> no //修改为no
cups options = raw
; printcap name = /etc/printcap --->> /dev/null //修改为/dev/null
# obtain a list of printers automatically on UNIX System V systems:
; printcap name = lpstat
; printing = cups --->> bsd
disable spoolss = yes //新增
...
[share] //新增此段内容
path = /opt/share
browseable = yes
public = yes
writable = yes
...
注:
l /opt/share:这个目录是将要共享的目录,若没有,需要创建。
l browseable:参数是操作权限;
l public:参数是访问权限;
l writable:参数是对文件的操作权限。
创建目录并赋权限
[root@samba ~]# mkdir /opt/share
[root@samba ~]# chmod 777 /opt/share/
启动Samba服务
[root@samba ~]# systemctl start smb
[root@samba ~]# systemctl start nmb
关闭防火墙
[root@samba ~]# systemctl stop firewalld
[root@samba ~]# setenforce 0
查看端口状态
创建Samba用户
[root@samba ~]# smbpasswd -a root //此用户需为系统存在的用户
注:密码设为000000
重启Samba服务
[root@samba ~]# systemctl restart smb
3.使用Samba
进入运行输入服务IP地址
注:ip地址前需使用反斜杠\\
登录后输入用户密码
登录后显示
注:samba默认共享用户目录,share为配置文件共享的目录
测试
将共享文件移入share目录
[root@samba ~]# mv /media/* /opt/share/
进入Windows查看share目录中文件
|