使用 samba 实现文件共享
2017-03-09 本文已影响0人
onlylink
Samba简述:
SMB(Server Messages Block)协议:实现局域网内文件或打印机等资源共享服务的协议。
Samba服务程序是一款基于SMB协议并由服务端和客户端组成的开源文件共享软件,实现了Linux与Windows系统间的文件共享。
搭建Samba 共享服务器 :
环境: centos6.6 IP:192.168.239.131
下载:
yum install samba
备份配置文件,并过滤繁多的注释:
cp /etc/samba/smb.conf /etc/samba/smb.conf.bak
cat /etc/samba/smb.conf|grep -v "#"|grep -v ";"|grep -v "^$">/etc/samba/smb.conf
创建共享目录:
mkdir /sharedir
在 /etc/samba/smb.conf 下添加如下配置参数:
[sharedir]
comment = share #描述信息,可写一些警告什么的
path = /database #共享目录
public = no #关闭所有人可见
writable = yes #允许写入操作
启动 samba 服务并添加到开机自启动:
service smb start
chkconf smb on
windows 与 linux 文件共享:
清空防火墙规则:
iptables -F
创建Samba 服务账号:
useradd smbuser
pdbedit -a -u smbuser
在Windows主机上系统的关机键旁搜索栏里填:
\\192.168.239.131
回车后,就能看到登入页面,填之前创建的用户和密码,即可看到共享目录
然而在此时你是没有访问权限的,需要设置selinux:
chown -Rf smbuser:smbuser /sharedir
setsebool -P samba_enable_home_dirs on
semanage fcontext -a -t samba_share_t /database
restorecon -Rv /database/
semanage命令 在centos6.6 默认里是没有的,需要安装policycoreutils-python
yum install policycoreutils-python
现在可以在windows 上访问共享目录,创建文件了 乛?乛
当然你也可以关闭selinux,不过在rhce考试中,是要开启的,我考的时候Samba好像有两道大题╮( ̄▽ ̄)╭
linux 与 linux 之间文件共享:
准备另一台linux主机
安装cifs-utils 软件包:
yum install cifs-utils -y
创建挂载目录:
mkdir /database
在root目录下创建认证文件auth.smb内容如下:
username=smbuser #在SMB共享服务器上创建的用户名
password=centos #该用户名的密码
domain=MYGROUP #SMB 共享域
安全起见,修改文件权限:
chmod -Rf 600 auth.smb
配置挂载信息,在/etc/fstab 下添加:
//192.168.239.131/database /database cifs credentials=/root/auth.smb 0 0
挂载并检验:
mount -a
cd /sharedir 创建测试文件,切到 Samba 服务器上看是否存在该文件
Samba算是比较实用的一个服务,昨天我在windows物理机上,想往我的虚拟机里传一个目录文件时,懒得下载winscp,就直接在虚拟机里撘了个samba服务,用它来传文件,也是搞事情 ╮( ̄▽ ̄)╭ 。