配置nfs服务器

nfs服务器是一个文件级的文件系统。配置nfs服务器需要起两个服务,一个是nfs,一个是portmap,需要安装2个组件portmap.x86_64,nfs-utils.x86_64、nfs-utils-lib.x86_64

另外需要设置共享目录及目录权限,设置方法为:

1. vim /etc/exports

  
  
  
  
  1. /data/ftp 192.168.8.7(rw,no_root_squash)  
  2. /data/test 192.168.8.7(ro,root_squash,anonuid=100,anongid=100)  

主要参数有:

rw:可读写权限

ro:只读权限

no_root_squash:如果使用nfs目录的用户是root用户的话,他就拥有了ROOT的权限

root_squash:如果使用nfs目录的用户是root用户的话,他在nfs服务器上的uid和gid都变为nobody

all_squash:所有使用nfs的用户uid和gid都是nobody

anonuid:用于设置使用nfs的用户uid

anongid:用于设置使用nfs的用户gid

sync:文件同步写到存储上,同步写入

async:文件会先暂时存放在内存中,不会直接写到存储上,异步写入

2. 启动nfs和portmap服务:

/etc/init.d/nfs start

/etc/init.d/portmap start

这样nfs服务器就可以使用了,用户可以在192.168.8.7客户端挂载/data/ftp目录。

3. exportfs重新加载/etc/exports文件

如果nfs启动以后又修改了exports文件,也可以不用重启nfs服务,而用exportfs重新加载该文件

exportfs [-aruv]

-a: 全部mount或unmont /etc/exports文件中的目录

-r: 重新mount /etc/exports文件中共享出来的目录

-u: unmount目录

-v: 在export的时候将详细信息输出到屏幕上

4. 配置iptables

但是在配置nfs服务器的时候发现,启用iptables以后客户端无法连接nfs服务器,关闭iptables以后客户端连接正常,google以后发现nfs还依赖其他的一些服务,包括MOUNTD_PORT、 STATD_PORT、 LOCKD_TCPPORT、 LOCKD_UDPPORT,需要设置这些服务的运行端口,并在iptables中开启这些端口。

设置方法如下:

vim /etc/sysconfig/nfs

  
  
  
  
  1. RQUOTAD_PORT=875   
  2. LOCKD_TCPPORT=32803   
  3. LOCKD_UDPPORT=32769   
  4. MOUNTD_PORT=892   
  5. STATD_PORT=662   
  6. STATD_OUTGOING_PORT=2020 

调整iptables设置为:

vim /etc/sysconfig/iptables

  
  
  
  
  1. -A RH-Firewall-1-INPUT -p tcp -m state –state NEW -m tcp –dport 111 -j ACCEPT   
  2. -A RH-Firewall-1-INPUT -p udp -m state –state NEW -m udp –dport 111 -j ACCEPT   
  3. -A RH-Firewall-1-INPUT -p tcp -m state –state NEW -m tcp –dport 875 -j ACCEPT   
  4. -A RH-Firewall-1-INPUT -p udp -m state –state NEW -m udp –dport 875 -j ACCEPT   
  5. -A RH-Firewall-1-INPUT -p tcp -m state –state NEW -m tcp –dport 892 -j ACCEPT   
  6. -A RH-Firewall-1-INPUT -p udp -m state –state NEW -m udp –dport 892 -j ACCEPT   
  7. -A RH-Firewall-1-INPUT -p tcp -m state –state NEW -m tcp –dport 32803 -j ACCEPT   
  8. -A RH-Firewall-1-INPUT -p udp -m state –state NEW -m udp –dport 32769 -j ACCEPT   
  9. -A RH-Firewall-1-INPUT -p tcp -m state –state NEW -m tcp –dport 2049 -j ACCEPT   
  10. -A RH-Firewall-1-INPUT -p udp -m state –state NEW -m udp –dport 2049 -j ACCEPT 

重启相关服务:

/etc/init.d/portmap restart

/etc/init.d/nfs restart

/etc/init.d/iptables restart

5. showmount 命令:

showmount –a: 这个命令一般用在nfs server上,可以查看所有挂载了nfs server目录的客户端

showmount –e nfs_server: 这个命令用于查看nfs server 上所有share出来的目录

6. mount参数

hard模式和soft模式

hard模式:nfs client会在后台不断的尝试链接服务器,直到mount上为止,在这个过程中不会输出大量的报错信息,但使用到这个nfs目录的进程会被挂起

soft模式:mount命令的默认链接方式,nfs client会在前台链接nfs server,超时后报错退出。

intr:允许通知中断一个nfs调用

你可能感兴趣的:(linux,iptables,nfs,home)