Linux中搭建samba服务器全攻略(centos版)

服务器
SMB最初是IBM的贝瑞·费根鲍姆(Barry Feigenbaum)研制的,其目的是将DOS操作系统中的本地文件接口“中断13”改造为网络文件系统。

前言

 

smb是一个协议名,它能被用于Web连接和客户端与服务器之间的信息沟通。SMB最初是IBM的贝瑞·费根鲍姆(Barry Feigenbaum)研制的,其目的是将DOS操作系统中的本地文件接口“中断13”改造为网络文件系统。

smb服务简介

后来微软对这个发展进行了重大更改,这个更改后的版本也是最常见的版本。微软将SMB协议与它和3Com一起发展的网络管理程序结合在一起,并在Windows for Workgroups和后来的Windows版本中不断加入新的功能。

[[249097]]

SMB一开始的设计是在NetBIOS协议上运行的(而NetBIOS本身则运行在NetBEUI、IPX/SPX或TCP/IP协议上),Windows 2000引入了SMB直接在TCP/IP上运行的功能。在这里我们必须区分SMB协议和运行在这个协议上的SMB业务,以及NetBIOS和使用SMB作为认证隧道的DCE/RPC业务。此外我们还要区分主要(但不仅仅)直接使用NetBIOS数据报的“网络邻居”协议。

1996年,Sun推出WebNFS的同时[1],微软提出将SMB改称为Common Internet File System[2]。此外微软还加入了许多新的功能,比如符号链接、硬链接、提高文件的大小。微软还试图支持直接联系,不依靠NetBIOS,不过这个试图依然处于尝试阶段,并需要继续完善。微软向互联网工程工作小组提出了部分定义作为互联网草案[3]。不过这些提案现在均已过期。

由于SMB协议对于与占主要地位的Microsoft Windows平台通讯时的重要性,而目前该平台使用的SMB协议与初始的版本相比有巨大的改变,因此Samba项目就是被创立来逆向工程来提供一个与SMB软件兼容的自由软件,使得非微软操作系统也能够使用它。

在Windows Vista中微软又推出了Server Message Block 2.0。

【1】在安装前,确保

(1)防火墙已关闭:使用命令

  1. #systemctl stop iptables.service 

如果出现错误警告 “Failed to stop iptables.service: Unit iptables.service not loaded.”则表示还没安装防火墙

(1-1)安装防火墙:(题外:在安装的时候不能联网,出现了提示 network is unreachable ,需要重启网络 service network restart )

使用指令 :

  1. #yum install iptables-services 

安装完成后设置

  1. #systemctl stop iptables 

(2)关闭SELINUX(查看SELINUX状态:#getenforce)

(2-1)编辑配置文件

vi /etc/sysconfig/selinux , 把里边的一行改为 SELINUX=disabled

(2-2)使用setenforce命令设置临时关闭

setenforce 0

【2】安装samba

  1. yum install samba samba-client samba-swat 

查看安装情况: rpm -qa|grep samba

Samba服务器安装完毕,会生成配置文件目录 /etc/samba 和其他一些samba可执行命令工具

(1) /etc/samba/smb.conf 是samba的核心配置文件

(2) /etc/init.d/smb 是samba的启动/关闭文件

【3】配置文件smb.conf 并创建用户

(3-1)配置(在Share Definitions项下添加[tmp]配置信息)

(3-2)创建用户(e.g. 创建用户名为apache的用户)

  1. #smbpasswd -a apache 

修改完后,重启samba,关闭防火墙,增加用户权限,否则无法在共享目录创建文件和文件夹

【4】Windows对Linux进行映射

打开我的电脑 -> 映射网络驱动器 -> 在文件夹栏输入 “ \虚拟机ip mp ” ( tmp为配置文件中设置的文件夹 ) -> 在弹出的窗口中填写创建的samba用户名和密码 -> 进入共享目录 ( 此处共享目录为www下的html目录 )

*可能会出现的“Windows 无法访问\ip addr\tmp”的错误,即windows无法访问虚拟机系统

点击诊断查看问题,显示虚拟机没有响应

可能是虚拟机的防火墙没成功关闭,使用以下指令

  1. #systemctl stop firewalld.service 
责任编辑:武晓燕 来源: 今日头条
相关推荐

2009-11-20 15:02:06

2010-08-25 14:36:02

DHCP服务器

2009-10-12 15:06:59

2011-08-09 09:37:49

2010-08-04 18:03:27

NFS服务器

2013-08-05 15:48:10

2010-05-18 11:12:21

2010-09-14 10:08:41

Squid安装

2009-10-28 10:21:51

2020-11-23 15:21:12

Linux环境变量

2020-12-28 10:50:09

Linux环境变量命令

2013-04-15 10:48:16

Xcode ARC详解iOS ARC使用

2013-06-08 11:13:00

Android开发XML解析

2010-04-23 14:04:23

Oracle日期操作

2010-05-20 19:22:22

2010-03-31 10:05:40

CentOS Samb

2009-10-19 15:20:01

家庭综合布线

2009-12-14 14:32:38

动态路由配置

2014-03-19 17:22:33

2009-02-20 11:43:22

UNIXfish全攻略
点赞
收藏

51CTO技术栈公众号