NFS介绍

网络文件系统(Network File System,NFS),一种使用于分散式文件系统的协议,由升阳公司开发,于1984年向外公布。功能是通过网络让不同的机器、不同的操作系统能够彼此分享个别的数据,让应用程序在客户端通过网络访问位于服务器磁盘中的数据,是在Unix系统间实现磁盘文件共享的一种方法。

NFS的基本原则是“容许不同的客户端及服务端通过一组RPC分享相同的文件系统”,它是独立于操作系统,容许不同硬件及操作系统的系统共同进行文件的分享。

NFS提供了以下的服务:

  • 在目录(directory)中查找文件
  • 列出目录中的文件
  • 管理目录
  • 取得各文件的属性(file attribute)
  • 文件的读/写

wikipedia - 网络文件系统


Centos端配置

首先使用

rpm -qa|grep nfs
rpm -qa|grep portmap

两条命令检测是否已安装NFS

若结果为

[root@localhost ~]# rpm -qa|grep nfs
nfs-utils-lib-1.0.8-7.2.z2
nfs-utils-1.0.9-40.el5
system-config-nfs-1.3.23-1.el5

[root@localhost ~]# rpm -qa|grep portmap
portmap-4.0-65.2.2.1

则已安装了nfs-utils portmap 两个软件包。若未安装则需手动安装后继续

接着配置 /etc/exports 文件:

/var/www 192.168.100.222(rw)

格式说明:

[要共享的目录] [共享给客户端IP(选项)] [客户端2 ...

配置文件的详细使用说明请参见:这里

如果连接时 Centos 端提示

nfsd: request from insecure port (192.168.7.130:49232)!

则将'选项'配置成 (rw,async,insecure) 即可

启动(或重启)NFS服务器(先 portmap ,后 nfs 两个服务。停止时候停 nfs 就好,portmap 可能会被其他服务所需要)

service portmap start(restart)
service nfs start(restart)

设置两个服务开机自动启动。

chkconfig --level 35 portmap on
chkconfig --level 35 nfs on

根据实际需要更改下要共享的文件夹的权限

chmod -R 777 /var/www

Mac端配置

在终端中使用

showmount -e IP\Domain

来查看 Centos 主机的共享状态

Mac client

然后使用命令挂载即可

$ sudo mount -t nfs 192.168.100.222:/var/www /private/nfs