Linux系统利用NFS来实现文件共享

Linux系统下有很多工具可以实现文件共享。不过NFS(网络文件系统)无疑是到目前为止最成功的一个。利用网络文件系统,可以把文件服务器上的共享目录通过网络挂载到本地操作系统。如此的话,用户可以在本地操作系统上像操作本地分区一样来对远程服务器的共享目录进行操作。

  那么NFS到底可以实现哪些用途呢?到目前为止,笔者至少已经通过NFS网络文件系统实现了两个功能,一是为企业搭建了一个文件服务器;二是部署一个Linux开发编译平台。

  利用NFS网络文件系统可以很容易的为企业用户搭建一个文件共享的平台。如只需部署一个Linux服务器,并配置NFS文件系统。然后再在服务器上根据部门或者其他规则设立一些共享的文件夹,并配置好相关的权限。如可以为每个部门设置一个用户和一个共享文件夹,然后让每个部门可以对自己部门的文件夹进行读写等操作。而对于其他部门的文件夹则只具有读的权限。然后在客户端上,就可以像挂载分区一样,把服务器的共享文件夹挂载到本地主机上。企业员工若需要对文件服务器上的共享文件进行操作,就可以像操作本地分区一样的容易。而且还可以配置启动文件,让客户端电脑每次启动的时候,都自动挂载这个文件服务器上的共享目录。另外现在微软操作系统也支持这个NFS网络文件系统,所以微软的操作系统也可以通过创建“快捷方式”的途径来挂在NFS共享文件。所以利用NFS网络文件系统实现文件共享,还不受客户端的限制。另外,系统管理员也不必在每个Linux操作系统中都设置一个home目录。Home目录可以被放在NFS服务器上并且在网络上处处可用。

  利用NFS网络文件系统还可以实现Linux系统交叉开发的编译平台。在嵌入Linux操作系统的开发过程中,程序开发者需要在Linux开发服务器上进行所有的软件开发工作。开发完成后再进行交叉编译,然后在利用FTP方式将可执行文件下载到嵌入式系统运行。但这种方式效率比较低,而且无法实现在线调试。为此这种Linux系统开发方式正在逐渐淘汰中。现在程序开发人员可以通过建立NFS网络文件系统,把Linux 服务器上的特定分区共享到待调试的嵌入式目标系统上。此时用户就可以直接在嵌入式目标系统上操作Linux服务器的共享目录,还可以实现在线对程序进行调试和修改,大大的方便了软件的开发。因此,现在NFS网络文件系统的是嵌入式Linux操作系统开发的一个很重要的组成部分。有了NFS文件系统的帮助,可以大大提高Linux操作系统开发的效率。

  不过要使用好这个NFS网络文件系统,Linux系统管理员还是需要花点时间的。具体来说,在部署NFS网络文件系统的时候,需要注意如下几个方面的问题。

  一、要小心NFS网络文件系统带来的安全隐患。

  从上面的描述中我们可以看出,NFS网络文件系统的实质就是在服务器上共享一些目录,然后挂载到客户端上。也就是说,是基于共享目录而实现的。但是,众所周知,共享目录其对服务器会带来比较大的安全隐患。为此当管理员需要通过NFS技术把服务器上的目录共享出来的话,出于安全的考虑,那么就需要配置服务器上的/etc/exports文件,让这个共享文件的访问权限受到限制。如不允许对根目录具有写的权限;不用使用通配符;不能够任意删除建立共享目录等等。

  如上图,就是exports文件设置的实例。上面这个例子中,表示只允许192.168.0.5 的客户端可以访问这个共享文件夹,而且对于共享文件夹只具有只读的权限。另外参数root_squash表示不允许对根目录进行写操作。这个文件的具体设置,笔者在后面一部分内容中会具体进行讲解。笔者之所以在这里把这个权限问题拿出来独立进行说明,就是希望能够引起大家对NFS网络共享文件系统安全性的关注。

linux

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:https://www.heiqu.com/28624.html