Loading... <p><span style="color: inherit;font-family: inherit;font-size: 2.6em;font-weight: bold;line-height: 1.1">文件共享服务之SAMBA</span></p> <ul class=" list-paddingleft-2"> <li> <p>文件共享服务之SAMBA</p> </li> <ul class=" list-paddingleft-2"> <li> <p>一、samba出现的意义</p> </li> <li> <p>二、samba协议描述</p> </li> <li> <p>三、samba为客户端的实现</p> </li> <li> <p>四、samba为服务端的实现</p> </li> <li> <p>五、使用图形界面配置SAMBA</p> </li> </ul> </ul> <h3 id="一samba出现的意义">一、samba出现的意义</h3> <blockquote><ul class=" list-paddingleft-2"> <li> <p>首先nfs实现系统文件挂载linux与linux之间,linux到windows之间实现的并不是那么理想</p> </li> <li> <p>FTP可以实现linux和windows之间共享文件,但并不是文件系统挂载,只是协议之间进行传输文件</p> </li> <li> <p>samba出现的意义就是解决linux与windows之间实现文件系统挂载而出现</p> </li> </ul> </blockquote> <h3 id="二samba协议描述">二、samba协议描述</h3> <blockquote><ul class=" list-paddingleft-2"> <li> <p>smb: Service Message Block</p> </li> <li> <p>CIFS: Common Internet File System</p> </li> <li> <p>samba需要通过smb协议或者CIFS协议才能与windwos建立文件系统共享</p> </li> <li> <p>windwos之间实现文件系统共享是通过CIFS </p> </li> <ul class=" list-paddingleft-2"> <li> <p>windows是以网上邻居发现的形式对各个网络内的主机实行文件共享的</p> </li> <li> <p>网上邻居的发现的主机都是名称不是IP这个就需要另外一个协议NetBIOS</p> </li> </ul> <li> <p>所以samba实现需要三个协议才能与windows建立文件共享</p> </li> <ul class=" list-paddingleft-2"> <li> <p>nmbd: netbios (实现主机与ip的转换)</p> </li> <li> <p>smbd: cifs(实现与windows建立共享的协议,linux之间是nfs协议)</p> </li> <li> <p>winbindd: (实现可以让linux加入windowos的AD域中,windows没有域一般不开启这个进程)</p> </li> </ul> <li> <p>samba端口137/udp, 138/udp, 139/tcp, 445/tcp</p> </li> <ul class=" list-paddingleft-2"> <li> <p>137和138一般是用来netbios协议</p> </li> </ul> </ul> </blockquote> <h3 id="三samba为客户端的实现">三、samba为客户端的实现</h3> <blockquote><ul class=" list-paddingleft-2"> <li> <p>centos6.5默认是安装samba客户端的</p> </li> <li> <p>交互式数据访问: <br /> # smbclient -L HOST -U USERNAME <br /> 获取windows服务器端的共享文件目录有哪些 <br /> # smbclient //SERVER/shared_name -U USERNAME <br /> 交互登录windows的共享目录</p> </li> <li> <p>基于挂载的方式访问: <br /> mount -t cifs //SERVER/shared_name /mount_point -o username=NAME,password=PASS <br /> 这种方式不建议开机挂载</p> </li> </ul> </blockquote> <h3 id="四samba为服务端的实现">四、samba为服务端的实现</h3> <blockquote><ul class=" list-paddingleft-2"> <li> <p>yum -y install samba</p> </li> <li> <p>samba用户是系统用户,但是密码不是系统密码</p> </li> <li> <p>将系统用户添加为samba用户 </p> </li> <ul class=" list-paddingleft-2"> <li> <p>smbpasswd -a 系统用户名</p> </li> </ul> <li> <p>主配置文件/etc/samba/smb.conf </p> </li> <ul class=" list-paddingleft-2"> <li> <p>workgroup=WORKGROUP设置和windows的工作组同名</p> </li> <li> <p>自定义:</p> </li> <li> <p>[shared_name] <br /> path = /path/to/share_directory 共享目录 <br /> comment = Comment String 注释 <br /> guest ok = {yes|no} 来宾账户 <br /> public = {yes|no} 是否公开 <br /> writable = {yes|no} 是否可写 <br /> read only = {yes|no} 是否可写 <br /> write list = +GROUP_NAME 可写列表</p> </li> </ul> <li> <p>重启服务 </p> </li> <ul class=" list-paddingleft-2"> <li> <p>service nmb restart;service smb restart</p> </li> </ul> </ul> </blockquote> <h3 id="五使用图形界面配置samba">五、使用图形界面配置SAMBA</h3> <blockquote><ul class=" list-paddingleft-2"> <li> <p>需要用到swat软件</p> </li> <li> <p>yum -y install samba-swat</p> </li> <li> <p>配置文件在守护进程里</p> </li> <li> <p>vim /etc/winetd.d/swat <br /> service swat <br /> { <br /> port = 901 <br /> socket_type = stream <br /> wait = no <br /> only_from = 192.168.0.0/16 允许访问地址段 <br /> user = root <br /> server = /usr/sbin/swat <br /> log_on_failure += USERID <br /> disable = no <br /> }</p> </li> <li> <p>service xinetd restart</p> </li> <li> <p>http://192.168.x.x:901</p> </li> <li> <p>默认端口为901</p> </li> </ul> </blockquote> <p><!--!doctype--></p> 最后修改:2021 年 12 月 10 日 10 : 53 AM © 允许规范转载 赞赏 如果觉得我的文章对你有用,请随意赞赏 赞赏作者 支付宝微信