Linux NFS服务详解
2015-09-25 16:37
567 查看
大纲:一、NFS简介二、系统环境三、安装配置NFS四、NFS配置文件详解一、NFS简介NFS 是Network File System的缩写,即网络文件系统。一种使用于分散式文件系统的协定,由Sun公司开发,于1984年向外公布。功能是通过网络让不同的机器、不同的操作系统能够彼此分享个别的数据,让应用程序在客户端通过网络访问位于服务器磁盘中的数据,是在类Unix系统间实现磁盘文件共享的一种方法。 NFS 的基本原则是“容许不同的客户端及服务端通过一组RPC分享相同的文件系统”,它是独立于操作系统,容许不同硬件及操作系统的系统共同进行文件的分享。 NFS在文件传送或信息传送过程中依赖于RPC协议。RPC,远程过程调用 (Remote Procedure Call) 是能使客户端执行其他系统中程序的一种机制。NFS本身是没有提供信息传输的协议和功能的,但NFS却能让我们通过网络进行资料的分享,这是因为NFS使用了一些其它的传输协议。而这些传输协议用到这个RPC功能的。可以说NFS本身就是使用RPC的一个程序。或者说NFS也是一个RPC SERVER。所以只要用到NFS的地方都要启动RPC服务,不论是NFS SERVER或者NFS CLIENT。这样SERVER和CLIENT才能通过RPC来实现PROGRAM PORT的对应。可以这么理解RPC和NFS的关系:NFS是一个文件系统,而RPC是负责负责信息的传输。二、系统环境系统平台:CentOS release 6.5 (Final)NFS-Server端:172.16.1.103 node1 NFS-Client端:172.16.1.104 node2三、安装配置NFSNFS的安装是非常简单的,只需要两个软件包即可,而且在通常情况下,是作为系统的默认包安装的。nfs-utils-* :包括基本的NFS命令与监控程序 rpcbind :支持安全NFS RPC服务的连接1、先查看所需安装包(nfs-utils、rpcbind)是否已经安装
[root@node1 ~]# rpm -qa | grep "rpcbind" rpcbind-0.2.0-11.el6.x86_64 [root@node1 ~]# rpm -qa | grep "nfs" nfs-utils-1.2.3-64.el6.x86_64 nfs-utils-lib-1.1.5-11.el6.x86_642、没有安装的话则执行以下命令安装
[root@node1 ~]# yum -y install nfs-utils rpcbind3、NFS配置文件及共享目录
[root@node1 data]# mkdir /www [root@node1 data]# vim /etc/exports /data/www 172.16.0.0/16(rw,no_root_squash) [root@node1 data]# cd4、先启动rpcbind,再启动NFS
[root@node1 ~]# service rpcbind start Starting rpcbind: [ OK ] [root@node1 ~]# netstat -tunlp | grep :111 tcp 0 0 0.0.0.0:111 0.0.0.0:* LISTEN 60625/rpcbind tcp 0 0 :::111 :::* LISTEN 60625/rpcbind udp 0 0 0.0.0.0:111 0.0.0.0:* 60625/rpcbind udp 0 0 :::111 :::* 60625/rpcbind [root@node1 ~]# service nfs start Starting NFS services: [ OK ] Starting NFS mountd: [ OK ] Starting NFS daemon: [ OK ] Starting RPC idmapd: [ OK ] [root@node1 ~]# rpcinfo -p # 可以看到NFS服务器端已向RPC注册端口 program vers proto port service 100000 4 tcp 111 portmapper 100000 3 tcp 111 portmapper 100000 2 tcp 111 portmapper 100000 4 udp 111 portmapper 100000 3 udp 111 portmapper 100000 2 udp 111 portmapper 100005 1 udp 34849 mountd 100005 1 tcp 53780 mountd 100005 2 udp 55188 mountd 100005 2 tcp 34271 mountd 100005 3 udp 52608 mountd 100005 3 tcp 35970 mountd 100003 2 tcp 2049 nfs 100003 3 tcp 2049 nfs 100003 4 tcp 2049 nfs 100227 2 tcp 2049 nfs_acl 100227 3 tcp 2049 nfs_acl 100003 2 udp 2049 nfs 100003 3 udp 2049 nfs 100003 4 udp 2049 nfs 100227 2 udp 2049 nfs_acl 100227 3 udp 2049 nfs_acl 100021 1 udp 41610 nlockmgr 100021 3 udp 41610 nlockmgr 100021 4 udp 41610 nlockmgr 100021 1 tcp 53871 nlockmgr 100021 3 tcp 53871 nlockmgr 100021 4 tcp 53871 nlockmgr ps:如果要让开机自启动,则执行如下命令 chkconfig rpcbind on chkconfig nfs on5、客户端挂载(1).showmount查看NFS共享目录
[root@node2 ~]# mount -t nfs 172.16.1.103:/data/www /mnt # 客户端挂载NFS [root@node2 ~]# ls /mnt/ a.com b.net c.edu d.org node1.com # 此时可以看到里面的文件了 [root@node2 ~]# showmount -d 172.16.1.103 # 显示NFS服务器所有导出的并且被客户端挂载了的文件系统列表 Directories on 172.16.1.103: /data/www [root@node2 ~]# showmount -a 172.16.1.103 # 查看NFS服务器所有被挂载的文件系统及其挂载的客户端对应列表 All mount points on 172.16.1.103: 172.16.1.104:/data/www [root@node2 ~]# showmount -e 172.16.1.103 # 查看NFS服务器导出的各文件系统 Export list for 172.16.1.103: /data/www 172.16.0.0/16(2).exportfs导出目录
[root@node1 ~]# cat /etc/exports /data/www 172.16.0.0/16(rw) # 此时只导出了/data/www [root@node1 ~]# vim /etc/exports [root@node1 ~]# cat /etc/exports /data/www 172.16.0.0/16(rw) /var/ftpshared 172.16.0.0/16(rw) # 增加了/var/ftpshared [root@node1 ~]# exportfs -avr # 重新导出所有的文件系统 exporting 172.16.0.0/16:/var/ftpshared exporting 172.16.0.0/16:/data/www [root@node1 ~]# showmount -e 172.16.1.103 # 可以看到刚刚新加的也被导出了 Export list for 172.16.1.103: /var/ftpshared 172.16.0.0/16 /data/www 172.16.0.0/16 [root@node1 ~]# exportfs -avu # 取消所有的导出 [root@node1 ~]# showmount -e 172.16.1.103 Export list for 172.16.1.103: # 可以看到所有的导出都撤销了6、实现开机自动挂载NFS文件系统
[root@node2 ~]# vim /etc/fstab [root@node2 ~]# cat /etc/fstab /dev/VolGroup00/LogVol00 / ext3 defaults 1 1 LABEL=/boot /boot ext3 defaults 1 2 tmpfs /dev/shm tmpfs defaults 0 0 devpts /dev/pts devpts gid=5,mode=620 0 0 sysfs /sys sysfs defaults 0 0 proc /proc proc defaults 0 0 /dev/VolGroup00/LogVol01 swap swap defaults 0 0 172.16.1.103:/data/www /mnt nfs defaults,_netdev 0 0四、NFS配置文件详解NFS配置文件:/etc/exports共享目录 允许访问NFS的主机或网络地址(选项)下面列出一些常见的选项ro:默认选项,以只读的方式共享。 rw:以读写的方式共享。 root_squash:将客户端使用的是root用户时,则映射到NFS服务器的用户为NFS的匿名用户(nfsnobody)。 no_root_squash:将客户端使用的是root用户时,则映射到FNS服务器的用户依然为root用户。 all_squash:默认选项,将所有访问NFS服务器的客户端的用户都映射为匿名用户,不管客户端使用的是什么用户。 anonuid:设置映射到本地的匿名用户的UID anongid:设置映射到本地的匿名用户的GID sync:默认选项,保持数据同步,数据同步写入到内存和硬盘。 async:异步,先将数据写入到内存,在将数据写入到硬盘。 secure:NFS客户端必须使用NFS保留端口(通常是1024以下的端口),默认选项。 insecure:允许NFS客户端不使用NFS保留端口(通常是1024以上的端口)。
相关文章推荐
- 拿到OK2440开发板之后——连接nfs服务器
- [游戏资讯]《极品飞车16:亡命狂飙》配置需求公布
- linux NFS 学习笔记
- linux系统之间通过nfs网络文件系统挂载设置方法
- RHEL5下NFS服务器配置与应用
- starting NFS daemon failed
- drbd安装搭建可以解决双机NFS
- Linux NFS服务器的安装与配置
- 实现Kickstart + NFS + DHCP + PXE的全自动远程无人职守安装
- centos6下配置nfs
- 什么是NFS
- NFS在Centos 6.3下的安装
- NFS
- NFS安装
- NFS文件系统详解以及安全设置
- NFS服务器的安装和配置
- Xenserver 5.0双机共享NFS存储实践-----转自网络
- Linux NFS服务器的安装与配置
- NFS配置步骤和优化(转载)
- linux NFS 安装与配置