在早期的网络世界当中,档案数据在不同主机之间的传输大多是使用 ftp 这个好用的服务器软件来进行传送。不过使用 FTP 传输档案却有个小小的问题, 那就是你无法直接修改主机上面的档案数据!也就是说,你想要更改 Linux 主机上面的某个档案时,你必须要将该档案自服务器下载后才能修改。 也因此该档案在服务器与客户端都会存在。这个时候,万一如果有一天你修改了某个档案, 却忘记将数据上传回主机,那么等过了一阵子之后,呵呵,你如何知道那个档案才是最新的?
简单来说,ftp是作为一个文件传输的工具,而samba服务就是实现一个文件实时共享的一个服务。在平常工作中,我们一般实现平台之间文件共享的场景有如下几种:Linux服务器-->Linux服务器,Linux服务器-->Windows服务器,Windows-->Linux服务器。既然场景不同,尤其是跨平台的文件共享,就必须选择正确的服务。
一般情况,我们选择以下几个服务来解决以上的问题:
Linux服务器的文件共享给Linux服务器:NFS服务
Linux服务器的文件共享给Windows服务器:Samba服务
Windows服务器的文件共享给Linux服务器:这里可以直接采用将windows的共享文件路径挂载至Linux的目录下,即可访问Windows下的文件(这里不得不小小地吐槽一下Windows机器。。)
共享模式的配置(无需账户密码)
在这个模式中,如果在局域网内足够安全,或者不是特别重要的文件的互访,那么这个模式的配置是十分简单和迅速的。下面开始配置。
【1】安装samba服务
#yum install samba -y
【2】修改配置文件
# cd /etc/samba
# cp smb.conf smb.conf.bak 备份一份再说
# vim smb.conf 把多余的注释去掉,增加如下的配置
# 先设定好服务器整体环境方面的参数
[global]
# 与主机名有关的设定信息
workgroup = Yumihouse
netbios name = 172.16.57.99
server string = This is Yumi's samba server
# 与登录文件有关的设定项目,注意变量 (%m)
log file = /var/log/samba/log.%m
max log size = 50
# 这里才是与密码有关的设定项目!
security = share
# 分享的资源设定方面:
[temp] #分享资源名称
comment = Temporary file space #简单的解释此资源
path = /tmp #实际 Linux 分享的目录
writable = yes #是否可写入?在此例为是的
browseable = yes #能不能被浏览到资源名称
guest ok = yes #单纯分享时,让用户随意登入的设定值
修改完成后,保存退出。
【3】testparm 检查 smb.conf 的语法是否正确
#testparm
当出现有一下这句话时Loaded services file OK.说明当前配置正确,如有错误根据提示修改直到无误。
【4】启动服务并查看端口
#/etc/init.d/smb start
#netstat -tplnu | grep smb
tcp 0 0 0.0.0.0:445 0.0.0.0:* LISTEN 6604/smbd
tcp 0 0 0.0.0.0:139 0.0.0.0:* LISTEN 6604/smbd
tcp 0 0 :::445 :::* LISTEN 6604/smbd
tcp 0 0 :::139 :::* LISTEN 6604/smbd
默认的139和445端口起来就启动成功了
【5】客户端检测
在Linux服务端,我这边的防火墙和selinux是默认关闭的,读者可根据实际情况进行配置
在Windows菜单中点击运行:
输入服务端的地址,即可访问到Linux预设的资源了
到此共享模式的配置就结束了,是不是很快捷方便呢?
如果需要更加安全的权限控制,之后还会更新账户密码模式的配置。
------------------------------------分割线------------------------------------