NFS服务简介及使用方法

一、nfs服务简介

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

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

  NFS在文件传送或信息传送过程中依赖于RPC协议。RPC,远程过程调用是能使客户端执行其他系统程序的一种机制。NFS本身是没有提供信息传输的协议和功能的,但NFS却能让我们通过网络进行资料的分享,这是因为NFS使用了一些其他的传输协议。而这些传输协议用到这个RPC功能。可以说NFS本身就是使用RPC的一个程序。或者说NFS是一个RPC SERVER。所以只要NFS的地方必须启动RPC服务。总结:NFS只是一个文件系统,而rpc是负责信息的传输。

二、安装NFS服务

NFS需要两个软件包

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

rpcbind-*  支持安全NFS RPC服务的连接

1.检查系统是否安装NFS

  rpm -qa|grep nfs

  rpm -qa|grep rpcbind

如果没有,先yum grouplist 再 yum groupinstall “NFS”

三、NFS服务器配置

NFS常用目录

 /etc/exports  NFS服务的主要配置文件

/usr/sbin/exportfs  NFS服务的管理命令

/usr/sbin/showmount  客户端查看命令

/var/lib/nfs/etab  记录NFS分享出来的目录的完整权限设定值

/var/lib/nfs/xtab  记录曾经登录过的客户端信息

NFS服务的配置文件为/etc/exports,系统没有默认值,所以这个文件不一定会存在,可以使用vim手动建立,然后在文件里面写入配置内容。

/etc/exports文件内容格式:

【客户端1 选项 (访问权限,用户映射,其他)】 【客户端2 选项(访问权限,用户映射,其他)】

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

b.客户端:网络中可以访问这个NFS输出目录的计算机

 客户端常用的指定方式:

  指定ip地址的主机:192.168.0.200

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

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

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

  所有主机:*

c.选项:用来设置输出目录的访问权限,用户映射等

NFS主要有3类选项:

访问权限选项

  设置输出目录只读:ro

  设置输出目录读写:rw

用户映射选项

  all_squash:将远程访问的所有普通用户及所属组都映射为匿名用户或者用户组(nfsnobody)

  no_all_squash:与all_squash相反(默认设置)

  root_squash:将root用户及其所属组都映射为匿名用户or用户组

  no_root_squash:与上相反

  anonuid=xxx:将远程访问的所有用户都映射为匿名用户,并指定该用户为本地用户

  anongid=xxx:将远程访问的所有用户组都映射为匿名用户组帐号,并指定该匿名用户组账户为本地用户组账户

其它选项(忽略,就用默认值)

四、NFS服务器的启动与停止

在对/etc/exports文件进行正确的配置后,就可以启动NFS服务器了。

1.启动NFS服务器

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

service rpcbind start

service nfs start

2.查询nfs服务器状态

service rpcbind status

service nfs status

3.停止nfs服务器

要停止nfs,要先停止nfs再停止rpcbind服务,对于系统中有其他服务(如nis)需要使用时,不需要停止rpcbind服务

service nfs stop

service rpcbind stop

4.设置nfs服务器的自动启动状态

chkconfig –add

chkconfig –level 35

五、实例

1.将NFS server的/home/cairui 共享给192.168.66.128,权限读写

#vim /etc/exports

/home/cairui 192.168.66.128/24(rw)

2.重启rpcbind和nfs服务

service rpcbind restart

service nfs restart

exportfs

3.服务器端使用showmount命令查询NFS共享状态

showmount -e

showmount -a 显示已经与客户端连接上的目录信息

4.客户端使用showmount命令查询nfs的共享状态

 showmount -e 服务端ip

5.客户端挂载nfs服务器中的共享目录

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

查看是否挂载成功:mount|grep nfs

查看文件是否与服务器端一致

6.NFS的共享权限和访问控制

在服务器/home/cairui修改权限使得客户端可写,可读

chmod 777 -R /home/cairui

6.卸载已挂载的NFS共享目录

格式:umount /tmp/cai

八.启动自动挂载nfs文件系统

格式::

       nfs 0 0

#vim /etc/fstab

NFS服务简介及使用方法

最后一行为后加的

保存退出,重启系统

以上就是NFS服务简介及使用方法的详细内容,更多请关注创想鸟其它相关文章!

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。
如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 chuangxiangniao@163.com 举报,一经查实,本站将立刻删除。
发布者:程序猿,转转请注明出处:https://www.chuangxiangniao.com/p/188179.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
怎么开启笔记本电脑蓝牙功能
上一篇 2026年9月6日 01:52:51
Vue3 render函数中El-select数据无法回显该如何解决?
下一篇 2026年9月6日 01:57:05

