Linux配置NFS服务


一、 安装nfs  rpcbind

安装 NFS 服务器所需的软件包:nfs 和 rpcbind

Centos:

# yum install nfs-utils

# yum install rpcbind

Ubuntu:

#apt-get install -y nfs-kernel-server

Centos:

#systemctl enable nfs-server.service

#systemctl enable rpcbind.service

1)先启动rpcbind:   service rpcbind start

2)再启动nfs: service nfs-server start

Ubuntu:

#systemctl restart nfs-server.service

#systemctl enable nfs-server.service

配置服务器端共享目录

1)编辑配置文件

假设服务端 目录为/home/data

# vi /etc/exports

NFSV2版本格式:

要共享的目录(使用绝对路径) 客户端主机IP......(可多个IP,之间空格隔开)

/home/data 10.1.0.2(rw,sync,root_squash,all_squash,anonuid=xxx,anongid=xxx) 10.1.0.3(rw,sync,root_squash,all_squash,anonuid=xxx,anongid=xxx)

括号里的参数:

rw:read-write,可读写;

ro:read-only,只读;

sync:文件同时写入硬盘和内存;

async:文件暂存于内存,而不是直接写入硬盘;

no_root_squash:NFS客户端连接服务端时如果使用的是root的话,那么对服务端分享的目录来说,也拥有root权限。显然开启这项是不安全的。

root_squash:NFS客户端连接服务端时如果使用的是root的话,那么对服务端分享的目录来说,拥有匿名用户权限,通常他将使用nobody或nfsnobody身份;

all_squash:不论NFS客户端连接服务端时使用什么用户,对服务端分享的目录来说都是拥有匿名用户权限;

anonuid:匿名用户的UID值,通常是nobody或nfsnobody,可以在此处自行设定;

anongid:匿名用户的GID值。

二、客户端配置

Ubuntu安装客户端: #apt-get install nfs-common

使用monut 命令进行挂载

假设客户端要挂载的目录为/home/client 服务端IP为10.1.0.1

mount -t  nfs   10.0.1.1:/home/data /home/data

umount  -a  取消所有挂载