论坛首页 综合技术论坛

使用nfs挂载本地目录到远端主机

浏览 3312 次
精华帖 (0) :: 良好帖 (0) :: 新手帖 (0) :: 隐藏帖 (0)
作者 正文
   发表时间:2012-09-06  

由于一个应用的需要,要使用这方面的知识。

就是两台机器,192.168.1.2和192.168.1.3,在192.168.1.2服务器上的

/home/apps/apache/htdocs/uploadFile 文件夹,所有上传的文件都需要写入到192.168.1.3服务器的相同目录里面。

 

正好NFS技术可以满足这个需求。

 

简单介绍一下:

 

      NFS(Network File System)是一种分布式文件系统,允许网络中的安装不同操作系统的计算机间共享文件和外设,所以它的通讯协定设计与主机及作业系统无关. 它是由SUN公司于1984年推出,使得可以本地机一样的使用另一台联网计算机的文件和外设。NFS在文件传送或信息传送过程中依赖于RPC协议。NFS 的当前版本是V4(RFC3010)。

      RPC, 远程过程调用 (remote procedure call) 是能使客户端执行其他系统中程序的一种机制。由于使用 RPC 的程序不必了解支持通信的网络协议的情况,因此 RPC 提高了程序的互操作性。常用于分布式客户端/服务器模型, 发出请求的程序是客户程序,而提供服务的程序是服务器。(RFC1831)

 

安装:

        根据需求来分析,我们需要192.168.1.3来作为NFS服务端,192.168.1.2作为NFS客户端。

确保192.168.1.3这台服务器上已经装好了NFS软件,可以使用rpm -qa命令来查看。

NFS的两个软件包为nfs-utils和portmap,系统默认是会装上这两个软件的。(RHEL)

 

配置:

来到192.168.1.3服务器,修改/etc/exports文件,(exports为NFS服务的配置文件)。

如果没有做任何配置的话,这里应该是空的。

 

我们加入以下一行代码:

/home/apps/apache/htdocs/uploadFile   192.168.10/24(rw,sync,no_root_squash)

 这句话的意思是允许192.168.10.0这个网段的所有机器挂载“/home/apps/apache/htdocs/uploadFile”这个目录,并且具有读写权限。sync为NFS服务器同步写磁盘。

关于 no_root_squash:

鸟哥的书写到 写道
no_root_squash:登入 NFS 主机使用分享目录的使用者,如果是 root 的话,那么对于这个分享的目录来说,他就具有 root 的权限!这个项目『极不安全』,不建议使用!
root_squash:在登入 NFS 主机使用分享之目录的使用者如果是 root 时,那么这个使用者的权限将被压缩成为匿名使用者,通常他的 UID 与 GID 都会变成 nobody 那个系统账号的身份。

 

所以如果不是自己使用的话,最好这里设置为root_squash,以保证安全!

 

做完以上操作,服务端的配置就完成了。

来到客户端192.168.1.2,编辑/etc/fstab

在最后一行加入以下内容:

192.168.1.3:
/home/apps/apache/htdocs/uploadFile /home/apps/apache/htdocs/uploadFile nfs rw,intr,tcp,vers=3 0 0

保存退出,然后mount -a,

将NFS上的目录挂载到本地。

即可完成上述需求,你可以往 /home/apps/apache/htdocs/uploadFile  文件夹里写内容进行一下实验。

关于/etc/fstab里的配置项说明,找个时间详细了解下。

 

睡觉去……Good Night.

   发表时间:2012-09-14  
我的理解是,你的应用固定了上传ip:192.168.1.2,但是做了1.3的负载
那么下载的时候,下载链接是server地址,但是如果用ip地址,就不需要nfs了
0 请登录后投票
   发表时间:2012-09-14  
1.2和1.3是做了负载的,但是下载也是用域名下的……
所以需要用NFS统一到一个目录去啦~
0 请登录后投票
   发表时间:2012-09-14  
leemny 写道
我的理解是,你的应用固定了上传ip:192.168.1.2,但是做了1.3的负载
那么下载的时候,下载链接是server地址,但是如果用ip地址,就不需要nfs了


1.2和1.3是做了负载的,但是下载也是用域名下的……
所以需要用NFS统一到一个目录去啦~
如你所说,用IP是可以的,指定那个存储机器的IP+目录就好了 
0 请登录后投票
论坛首页 综合技术版

跳转论坛:
Global site tag (gtag.js) - Google Analytics