文章目录

  1. 1. 第一章 软件简介
    1. 1.1. 1、什么是NFS?
    2. 1.2. 2、Samba与NFS区别?
  2. 2. 第二章 系统环境
  3. 3. 第三章 NFS服务安装
    1. 3.1. 查询NFS是否已安装
  4. 4. 第四章 NFS服务配置
    1. 4.1. 步骤一 新建update文件夹
    2. 4.2. 步骤二 修改/etc/exports文件(注意:192.168.1.121是客户端地址)
    3. 4.3. 步骤三 开启服务
    4. 4.4. 步骤四 客户端挂载NFS服务器中的共享目录
    5. 4.5. 步骤五 设置NFS服务器的自动启动状态
    6. 4.6. 步骤六 客户端启动自动挂载nfs文件系统
  5. 5. 第五章 NFS服务命令
    1. 5.1. 1、启动NFS服务器
    2. 5.2. 2、查询NFS服务器状态
    3. 5.3. 3、停止NFS服务器
    4. 5.4. 4、重启NFS服务器
    5. 5.5. 5、设置NFS服务器的自动启动状态
    6. 5.6. 6、查询NFS的共享状态
    7. 5.7. 7、客户端挂载NFS服务器
    8. 5.8. 8、客户端卸载NFS服务器
    9. 5.9. 9、查看完整权限设定值
    10. 5.10. 10、启动自动挂载nfs文件系统
    11. 5.11. 11、exportfs的使用
  6. 6. 第六章 附录
    1. 6.1. 1、NFS的常用目录
    2. 6.2. 2、/etc/exports文件内容格式
      1. 6.2.1. (1)输出目录
      2. 6.2.2. (2)客户端
      3. 6.2.3. (3)选项
        1. 6.2.3.1. NFS主要有3类选项


微信公众号

今天来说说NFS服务器。

由于数据从CSDN迁移过来,这里不再累赘,说说重点内容。详细请到我的CSDN博客查看内容。

第一章 软件简介

1、什么是NFS?

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

2、Samba与NFS区别?

Samba是DEC开始开发的,用于在不同的Unix机器间进行资源共享,采用udp协议。后来基于tcp重新开发后,效率有了很大提高。它使用的协议是SMB。微软不愿意交License费,在windows系统中对该协议重新进行了实现。既然samba和windows中的网络邻居都使用SMB协议。那么,samba自然主要用于在windows和unix之间共享资源。资源包括文件、打印机等等。利用samba,windows的机器可以在网上邻居里象对待windows的机器一样利用linux主机的共享资源。

NFS是SUN开发的,用于UNIX机器之间的资源共享。其设置相当容易,主要是配置/etc/exports文件,然后运行exportfs -a来共享出来。现在NFS已经成为UNIX/LINUX上的标配。nfs的效率要稍微高一些,只是差别不是太大。

第二章 系统环境

系统平台:CentOS release 5.2

NFS Server IP:192.168.1.138

防火墙已关闭(Firewall is not running)

SELINUX=disabled

第三章 NFS服务安装

NFS的安装是非常简单的,只需要两个软件包即可,而且在通常情况下,是作为系统的默认包安装的。若未安装,安装过程此处不在累赘。

nfs-utils- :包括基本的NFS命令与监控程序

portmap-
:支持安全NFS RPC服务的连接

查询NFS是否已安装

[root@localhost ~]# rpm-qa|grep nfs

第四章 NFS服务配置

步骤一 新建update文件夹

[root@localhostusr]# mkdir /usr/update   

步骤二 修改/etc/exports文件(注意:192.168.1.121是客户端地址)

文件内容:/usr/update192.168.1.121(rw,sync,no_root_squash)

步骤三 开启服务

[root@localhostusr]#service portmap start
[root@localhostusr]#service nfs start

步骤四 客户端挂载NFS服务器中的共享目录

[root@localhostusr]#mount 192.168.1.138:/usr/update/ / usr/update/

