CentOS7配置NFS服务

1. 配置NFS服务器端

1.1. 安装nfs-utils软件

[root@server1 ~]# yum install -y nfs-utils

Loaded plugins: fastestmirror

base | 3.6 kB 00:00

extras | 3.4 kB 00:00

updates | 3.4 kB 00:00

1.2. 配置NFS服务的域名

[root@server1 ~]# vi /etc/idmapd.conf

添加如下的内容

Domain=smartmap.com


1.3. 配置NFS服务的读写属性

[root@server1 ~]# vi /etc/exports

/home 192.168.1.0/24(rw,no_root_squash)

更多参数请参见:

http://hongtengfei.blog.51cto.com/9881650/1684809

权限参数

权限参数类型

功能

rw

可读写的权限

ro

只读的权限

sync(同步)

资料同步写入到内存与硬盘中(慢,不容易丢数据)

async(异步)

资料会暂存于内存当中,而不是写入硬盘(快,容易丢数据)

no_root_squash

客户端用root用户访问该共享文件夹时, root用户不会映射成匿名用户(极不安全,不建议使用)

root_squash

客户端用root用户访问该共享文件夹是,将root用户映射为匿名用户

all_squash

不论登入NFS的使用者身份是谁,他的身份都会被压缩成匿名用户(nfsnobody)

anonuid=xxx

指定NFS服务器的匿名用户UID

anongid=xxx

指定NFS服务器的匿名用户GID

insecure

NFS通过1024以上的端口发送

secure

NFS通过1024以下的安全TCP/IP端口发送

hide

在NFS共享目录中共享其子目录

no_hide

在NFS共享目录中共享其子目录

wdelay

如果多个用户写入NFS目录,则归组写入(默认)

no_wdelay

如果多个用户写入NFS目录,则立即写入,当使用async时,无需此设置

subtree_check

在共享/usr/bin之类的子目录时,强制NFS检查父目录的权限(默认)

no_subtree_check

和上面相对,不检查父目录权限

NFS常用命令

命令

参数

含义

exportfs

-a

递增式更新,对/etc/export增加或修改的部分进行挂载和卸载

-i<文件>

指定配置文件

-r

更新配置重新读取/etc/exports

-u

卸载指定的目录

-o

使用指定的参数

-v

显示共享详细情况

showmount

-a或--all

以host:dir 这样的格式来显示客户主机名和挂载点目录

-d或--directories

仅显示客户端挂载的目录名

-e或--exports

显示NFS服务器输出清单

-h或--help

显示帮助信息

-v或--version

显示版本信息

--no-headers

禁止输出描述头部信息

rpcinfo语法:rpcinfo –p [host];rpcinfo [-n port] –u |-t host program[version]

rpcinfo

-p(probe,探测)

列出所有在host用portmap注册的RPC程序,如果没有指定的host,就查找本地上的RPC程序

-n(port number,端口号)

根据-t或者-u,使用编号为port的端口,而不是由portmap指定的端口号

-u(UDP)

UDP RPC调用host上程序program的version版本,并报告是否接収到响应

-t(TCP)

TCP RPC调用host上程序program的version版本(如果指定的话),并报告是否接收到响应

-b(broadcast,广播)

向程序program的version版本进行RPC广播,并列出响应的主机

-d(delete,删除)

将程序program的version版本从本机的RPC注册表中删除。只有root特权用户才可以使用这个选项

mount(nfs)

-t

指定设备的文件系统类型

-r

以只读方式加载设备

umount

-t

仅卸除选项中所指定的文件系统

-r

若无法成功卸除,则尝试以只读的方式重新挂入文件系统

1.4. 将NFS服务配置成系统的远程调用服务

[root@server1 ~]# systemctl start rpcbind nfs-server

[root@server1 ~]# systemctl enable rpcbind nfs-server

Created symlink from /etc/systemd/system/multi-user.target.wants/nfs-server.service to /usr/lib/systemd/system/nfs-server.service.

[root@server1 ~]#

1.5. 在防火墙中设置NFS服务

[root@server1 ~]# firewall-cmd --add-service=nfs --permanent

FirewallD is not running

[root@server1 ~]# firewall-cmd --reload

FirewallD is not running

[root@server1 ~]#

