昨天开发的找我要一台机器下载北京几台服务器上的数据,需要把10.20.236.21这台机器的/bilogs目录挂载到我的服务器上(10.20.220.26),下载脚本把下载的数据直接丢到这个目录,我就临时想到了NFS,下面我把操作步骤写下来了。

一、安装

#yum install portmap -y

#yum install nfs* -y

二、配置

1. vim  /etc/exports

/bilogs 10.20.220.26(rw,sync)

2.更改此目录的权限(我开始是755的权限,客户端死活不能写)

# chmod 777 /bilogs/

三、启动NFS

#/etc/init.d/nfs start

# /etc/init.d/portmap start

加入开机启动

#echo “/etc/init.d/nfs start” >> /etc/rc.local

#echo “/etc/init.d/portmap start” >> /etc/rc.local

以后若改动/etc/exports,直接exportfs -arv就行了。

四、客户端挂载

#mount -t nfs 10.20.239.21:/bilogs /data/download

加入开机启动:

# echo "mount -t nfs 10.20.239.21:/bilogs /data/download" >> /etc/rc.local

NFS相关知识:

 ro     该主机对该共享目录有只读权限
 rw      该主机对该共享目录有读写权限
 root_squash 客户机用root用户访问该共享文件夹时,将root用户映射成匿名用户
 no_root_squash   客户机用root访问该共享文件夹时,不映射root用户
 all_squash            客户机上的任何用户访问该共享目录时都映射成匿名用户
 anonuid                将客户机上的用户映射成指定的本地用户ID的用户
 anongid                将客户机上的用户映射成属于指定的本地用户组ID
 sync                      资料同步写入到内存与硬盘中
 async                    资料会先暂存于内存中,而非直接写入硬盘
 insecure                允许从这台机器过来的非授权访问

#exportfs用法

     -a :全部mount或者unmount /etc/exports中的内容
     -r :重新mount /etc/exports中分享出来的目录
     -u :umount 目录
     -v :将详细的信息输出到屏幕上

 

showmount –a IP    显示指定NFS服务器的客户端以及服务器端在客户端的挂载点 showmount –d IP    显示指定NFS服务器在客户端的挂载点

showmount –e IP    显示指定NFS服务器上的共享目录列表(或者叫输出列表)

 

续:

昨天公司又需要弄NFS,搭建就那么简单,但是客户端死活挂载不上去,网上找了半天,最后才制定客户端也需要运行portmap服务,唉。。。搞死我啦!!!

下面是客户端日志:

[root@wol-mercurystr-zh-svr data1]# tail /var/log/messages
Apr 10 07:11:18 wol-mercurystr-zh-svr kernel: portmap: server localhost not responding, timed out
Apr 10 07:11:18 wol-mercurystr-zh-svr kernel: RPC: failed to contact portmap (errno -5).
Apr 10 07:11:53 wol-mercurystr-zh-svr kernel: portmap: server localhost not responding, timed out
Apr 10 07:11:53 wol-mercurystr-zh-svr kernel: RPC: failed to contact portmap (errno -5).
Apr 10 07:12:28 wol-mercurystr-zh-svr kernel: portmap: server localhost not responding, timed out
Apr 10 07:12:28 wol-mercurystr-zh-svr kernel: RPC: failed to contact portmap (errno -5).
Apr 10 07:12:28 wol-mercurystr-zh-svr kernel: lockd_up: no pid, 20 users??
Apr 10 07:12:28 wol-mercurystr-zh-svr kernel: RPC: failed to contact portmap (errno -512).
Apr 10 07:12:28 wol-mercurystr-zh-svr last message repeated 2 times

 服务端日志:

Apr 10 07:32:14 localhost kernel: NFSD: starting 90-second grace period
Apr 10 07:32:27 localhost portmap[15579]: cannot bind udp: Address already in use
Apr 10 07:32:30 localhost mountd[15377]: authenticated mount request from 172.28.28.69:705 for /data/172.28.28.69 (/data/172.28.28.69)
Apr 10 07:35:25 localhost mountd[15377]: authenticated mount request from 172.28.28.69:735 for /data/172.28.28.69 (/data/172.28.28.69)