提示现在配置成功了。可以看看你的文件夹是否挂载和同步了。以下步骤,在实际项目中用的,若只是尝试使用NFS,可以忽略。

步骤五 设置NFS服务器的自动启动状态

[root@localhostusr]# chkconfig --list portmap
[root@localhostusr]# chkconfig --list nfs
[root@localhostusr]# chkconfig --level 35 portmap on
[root@localhostusr]# chkconfig --level 35 nfs on

步骤六 客户端启动自动挂载nfs文件系统

打开/etc/fstab文件

[root@localhostusr]# vi /etc/fstab

添加内容:
192.168.1.138:/usr/update/usr/update nfs defaults 0 0

附注 NFS服务器的配置相对比较简单,只需要在相应的配置文件中进行设置,然后启动NFS服务器即可。NFS服务的配置文件为 /etc/exports,这个文件是NFS的主要配置文件,不过系统并没有默认值,所以这个文件不一定会存在,可能要使用vim手动建立,然后在文件里面写入配置内容。

第五章 NFS服务命令

1、启动NFS服务器

#service portmap start
#service nfs start

附注 为了使NFS服务器能正常工作,需要启动portmap和nfs两个服务,并且portmap一定要先于nfs启动。

2、查询NFS服务器状态

#service portmap status
#service nfs status

3、停止NFS服务器

#service nfs stop
#service portmap stop

附注 要停止NFS运行时,需要先停止nfs服务再停止portmap服务,对于系统中有其他服务(如NIS)需要使用时,不需要停止portmap服务。

4、重启NFS服务器

#service nfs restart
#service portmap restart

5、设置NFS服务器的自动启动状态

# chkconfig --list portmap
# chkconfig --list nfs
# chkconfig --level 35 portmap on
# chkconfig --level 35 nfs on

附注 对于实际的应用系统,每次启动LINUX系统后都手工启动nfs服务器是不现实的,需要设置系统在指定的运行级别自动启动portmap和nfs服务。设置portmap和nfs服务在系统运行级别3和5自动启动。

6、查询NFS的共享状态

#showmount -e     //默认查看自己共享的服务
#showmount -a     //显示已经与客户端连接上的目录信息

7、客户端挂载NFS服务器

格式:# mount NFS服务器IP:共享目录 本地挂载点目录

案例:# mount 192.168.1.138:/usr/update/ / usr/update/

8、客户端卸载NFS服务器

格式:# umount 设备|目录

案例:# umount /usr/update

9、查看完整权限设定值

#cat /var/lib/nfs/etab

10、启动自动挂载nfs文件系统

格式:: nfs < options> 0 0

案例:

打开文件

[root@localhost ~]#vi /etc/fstab

添加内容

192.168.1.138:/usr/update/usr/update nfs defaults 0 0


注意:在客户端配置

11、exportfs的使用

格式:# exportfs [-aruv]

  -a 全部挂载或卸载 /etc/exports中的内容

  -r 重新读取/etc/exports 中的信息,并同步更新/etc/exports、/var/lib/nfs/xtab

  -u 卸载单一目录(和-a一起使用为卸载所有/etc/exports文件中的目录)

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

案例:

[root@localhost ~]# exportfs -au 卸载所有共享目录
[root@localhost ~]# exportfs -rv 重新共享所有目录并输出详细信息

附注 如果我们在启动了NFS之后又修改了/etc/exports,是不是还要重新启动nfs呢?这个时候我们就可以用exportfs 命令来使改动立刻生效。

第六章 附录

1、NFS的常用目录

/etc/exports                                  NFS服务的主要配置文件
/usr/sbin/exportfs                        NFS服务的管理命令
/usr/sbin/showmount                       客户端的查看命令
/var/lib/nfs/etab                              记录NFS分享出来的目录的完整权限设定值
/var/lib/nfs/xtab                              记录曾经登录过的客户端信息

2、/etc/exports文件内容格式