2. 配置NFS客户端

2.1. 安装nfs-utils软件

[root@server2 ~]# yum install -y nfs-utils

Loaded plugins: fastestmirror

base | 3.6 kB 00:00

extras | 3.4 kB 00:00

2.2. 配置NFS服务的域名

[root@server2 ~]# vi /etc/idmapd.conf

添加如下的内容

Domain = smartmap.com


2.3. 启动系统的远程调用服务

[root@server2 ~]# systemctl start rpcbind

[root@server2 ~]# systemctl enable rpcbind

[root@server2 ~]#


2.4. 挂载NFS服务的文件系统

[root@server2 ~]# mount -t nfs 192.168.1.101:/home /home

[root@server2 ~]# df -hT

Filesystem Type Size Used Avail Use% Mounted on

/dev/sda2 xfs 36G 878M 36G 3% /

devtmpfs devtmpfs 2.0G 0 2.0G 0% /dev

tmpfs tmpfs 2.0G 0 2.0G 0% /dev/shm

tmpfs tmpfs 2.0G 8.7M 2.0G 1% /run

tmpfs tmpfs 2.0G 0 2.0G 0% /sys/fs/cgroup

/dev/sda3 xfs 10G 138M 9.9G 2% /var

/dev/sda1 xfs 2.0G 119M 1.9G 6% /boot

tmpfs tmpfs 394M 0 394M 0% /run/user/0

192.168.1.101:/home nfs4 36G 877M 36G 3% /home

[root@server2 ~]#


2.5. 设置NFS服务的文件系统在系统启动时即进行挂载

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

[root@server2 ~]#

在文件的结尾加入如下的内容

192.168.1.101:/home /home nfs defaults 0 0


2.6. 配置自动装载

2.6.1. 安装autofs

[root@server2 ~]# yum install -y autofs

2.6.2. 配置autofs
2.6.2.1. 修改auto.master

[root@server2 ~]# vi /etc/auto.master

在文件的结尾添加如下的内容

/- /etc/auto.mount


2.6.2.2. 修改auto.mount

[root@server2 ~]# vi /etc/auto.mount

在文件的结尾添加如下的内容

/mntdir -fstype=nfs,rw 192.168.1.101:/home


2.6.2.3. 创建挂载的目录

[root@server2 ~]# mkdir /mntdir

2.6.2.4. 启动autofs服务

[root@server2 ~]# systemctl start autofs

[root@server2 ~]# systemctl enable autofs

Created symlink from /etc/systemd/system/multi-user.target.wants/autofs.service to /usr/lib/systemd/system/autofs.service.

[root@server2 ~]#

2.6.2.5. 验证

[root@server2 ~]# cd /mntdir

[root@server2 mntdir]# ll

total 0

[root@server2 mntdir]# cat /proc/mounts | grep mntdir

/etc/auto.mount /mntdir autofs rw,relatime,fd=19,pgrp=8161,timeout=300,minproto=5,maxproto=5,direct,pipe_ino=34331 0 0

192.168.1.101:/home /mntdir nfs4 rw,relatime,vers=4.1,rsize=524288,wsize=524288,namlen=255,hard,proto=tcp,port=0,timeo=600,retrans=2,sec=sys,clientaddr=192.168.1.102,local_lock=none,addr=192.168.1.101 0 0

[root@server2 mntdir]#

