一、序言

 
不知道大家是否考虑过服务器与终端机或者叫桌面机、工作站等的区别都有什么?也许你会说体积不同,也许你会说功能不同,甚至有些人会拉一个清单出来说说硬件上面的区别等。其实我最想说的是,两者最大的区别之一:服务器是给多个人用的,属于共享型设备,而终端机也好,桌面机也罢,大部分情况下都是给个人用的,属于独享型设备。从高层应用层来看,无论是WEB服务器、邮件服务器、代理服务器、数据库服务器、无论提供的是什么服务,这些服务都是共享资源型,从硬件的角度上看,都是属于共享型的设备。提出这个观点 ,忽悠你接受这个概念,是为了下面更好的说明。
<?xml:namespace prefix = o ns = "urn:schemas-microsoft-com:office:office" />

 

二、文件服务

  

文件服务是服务器最古老的服务之一。现在的操作系统无论是WINDOWS 还是LINUX本身都提供了很强大的服务组件,用来将服务器部署成各种需求的应用服务、基础服务、存储。或集群服务等。在文件或文件夹共享中,LINUX系统使用了大名鼎鼎的SAMBA服务。而在WINDOWS SERVER中叫文件服务。不过很多人还是对文件服务有一点点小小的误区。所谓文件服务,其实说白了就是文件或文件夹共享或者用我的观点叫共享文件管理。很多人把文件服务同时理解为文件管理。实际上并不是文件管理。(基础的文件管理是基于文件系统来进行的)。如果文件或文件夹没有集中共享的需求,那么分散到各个客户端由创造者独自使用是理所当然的,但是如果有共享文件或文件夹,甚至不止一个共享文件后文件夹群集,分散的存放和管理就会带来很多问题。不仅仅是网络环境变的更复杂,管理起来也变的非常麻烦。如下图2.1

(图
2.1

 

相反如果服务器作为文件或文件夹共享设备,那么也就意味着一种集中资源管理的模式出现了,将文件或文件夹做为共享资源集中在一起进行管理,无疑从成本还是可操作性都是非常可行的。所以我们可以将共享的文件集中放在一台服务器上,以方便大家存取,这就是文件服务出现的必要性。如下图
2.2

(图
2.2

 
当然有些人可能会提出质疑,因为在
WINDOWS
下,无论是
WINDOWS XP
还是
WINDOWS 7
、甚至是
WINDOWS8
我们都可以进行文件的共享。那么我们是否非要使用
WINDOWS SERVER
系统中的文件服务组件呢?如下图
2.3
(图
2.3 WIN7
利用
计算机管理
查看到共享文件夹)

 

答案是仍然需要。因为首先
WINDOWS
系统的文件共享并发连接有限制,比如
XP
只允许
10
个并发。
Windows 7
的限制是
20
个,如下图,
2.3-1

(
2.3-1 WIN7
系统共享用户数量限制
20
无法增大,只能减少
)

 

Windows
系统的共享文件夹,目的是为了提供了
2
或更多用户之间共享文件的方便,而不是共享文件的集中存储与管理。但仍然有很多人拿
WINDOWS
系统做共享文件的集中管理。所以就会出现问题。所以很多人提出了如何突破的办法,通过修改注册表等,其实最简单的办法就是使用
WINDOWS SERVER
的文件服务。其次,使用文件服务后,除了
计算机管理
中的共享文件夹选项可以提供强大的管理功能,安装“文件服务”组件后还提供了强大的“文件服务管理器”如下图
2.4

(
2.4 WINDOWS 2003 “
计算机管理
文件服务器管理
”)

 

再者,使用文件服务组件后,可以灵活的设置用户配额,可以方便的进行共享管理,而且可以备份文件服务器,甚至进行文件服务角色迁移,还可以使用分布式文件服务功能
(
这个下面会继续讲到
)
这些都是
WINDOWS
系统中简单的文件夹共享不能比拟的。如下图
2.5

(图
2.5 WINDOWS 2008R2
系统
“计算机管理”与“文件服务”组件差异)

 

DFS
(分布式文件系统)管理整合了进来。实际上也有变化,后文会介绍)所以
windows server
的文件服务组件不容小视。
 
 

三、文件服务与服务器消息块

 

先问大家几个问题:无论是windows还是windows server为什么都要提供共享文件夹服务?如果说windows server提供文件服务是把文件集中起来进行共享管理,那么windows提供文件夹共享是为了什么?如果功能与SERVER系统的功能一样,而为什么还要windows系统的文件夹共享做并发连接限制?以下两种情况说明了原因的所在。第一种:远程访问一些文件资源。这种情况就是你有一台A计算机,远程有一台B计算机,现在你要通过A计算机网络访问B计算机上的一些文件,很显然,共享文件夹远程访问就很方便了。文件共享到底使用了什么样的协议进行文件传输呢?它不使用文件传输协议FTP,也不是用远程登录协议TELNET,而是使用windows内置的SMB协议共享出我们需要访问的文件或文件夹。如下图3.1

(图
3.1

 

第二种情况就更好解释了,有些应用程序需要在文件共享上存储数据如 Microsoft SQL Server)或虚拟化软件(如 Hyper-V)。还有AD中经典的SYSVOL就是一个共享文件夹。微软在早先的WINDOWSwindows server系统中内置SMB协议用于文件共享服务,在VISTAWINDOWS2008时代微软引进了SMB2.0,增加了缓存容量、提高了打开文件句柄数、提高了网络复制不中断等问题。而到了windows server 2012时代,SMB3.0出现了,提供了更加丰富的功能。