<输出目录> [客户端1 选项(访问权限,用户映射,其他)] [客户端2 选项(访问权限,用户映射,其他)]

(1)输出目录

概念:输出目录是指NFS系统中需要共享给客户机使用的目录

(2)客户端

概念:客户端是指网络中可以访问这个NFS输出目录的计算机

客户端常用的指定方式

指定ip地址的主机:192.168.0.200

指定子网中的所有主机:192.168.0.0/24192.168.0.0/255.255.255.0

指定域名的主机:david.bsmart.cn

指定域中的所有主机:.bsmart.cn

所有主机:

(3)选项

概念:选项用来设置输出目录的访问权限、用户映射等。

NFS主要有3类选项

访问权限选项

设置输出目录只读:ro

设置输出目录读写:rw

用户映射选项

all_squash:将远程访问的所有普通用户及所属组都映射为匿名用户或用户组(nfsnobody)
no_all_squash:与all_squash取反(默认设置)
root_squash:将root用户及所属组都映射为匿名用户或用户组(默认设置)
no_root_squash:与rootsquash取反
anonuid=xxx:将远程访问的所有用户都映射为匿名用户,并指定该用户为本地用户(UID=xxx)
anongid=xxx:将远程访问的所有用户组都映射为匿名用户组账户,并指定该匿名用户组账户为本地用户组账户(GID=xxx)
其它选项
secure:限制客户端只能从小于1024的tcp/ip端口连接nfs服务器(默认设置)
insecure:允许客户端从大于1024的tcp/ip端口连接服务器
sync:将数据同步写入内存缓冲区与磁盘中,效率低,但可以保证数据的一致性
async:将数据先保存在内存缓冲区中,必要时才写入磁盘
wdelay:检查是否有相关的写操作,如果有则将这些写操作一起执行,这样可以提高效率(默认设置)
no_wdelay:若有写操作则立即执行,应与sync配合使用
subtree:若输出目录是一个子目录,则nfs服务器将检查其父目录的权限(默认设置)
no_subtree:即使输出目录是一个子目录,nfs服务器也不检查其父目录的权限,这样可以提高效率

文章目录

  1. 1. 第一章 软件简介
    1. 1.1. 1、什么是NFS?
    2. 1.2. 2、Samba与NFS区别?
  2. 2. 第二章 系统环境
  3. 3. 第三章 NFS服务安装
    1. 3.1. 查询NFS是否已安装
  4. 4. 第四章 NFS服务配置
    1. 4.1. 步骤一 新建update文件夹
    2. 4.2. 步骤二 修改/etc/exports文件(注意:192.168.1.121是客户端地址)
    3. 4.3. 步骤三 开启服务
    4. 4.4. 步骤四 客户端挂载NFS服务器中的共享目录
    5. 4.5. 步骤五 设置NFS服务器的自动启动状态
    6. 4.6. 步骤六 客户端启动自动挂载nfs文件系统
  5. 5. 第五章 NFS服务命令
    1. 5.1. 1、启动NFS服务器
    2. 5.2. 2、查询NFS服务器状态
    3. 5.3. 3、停止NFS服务器
    4. 5.4. 4、重启NFS服务器
    5. 5.5. 5、设置NFS服务器的自动启动状态
    6. 5.6. 6、查询NFS的共享状态
    7. 5.7. 7、客户端挂载NFS服务器
    8. 5.8. 8、客户端卸载NFS服务器
    9. 5.9. 9、查看完整权限设定值
    10. 5.10. 10、启动自动挂载nfs文件系统
    11. 5.11. 11、exportfs的使用
  6. 6. 第六章 附录
    1. 6.1. 1、NFS的常用目录
    2. 6.2. 2、/etc/exports文件内容格式
      1. 6.2.1. (1)输出目录
      2. 6.2.2. (2)客户端
      3. 6.2.3. (3)选项
        1. 6.2.3.1. NFS主要有3类选项