SAMBA 的实现原理以及使用方法
------------------------------------------------------------------------
文章首发于优快云。作者:卫岩,博客地址http://blog.youkuaiyun.com/wei2856059,转载请注明出处。谢谢。
------------------------------------------------------------------------
一.SAMBA的起源
对于windows的网上邻居来讲,共享文件的方式用的是SMB和CIFS协议以及NETBIOS协议Linux/Unix之间用的是NFS协议。
但是Linux和Windows之间是不能共享的,所以澳大利亚国立大学的Andrew Tridgell,决定开发一款软件,这款软件就是为了实现不同的系统之间互相共享文件的,于是一款叫做SMB的软件横空出世了,但是这个名字不能被注册成商标,因为已经有SMB协议了,于是作者给名字上加了两个A,就成了我们即将使用的功能强的文件共享服务器:
SAMBA
二.SAMBA的工作方式
SAMBA主要提供的是SMB/CIFS或者NETBIOS协议的。
所以只要使用了SAMBA,就能实现让Linux出现在Windows的网上邻居里,或者,让Windows的文件共享在Linux上--
一旦在linux上安装之后,有两个主要进程:
1.nmbd :提供NETBIOS 名称解析的
2.smdb : 提供文件共享的。
而由于NETBIOS协议对于windows来讲监听TCP的139端口和UDP的137,138端口 ,所以nmbd在linux上模拟出了udp的137和138端口,以及tcp的139端口,smdb上模拟出 tcp的445端口。而SAMBA将在Linux上同时监听这4个端口。
三.认识SAMBA
SAMBA的软件都是”samba”开头的
samba-client
samba-common 这两个都是作为客户端使用的
samba作为服务端使用
samba-swat 基于图形的一个控制界面
安装完后,它的配置文件在 /etc/samba/smb.conf
而/etc/init.d/smb 脚本,实现了对于SAMBA的控制
比如:/etc/init.d/smb start
小提醒:samba是一款接受selinux控制的软件,所以配置的时候一定要关闭selinux
四.