关 闭

新闻中心

EEPW首页 > 工控自动化 > 设计应用 > Linux网络存储器的设计

Linux网络存储器的设计

作者:时间:2010-09-02来源:网络收藏

  (2)内核的配置

  系统的内核采用单块结构,可以动态地加载和卸载模块。系统利用内核模块的可动态装载和卸载功能,可灵活地在内核中添加新的组件或卸载不再需要的内核组件。因此在具体实现过程中,可以针对要实现的功能对其内核进行裁减,以缩小体积。根据的硬件实现框图可以知道,整个系统的硬件接口只包括PCI和IDE两种接口。在对内核进行配置时,可把Floppy、SMP、MTRR、SCSI及所有的Block Device和Character Device移除,只留下old IDE Device、PCI。另外,文件系统在内核中占了相当大的比例,VFS简化了档案系统的设计,Buffer cache、Directory cache增加了系统的效率;但这些对嵌入式系统用处不大,可以移除,内核会减小20KB左右,或者跳过整个VFS,直接将文件系统写成一个Driver的形式,这样文件系统可由230KB缩减至50KB左右。在配置Linux内核时,网络协议的支持是必不可少的。现在,大多数网络都是以TCP/IP协议为基础的,并且一般的工作站所选用的操作系统为Windows或Linux系统,因此,要实现其网络功能,并能够在不同平台下实现文件共享,应该选择对TCP/IP协议、NFS以及Samba协议的支持。

  2.2 不同平台下文件共享的实现

  现代PC机中广为流行的操作系统有两种:Windows和Linux。这两种操作系统是依赖于完全不同的技术来提供网络服务的:Linux操作系统是以传输控制协议/网络协议(TCP/IP)、网络文件系统(NFS)以及网络信息服务(NIS)为基础,提供网络服务的;而Microsoft则依赖于NetBIOS和服务信息块(SMB)来提供把数据从服务器传输至客户机的服务。因此,我们选用Samba工具来实现这两种不同平台下的文件共享。

  (1)Samba简介

  Samba从根本上消除了Windows与Linux之间的屏障,可以提供以下4个方面的服务:共享资源和打印机、名字解析、浏览、用户身份认证。通过让NetBIOS(Windows网络邻居的通信协议)和SMB(Server Messege Block)两个协议运行于TCP/IP

  通信协议之上实现文件共享,并且使用NetBEUI协议,可以让Windows通过网络邻居看到Linux服务器。

  ①NetBIOS协议:NetBIOS是一个对话层通信服务,通过一种公共的方法为访问提供应用程序,并且对整个网络提供服务。它是一个针对如何访问数据的规范,依靠更低一级的协议,如NetBEUI或TCP/IP等,提供实际传输服务的。NetBIOS规范把协议分成三种服务:名字服务、对话服务、数据报服务。名字服务主要校验该NetBIOS名字是唯一的,删除不再需要的NetBIOS名字,在NetBIOS名字基础上确定服务器的网络地址;对话服务在两个应用程序之间,提供横跨NetBIOS网络的实现通信通道;数据报服务提供广播信息或在应用程序之间发送信息而无需应答。由于NetBIOS和TCP/IP在主机命名方面使用的是完全不同的系统,前者以字符为基础,后者以数据为基础,所以必须把每个NetBIOS名字与IP地址进行匹配。

  Samba使用TCP/IP协议来传输NetBIOS,把NetBIOS名字解析或IP地址,通常通过三种匹配方式:第一种是把每个对IP地址的请求广播到节点名字解析的原始NetBIOS,依赖于每个客户机和服务器,通过网络去寻找对方;第二种使用本地文件,并加载进入高速缓冲存储器,以便每个客户机可以了解哪个名字解析成哪个IP地址;第三种使用NetBIOS名字服务(NBNS),一个NBNS是一个中央主机,它为一个工作组存储NetBIOS名字以及与其相对应的IP地址列表,因此,每个工作组上的NetBIOS节点都可以向NBNS请求为它们把名字解析成IP地址。

  ②SMB协议:SMB协议是一个通过网络提供并获得资源的协议,依赖于NetBIOS进行名字解析,为网络上使用资源提供一个标准的接口。SMB协议对服务器定义了两种安全模式:共享级和用户级。共享级服务器在硬盘设备上建立了一些可被访问的目录,用户需要一个密码来获得访问权。因此,网络上的任何用户只要知道服务器的名字、资源的名字以及密码就可以访问资源了。共享级服务器通过对同一个资源设定不同的密码,控制用户的访问权限。用户级服务器在硬盘设备上建立可被访问的目录,需要用户提供用户名及相应的密码来获得访问权。NT服务器和LM/U服务器采用这种方式而不支持共享级访问。相对共享级模式,用户级更容易管理用户。

  (2)Samba的配置

  一个Samba服务器实际包含了两个服务器程序:smbd和nmbd。Smbd是Samba的核心,负责建立对话进程、验证用户身份、提供对文件系统和打印机的访问机掉;nmbd实际网络浏览服务器的功能,作用是对外发布Samba服务器可以提供的服务。Nmbd可以使Samba服务器出现在Windows95或WindowsNT的“Network Neighborhood”(网络邻居)中,并且客户机可浏览到Samba服务器所共享的资源。启动Samba服务器进程时,可以完全不运行nmbd,这样客户只能看到Samba服务器的NetBIOS名字,却看不到Samba服务器所提供的服务。

linux操作系统文章专题:linux操作系统详解(linux不再难懂)


关键词: Linux 网络存储器

评论


相关推荐

技术专区

关闭