相关推荐

  • mysql如何安装mysql命令行工具

    答案:根据操作系统选择安装方式,Windows通过MySQL Installer安装并配置环境变量,macOS用Homebrew执行brew install mysql,Linux(Ubuntu/Debian)使用sudo apt install mysql-client;安装后运行mysql &#…

    2026年9月13日
    000
  • Linux如何使用ip命令配置网络接口

    Linux如何使用ip命令配置网络接口Linux如何使用ip命令配置网络接口Linux如何使用ip命令配置网络接口Linux如何使用ip命令配置网络接口

    ip命令用于替代ifconfig和route,可配置网络接口、IP地址和路由;2. 使用ip addr show查看接口信息,ip link set启用或禁用接口;3. 用ip addr add/del配置或删除IP地址;4. 通过ip route add/del设置默认网关,ip route sh…

    2026年9月13日 用户投稿
    000
  • 在VSCode中编写Markdown时,如何实现实时预览、目录生成和PDF导出?

    VSCode支持Markdown实时预览,通过快捷键或右键菜单打开预览窗口;2. 安装Markdown All in One插件可自动生成目录,输入[TOC]或使用命令面板生成基于标题的可跳转目录;3. 通过预览界面右上角菜单可导出为PDF,依赖系统浏览器引擎实现。 在 VSCode 中编写 Mar…

    2026年9月13日
    100
  • Linux如何查看和修改用户的登录shell历史文件权限

    Linux如何查看和修改用户的登录shell历史文件权限Linux如何查看和修改用户的登录shell历史文件权限Linux如何查看和修改用户的登录shell历史文件权限Linux如何查看和修改用户的登录shell历史文件权限

    Shell历史文件权限不当会泄露敏感信息、遭篡改或被用于攻击溯源,应通过chmod 600设为仅用户可读写,并结合chattr +a防篡改、HISTCONTROL/ HISTIGNORE控制记录内容,在多用户环境则需统一配置默认策略并启用auditd进行内核级审计,同时加强安全意识教育。 Shell…

    2026年9月13日 用户投稿
    000
  • 如何在Linux中进程冻结 Linux cgroup freezer使用

    Linux中使用cgroup freezer可精细冻结进程,需先挂载freezer子系统,创建cgroup目录,将进程PID写入tasks文件,再通过写FROZEN到freezer.state实现冻结,THAWED恢复,操作需root权限,注意v1与v2版本路径及控制方式差异。 Linux中要冻结进…

    2026年9月13日
    100
  • 在Linux中如何通过命令行安装Java JDK

    在Linux中安装Java JDK可通过包管理器或手动安装,推荐使用系统自带工具安装OpenJDK。对于Ubuntu/Debian系统,先更新软件包列表:sudo apt update,再搜索可用版本:apt search openjdk-*,然后安装指定版本如OpenJDK 17:sudo apt…

    2026年9月13日
    000
  • Linux怎么更新所有已安装的软件包

    Linux怎么更新所有已安装的软件包Linux怎么更新所有已安装的软件包Linux怎么更新所有已安装的软件包Linux怎么更新所有已安装的软件包

    答案:不同Linux发行版使用不同包管理器更新软件包。Ubuntu/Debian用sudo apt update && sudo apt upgrade -y;CentOS/RHEL/Fedora用dnf或yum update -y;openSUSE用zypper refresh和u…

    2026年9月13日 用户投稿
    100
  • Linux怎么修改root用户密码

    Linux怎么修改root用户密码Linux怎么修改root用户密码Linux怎么修改root用户密码Linux怎么修改root用户密码

    Linux修改root用户密码,通常我们直接用 passwd 命令就行。如果你已经以root身份登录,直接输入 passwd 回车,然后按提示输入新密码并确认即可。如果你是普通用户但拥有sudo权限,那么使用 sudo passwd root 就能完成这项操作。但如果是不幸忘记了root密码,那过程…

    2026年9月13日 用户投稿
    100
  • 如何配置Scala与Java混合开发环境 Scala环境与JDK整合方法

    配置Scala与Java混合开发环境的关键是安装JDK、Scala并统一管理依赖。1. 安装JDK 8或11,配置JAVA_HOME和PATH;2. 安装Scala并设置SCALA_HOME;3. 使用SBT创建项目,配置build.sbt,组织src目录;4. 在IntelliJ IDEA中安装S…

    2026年9月13日
    000
  • Linux如何统计目录大小du命令实例

    Linux如何统计目录大小du命令实例Linux如何统计目录大小du命令实例Linux如何统计目录大小du命令实例Linux如何统计目录大小du命令实例

    使用du命令可高效查看Linux目录大小,如du -s显示总占用空间,du -sh以易读格式展示,du -h列出各子目录大小,–max-depth限制层级深度,结合sort -h可排序定位最大目录。 在Linux系统中,du(disk usage)命令用于查看文件和目录的磁盘使用情况。统…

    2026年9月13日 用户投稿
    100
  • 怎样使用VSCode的Peek功能快速查看代码?

    使用Alt + F12(Windows/Linux)或Option + F12(Mac)可触发Peek功能,在不离开当前编辑位置的情况下查看函数、变量或类的定义,通过内联窗口滚动浏览代码、点击跳转至文件具体位置,按Esc关闭窗口,还可结合Peek References(Alt + Shift + F…

    2026年9月13日
    300
  • AlmaLinux 10.1 正式发布,支持 Btrfs 文件系统

    社区驱动的linux发行版almalinux近日宣布,其最新版本almalinux 10.1已正式加入对btrfs文件系统的原生支持。作为一款现代写时复制(copy-on-write, cow)文件系统,btrfs以出色的容错机制、自动修复能力和简化的管理流程著称,近年来已被fedora和opens…

    2026年9月13日
    200
  • Linux如何设置用户默认的shell

    Linux如何设置用户默认的shellLinux如何设置用户默认的shellLinux如何设置用户默认的shellLinux如何设置用户默认的shell

    修改Linux用户默认shell首选chsh命令,需确保目标shell已安装且在/etc/shells中;usermod适用于管理员操作;修改后影响环境变量和脚本兼容性,新用户默认shell可通过/etc/default/useradd配置;出问题可用root权限恢复。 Linux设置用户默认she…

    2026年9月13日 用户投稿
    100
  • Linux怎么重新安装损坏的软件包

    Linux怎么重新安装损坏的软件包Linux怎么重新安装损坏的软件包Linux怎么重新安装损坏的软件包Linux怎么重新安装损坏的软件包

    根据发行版选择对应包管理器重新安装软件包可修复损坏问题。例如,Debian/Ubuntu使用“sudo apt install –reinstall 包名”并可运行“sudo apt –fix-broken install”修复依赖;CentOS 7及以前用“sudo yum…

    2026年9月13日 用户投稿
    100
  • 如何清理VSCode的缓存?

    清理 VSCode 缓存可解决启动慢、插件异常等问题。1. 删除用户数据缓存:Windows 删除 C:Users用户名AppDataRoamingCode,macOS 删除 ~/Library/Application Support/Code,Linux 删除 ~/.config/Code;2. …

    2026年9月13日
    000
  • 一键部署AI视频系统 | AI视频生成本地安装教程

    答案:通过Docker容器化部署、Python虚拟环境手动部署或自动化脚本一键安装三种方式可快速搭建本地AI视频生成系统。首先推荐使用Docker,执行docker pull获取镜像,编写docker-compose.yml并运行容器服务,最后访问localhost:8080确认服务启动;开发者可选…

    2026年9月13日
    100
  • Linux如何修复apt依赖关系错误

    Linux如何修复apt依赖关系错误Linux如何修复apt依赖关系错误Linux如何修复apt依赖关系错误Linux如何修复apt依赖关系错误

    首先更新软件包列表以获取最新依赖信息,接着运行sudo apt install -f自动修复依赖,使用sudo dpkg –configure -a重新配置未完成安装的包,清理缓存后重试修复,必要时卸载冲突包并检查第三方源,极端情况可强制移除问题包,多数依赖问题按顺序操作即可解决。 当使…

    2026年9月13日 用户投稿
    200
  • Linux怎么查看进程的环境变量

    Linux怎么查看进程的环境变量Linux怎么查看进程的环境变量Linux怎么查看进程的环境变量Linux怎么查看进程的环境变量

    查看Linux进程环境变量可用ps命令或读取/proc/[pid]/environ文件;前者通过ps auxwwwe | grep 进程名快速过滤,后者需知PID并用cat /proc/PID/environ | tr ” ‘n’清晰查看,各具优劣。 查看Linu…

    2026年9月13日 用户投稿
    200
  • 『开发技术』Ubuntu与Windows如何查看CPU&GPU&内存占用量

    『开发技术』Ubuntu与Windows如何查看CPU&GPU&内存占用量『开发技术』Ubuntu与Windows如何查看CPU&GPU&内存占用量『开发技术』Ubuntu与Windows如何查看CPU&GPU&内存占用量『开发技术』Ubuntu与Windows如何查看CPU&GPU&内存占用量

    0 序·简介 在进行复杂数据运算时,无论是使用Ubuntu还是Windows系统,都需要密切关注CPU、GPU以及内存的使用情况。如果运算超出了硬件负荷,可能会导致不可预测的错误。本文将展示如何通过简单的方法,实时监控Ubuntu和Windows系统的CPU、GPU以及内存使用情况,帮助大家掌握实时…

    2026年9月13日 用户投稿
    200
  • Linux怎么查看路由表信息

    推荐使用ip route show查看路由表,信息清晰;2. route -n以数字形式显示避免解析延迟;3. cat /proc/net/route供脚本解析。日常用ip route即可。 在Linux系统中查看路由表信息,最常用的方法是使用 ip 命令或 route 命令。下面介绍几种实用的方式…

    2026年9月13日
    100

发表回复

登录后才能评论
关注微信