`
maosheng
  • 浏览: 567827 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

Linux NFS 搭建与配置

nfs 
阅读更多
一、NFS 介绍

NFS 是 Network FileSystem 的缩写,顾名思义就是网络文件存储系统,它最早是由 Sun 公司发展出来的,也是 FreeBSD 支持的文件系统中的一个,它允许网络中的计算机之间通过 TCP/IP 网络共享资源。通过 NFS,我们本地 NFS 的客户端应用可以透明地读写位于服务端 NFS 服务器上的文件,就像访问本地文件一样方便。简单的理解,NFS 就是可以透过网络,让不同的主机、不同的操作系统可以共享存储的服务。

NFS 的基本原则是“容许不同的客户端及服务端通过一组RPC分享相同的文件系统”,它是独立于操作系统,容许不同硬件及操作系统的系统共同进行文件的分享。

二、nfs服务器部署

yum install nfs-utils rpcbind -y

2、NFS服务器操作
# mkdir -p /app/k8s        ##NFS挂载目录
# chmod 777 -R /app/k8s
# systemctl start rpcbind  ##启动rpc服务
# systemctl enable rpcbind
# systemctl start nfs      ##启动NFS服务
# systemctl enable nfs
## NFS默认配置文件路径是:/etc/exports
## /etc/exports配置文件的格式是:
## NFS共享的目录    NFS客户端地址(参数1,参数2)
## NFS共享的目录:为NFS服务器端要共享的实际目录,要用决定路径,如(/data)。注意共享目录的本地权限,需要读写权限,一定要让本地目录可以被NFS客户端的用户读写
## NFS客户端地址:为NFS服务器端授权的可访问的共享目录的NFS客户端地址,可以为单独的ip地址或者主机名,域名等,也可以是整个网段的地址
# echo "/app/k8s  192.101.11.159(rw,no_root_squash,sync)" >>/etc/exports   ##NFS 客户端IP 192.101.11.159
# echo "/app/k8s  192.101.11.160(rw,no_root_squash,sync)" >>/etc/exports   ##NFS 客户端IP 192.101.11.160
# echo "/app/k8s  192.101.11.161(rw,no_root_squash,sync)" >>/etc/exports   ##NFS 客户端IP 192.101.11.161
# echo "/app/k8s  192.101.10.0/24(rw,no_root_squash,sync)" >>/etc/exports   ##NFS 客户端IP 192.101.10.0---192.101.10.255
# exportfs -r     #使配置生效
# systemctl restart nfs
# systemctl status nfs

注意:必须要先启动rpc服务,然后再启动NFS服务

# 查看 NFS 服务项 rpc 服务器注册的端口列表
$ rpcinfo -p localhost

# 服务端看下是否正确加载了设置的 /etc/exports 配置
$ showmount -e localhost
Export list for localhost:
/app/k8s 192.101.11.161,192.101.11.160,192.101.11.159

参数说明:
ro                  只读访问
rw                  读写访问
sync              所有数据在请求时写入共享
async              nfs 在写入数据前可以响应请求
secure              nfs 通过 1024 以下的安全 TCP/IP 端口发送
insecure          nfs 通过 1024 以上的端口发送
wdelay              如果多个用户要写入 nfs 目录,则归组写入(默认)
no_wdelay          如果多个用户要写入 nfs 目录,则立即写入,当使用 async 时,无需此设置
hide              在 nfs 共享目录中不共享其子目录
no_hide              共享 nfs 目录的子目录
subtree_check      如果共享 /usr/bin 之类的子目录时,强制 nfs 检查父目录的权限(默认)
no_subtree_check     不检查父目录权限
all_squash          共享文件的 UID 和 GID 映射匿名用户 anonymous,适合公用目录
no_all_squash      保留共享文件的 UID 和 GID(默认)
root_squash root     用户的所有请求映射成如 anonymous 用户一样的权限(默认)
no_root_squash root 用户具有根目录的完全管理访问权限
anonuid=xxx 指定 nfs 服务器 /etc/passwd 文件中匿名用户的 UID
anongid=xxx 指定 nfs 服务器 /etc/passwd 文件中匿名用户的 GID


三、NFS客户端部署

yum install nfs-utils rpcbind -y    ##不需要启动nfs服务

4、NFS客户端操作
# mkdir -p /app/k8s            ##挂载NFS目录
# systemctl start rpcbind     
# systemctl enable rpcbind
# mount -t nfs 192.101.11.156:/app/k8s /app/k8s
# df -h | grep 192.101.11.156
192.101.11.156:/app/k8s   98G   39G   60G  40% /app/k8s
## 卸载已挂载的NFS共享目录
# umount /app/k8s

四、启动自动挂载nfs文件

格式:
<server>:</remote/export> </local/directory> nfs < options> 0 0

# vi /etc/fstab
192.101.11.156:/app/k8s                  /app/k8s                 nfs      defaults        0 0

保存退出,重启系统,查看/app/k8s 有没有自动挂载
# df -h | grep 192.101.11.156
192.101.11.156:/app/k8s   98G   39G   60G  40% /app/k8s


五、相关命令

1、exportfs

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

  # exportfs [-aruv]

  -a 全部挂载或卸载 /etc/exports中的内容
  -r 重新读取/etc/exports 中的信息 ,并同步更新/etc/exports、/var/lib/nfs/xtab
  -u 卸载单一目录(和-a一起使用为卸载所有/etc/exports文件中的目录)
  -v 在export的时候,将详细的信息输出到屏幕上。

具体例子:
  # exportfs -au 卸载所有共享目录
  # exportfs -rv 重新共享所有目录并输出详细信息

2、nfsstat

查看NFS的运行状态,对于调整NFS的运行有很大帮助。

3、rpcinfo
查看rpc执行信息,可以用于检测rpc运行情况的工具,利用rpcinfo -p 可以查看出RPC开启的端口所提供的程序有哪些。

4、showmount

  -a 显示已经于客户端连接上的目录信息
  -e IP或者hostname 显示此IP地址分享出来的目录

5、netstat

可以查看出nfs服务开启的端口,其中nfs 开启的是2049,portmap 开启的是111,其余则是rpc开启的。

最后注意两点,虽然通过权限设置可以让普通用户访问,但是挂载的时候默认情况下只有root可以去挂载,普通用户可以执行sudo。

NFS server 关机的时候一点要确保NFS服务关闭,没有客户端处于连接状态!通过showmount -a 可以查看,如果有的话用kill killall pkill 来结束,(-9 强制结束)










分享到:
评论

相关推荐

    centos下的nfs搭建与配置

    这是描述在centos下进行nfs,网路共享文件系统的配置与搭建

    linux NFS开发环境的搭建

    通过以上步骤,我们可以在Linux环境下成功搭建一个NFS服务器并配置客户端访问。NFS不仅能够方便地实现文件共享,还能提高数据访问的效率,尤其是在需要跨主机访问同一组文件的情况下。同时,合理配置防火墙规则和...

    linux下搭建DNS、NFS服务器

    在Linux环境中,搭建DNS(Domain Name System)和NFS(Network File System)服务器是系统管理员必备的技能之一。这两个服务对于任何大型网络环境都至关重要,DNS负责将域名转换为IP地址,而NFS则允许不同计算机之间...

    Linux NFS服务器的安装与配置

    Linux下NFS的搭建安装与配置说明。步骤清晰,一目了然,简单上手。

    linux下NFS及交叉编译环境的配置

    ### Linux下NFS及交叉编译环境的配置 #### 一、NFS配置详解 **1.1 NFS简介** NFS(Network File System)是一种网络文件系统,它允许用户通过网络共享文件,使得用户能够像访问本地文件一样访问远程文件。在嵌入式...

    实现window同linux的nfs共享目录服务

    ### 实现Windows与Linux的NFS共享目录服务详解 #### 引言 在跨平台的开发环境中,实现Windows与Linux之间的文件共享是一项常见的需求。NFS(Network File System)作为一款成熟的网络文件系统协议,提供了在异构...

    使用QEMU搭建U-boot+linux+NFS开发环境.zip

    本教程将介绍如何利用QEMU(Quick Emulator)搭建一个基于U-boot和Linux的NFS(Network File System)开发环境。QEMU是一款开源的全系统模拟器,它允许我们在主机上运行各种不同的客体操作系统,而无需物理硬件。NFS...

    linux搭建nfs和ramdisk文件系统定义.pdf

    Linux 搭建 NFS 和 Ramdisk 文件系统定义 本文档主要介绍了 Linux 下如何搭建 NFS(Network File System)和 Ramdisk 文件系统,旨在帮助开发者快速了解并搭建这两种文件系统。 1. Linux 建立文件系统 Linux 文件...

    个人关于Linux挂载NFS系统的一些总结(完整)

    #### 六、开发板配置与测试 - 使用超级终端连接开发板,并设置U-boot启动参数: - 设置启动参数: ```bash SMDK6410# setenv bootargs "root=/dev/nfs nfsroot=192.168.0.107:/forlinux/root ip=192.168.0.108:...

    linux中搭建nfs服务器

    Linux 中搭建 NFS 服务器 Linux中搭建NFS服务器是指在Linux操作系统中搭建Network File System(网络文件系统)的服务器,实现文件共享的目的。NFS是一种基于XDR/RPC协议的文件共享协议,通过网络实现文件共享。...

    Linux下NFS(网络文件系统)的建立与配置方法.pdf

    Linux下NFS(网络文件系统)的建立与配置方法 Linux操作系统中,Network File System(NFS)是一种将远程主机上的分区(目录)经网络挂载到本地系统的一种机制,通过对网络文件系统的支持,用户可以在本地系统上像...

    【正点原子】I.MX6U网络环境TFTP&NFS搭建手册V1.3.11

    - **开发工具**:在搭建网络环境时,你需要准备如Linux操作系统、TFTP服务器软件(如xinetd)、NFS服务器软件(如nfs-utils)、网络配置工具等。 - **网络拓扑结构**:通常,开发环境会采用简单的网络拓扑,例如...

    基于linux的 NFS服务器搭建.rar_Linux 文件共享_NFS服务器搭建_continentacb_linux_过程

    本教程将详细介绍如何在Linux环境中搭建NFS服务器,以便实现跨设备的文件共享。以下是对NFS服务器搭建过程的详细阐述: 首先,你需要在两台虚拟机上安装Linux操作系统。这里假设你已经选择了如Ubuntu或CentOS这样的...

    Linux下tftp 与nfs的搭建

    Linux下的tftp与nfs是两种常用的网络文件传输和共享服务。它们在嵌入式开发、系统维护和远程部署等方面有着广泛的应用。本文主要讲解如何在Linux系统中搭建tftp和nfs服务。 首先,我们来看tftp服务的搭建过程。TFTP...

    Linux debian系统下tftp和nfs搭建方法

    本文档记录了在 Linux debian 系统下搭建 TFTP 和 NFS 的方法和过程,以便与大家分享。 一、TFTP 搭建 TFTP(Trivial File Transfer Protocol),即普通文件传输协议,是一种用来传送文件的 Internet 程序。它比...

    2022年网络搭建与应用国赛开放题nfs题解答

    "2022年网络搭建与应用国赛开放题nfs题解答" 本资源提供了一个详细的网络搭建和应用解决方案,涵盖了Kerberos身份验证、NFS服务器配置和客户端安装等多个方面。下面是从该资源中提取的关键知识点: 1. Kerberos...

    Linux系统常见服务搭建(FTP、NFS、Samba)

    Linux 系统常见服务搭建(FTP、NFS、Samba) Linux 系统是目前最流行的服务器操作系统之一,作为一个系统管理员,了解 Linux 系统下的常见服务搭建是非常必要的。本文将对 Linux 系统下的三种常见服务进行搭建,...

    Linux下NFS的配置和使用

    使用NFS时,还需要了解与安全性相关的配置,如使用`nfsd`的版本选择、防火墙设置以及是否使用`securenfs`参数来要求客户端进行认证。这些安全设置有助于防止未经授权的访问和数据泄露。 通过理解NFS的配置和使用...

    Linux+NFS安装配置文档及nfs-util+portmap安装包

    Linux+NFS安装配置文档及nfs-util+portmap安装包主要涵盖了在Linux系统中搭建和管理网络文件系统(Network File System,NFS)的基础知识。NFS是一种分布式文件系统协议,允许不同计算机之间共享文件和目录,使得多...

Global site tag (gtag.js) - Google Analytics