CentOS7系列--3.1CentOS7中配置NFS服务的更多相关文章

  1. CentOS7系列--5.1CentOS7中配置和管理KVM

    CentOS7配置和管理KVM 安装与配置虚拟化软件KVM ( Kernel-based Virtual Machine ) + QEMU,它要求计算机的CPU支持Intel VT or AMD-V功 ...

  2. CentOS7系列--3.2CentOS7中配置iSCSI服务

    CentOS7配置iSCSI服务 在网络上的存贮服务为iSCSI Target,而连接到iSCSI Target服务的叫iSCSI Initiator 1. 直接配置iSCSI Target服务 1. ...

  3. CentOS7系列--2.2CentOS7中配置SSH服务

    CentOS7配置SSH服务 1. SSH配置 1.1. 使用SSH服务更加安全 [root@centos7 ~]# vi /etc/ssh/sshd_config 设置如下 PermitRootLo ...

  4. CentOS7系列--2.1CentOS7中安装配置NTP服务

    CentOS7安装配置NTP服务 NTP服务是时间同步服务 1. 安装NTPd [root@centos7 ~]# yum install -y ntp [jack@centos7 ~]$ vi /e ...

  5. CentOS中配置NFS服务

    1.服务器端安装rpcbind.nfs-utils.nfs-server包 yum install nfs-utils -y 2.修改服务器端配置文件,添加需要共享的文件夹. vim /etc/exp ...

  6. CentOS7系列--10.1CentOS7中的GNOME桌面环境

    CentOS7中的桌面环境 1. 安装GNOME桌面环境 1.1. 列出所有安装套件 [root@appclient ~]# yum groups list Loaded plugins: faste ...

  7. CentOS7系列--5.3CentOS7中配置和管理Kubernetes

    CentOS7配置和管理Kubernetes Kubernetes(k8s)是自动化容器操作的开源平台,这些操作包括部署,调度和节点集群间扩展.如果你曾经用过Docker容器技术部署容器,那么可以将D ...

  8. CentOS7系列--5.2CentOS7中配置和管理Docker

    CentOS7配置和管理Docker Docker是操作系统级别的虚拟化工具,它能自动化布署在容器中的应用 1. 安装Docker 1.1. 安装Docker相关软件 [root@server1 ~] ...

  9. (转)Centos7安装配置NFS服务和挂载

    Centos7安装配置NFS服务和挂载 原文:https://www.u22e.com/601.html NFS简介 NFS(Network File System)即网络文件系统,是FreeBSD支 ...

随机推荐

  1. 【xsy1162】鬼计之夜 最短路+二进制拆分

    套路题(然而我没看题解做不出来) 题目大意:给你一个$n$个点,$m$条有向边的图.图中有$k$个标记点,求距离最近的标记点间距离. 数据范围:$n,m,k≤10^5$. 设$p_i表$示第$i$个标 ...

  2. 面试题:js如何渲染十万条数据并不卡住界面

    这道题考察了如何在不卡住页面的情况下渲染数据,也就是说不能一次性将几万条都渲染出来,而应该一次渲染部分 DOM,那么就可以通过 requestAnimationFrame 来每 16 ms 刷新一次. ...

  3. ANR触发原理(what triggers ANR?)

    Ref: http://developer.android.com/training/articles/perf-anr.html http://stackoverflow.com/questions ...

  4. 【链表】Partition List

    题目: Given a linked list and a value x, partition it such that all nodes less than x come before node ...

  5. Disconf 学习系列之Disconf 的功能特点

    不多说,直接上干货! 支持配置(配置项+配置文件)的分布式化管理 配置发布统一化 配置发布.更新统一化(云端存储.发布):配置存储在云端系统,用户统一在平台上进行发布.更新配置. 配置更新自动化:用户 ...

  6. CentOS命令行界面与图形界面切换(图文详解)

    不多说,直接上干货! Ctrl + Alt +F1,到图形界面 Ctrl + Alt +F2,到命令行界面 欢迎大家,加入我的微信公众号:大数据躺过的坑        人工智能躺过的坑       同 ...

  7. 假如想要建设一个能承受500万PV/每天的网站,服务器每秒要处理多少个请求才能应对?

    假如想要建设一个能承受500万PV/每天的网站,服务器每秒要处理多少个请求才能应对?如何计算? 1.PV是什么:PV是page view的简写.PV是指页面的访问次数,每打开或刷新一次页面,就算做一个 ...

  8. vscode 常用配置

    { "workbench.iconTheme": "vscode-icons", "editor.tabSize": 2, "ed ...

  9. 文件触发式实时同步 Rsync+Sersync Rsync+Inotify-tools

    一.概述 1.Rsync+Sersync 是什么? 1)Sersync使用c++编写基于inotify开发的触发机制: 2)Sersync可以监控所监听的目录发生的变化(包括新建.修改.删除),具体到 ...

  10. vue cli+axios踩坑记录+拦截器使用,代理跨域proxy

    1.首先axios不支持vue.use()方式声明使用,看了所有近乎相同的axios文档都没有提到这一点 建议方式 在main.js中如下声明使用 import axios from 'axios'; ...