samba
简介
本来叫smb,结果不让注册,改名叫samba(桑巴)
配置过程
- 安装samba服务
yum install samba
- 修改配置文件
mv smb.conf smbbak.conf
# -v 反选删除注释行及空行,^行首 $行尾,组合起来是空行
cat /ect/samba/smbback.conf|grep -v "#"|grep -v ";"|grep "^$">smb.conf
vim smb.conf
[global] #全局参数。
workgroup = MYGROUP #工作组名称
server string = Samba Server Version %v #服务器介绍信息,参数%v为显示SMB版本号
log file = /var/log/samba/log.%m #定义日志文件的存放位置与名称,参数%m为来访的主机名
max log size = 50 #定义日志文件的最大容量为50KB
security = user #安全验证的方式,总共有4种
#share:来访主机无需验证口令;比较方便,但安全性很差
#user:需验证来访主机提供的口令后才可以访问;提升了安全性
#server:使用独立的远程主机验证来访主机提供的口令(集中管理账户)
#domain:使用域控制器进行身份验证
passdb backend = tdbsam #定义用户后台的类型,共有3种
#smbpasswd:使用smbpasswd命令为系统用户设置Samba服务程序的密码
#tdbsam:创建数据库文件并使用pdbedit命令建立Samba服务程序的用户
#ldapsam:基于LDAP服务进行账户验证
load printers = yes #设置在Samba服务启动时是否共享打印机设备
cups options = raw #打印机的选项
[homes] #共享参数
comment = Home Directories #描述信息
browseable = no #指定共享信息是否在“网上邻居”中可见
writable = yes #定义是否可以执行写入操作,与“read only”相反
[printers] #打印机共享参数
comment = All Printers
path = /var/spool/samba #共享文件的实际路径(重要)。
browseable = no
guest ok = no #是否所有人可见,等同于"public"参数。
writable = no
printable = yes
# 以下为新增,用于共享文件的实际存储位置
[database]
command=dont modify anything # 提示信息
path = /home/database # 文件的实际存放位置
public=no # 非公开的,也就是不能通过搜索去搜
writable=yes # 允许创建修改文件
- 增加共享文件夹的访问用户
pdbedit -a -u hupeng
# 下面输入密码巴拉巴拉巴拉的,这个密码只有共享文件用到,不是用户的登陆密码
- 创建共享文件路径
mkdir /home/database
chown -Rf hupeng:hupeng /home/database
- 修改共享文件路径的上下文权限,因为是在home下,home递归的默认权限不允许samba访问
semanage fcontext -a -t samba_share_t /home/database
restorecon -Rv /home/database
- 修改域权限
setsebool samab_enable_home_dirs=on
- 重启服务
# 这个smb通过tab补不出来
systemctl restart smb
sytemctl enable smb
windows访问
//192.168.10.10 剩下的就不写了
linux 访问
需要一个小插件
- 下载插件
yum install cifs-uilts
- 创建共享文件路径
mkdir /database
- 创建认证文件
vim /root/auth.smb
# 以下为文件内容,用于自动挂载使用
username=hupeng
password-123456
# 等同于共享服务器的/etc/samba/smb.conf中group
dtmain=mygroup
- 配置挂载路径
vim /etc/fstab
# 以下为新增
//192.168.10.10/database /database cifs credentials=/root/auth.smb 0 0
- 全部挂载
mount -a
- 访问
可能遇到的问题
- 挂载不上去,提示如下
原因为cifs-uilts安装失败了,之所以失败是服务器重启过,改在的cdrom掉了,需要重新挂载,最好加入到fstab下。
NFS
简单好用,但是仅适合linux间的共享,
配置
- 安装nfs服务,一般默认已经安装(所以如果服务器是内网,并且没有现成的yum源,可以用这个)
yum install nfs-utils - 更改配置文件
vim /etc/exports
# /nfsfile 共享的目录
# 192.168.10.*能够搜索到这个共享目录的地址段
# rw 允许读写
# sync 同时写入内存,防止数据丢失
# root_squash 共享用户文件写入时以管理员身份写入
/nfsfile 192.168.10.*(rw,sync,root_squash)
- 重启服务
# rpcbind 用来发送地址
systemctl restart rpcbind
systemctl enable rpcbind
systemctl restart nfs
systemctl enable nfs
- 客户端搜索可挂载的目录
showmount -e 192.168.10.10
- 客户端挂载目录
mount -t nfs 192.168.10.10:/nfsfile /nfsfile
# 修改配置文件
vim /etc/fstab
# 以下为增加行
192.168.10.10:/nfsfile /nfsfile nfs default 0 0