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. 剑指offer二十八之数组中出现次数超过一半的数字

    一.题目 数组中有一个数字出现的次数超过数组长度的一半,请找出这个数字.例如输入一个长度为9的数组{1,2,3,2,2,2,5,4,2}.由于数字2在数组中出现了5次,超过数组长度的一半,因此输出2. ...

  2. Redis客户端使用

    http://wenku.baidu.com/view/6ccd650af12d2af90242e63d.html 一.下载jedis 代码 jedis 代码地址:https://github.com ...

  3. centos 7 nginx 安装

    1.下载nginx rpm包 下载地址:http://nginx.org/packages/mainline/centos/7/x86_64/RPMS/ ,可查看所有安装包 从中如下载: wget h ...

  4. 手淘的移动端适配方案flexible

    基于 vue-cli 配置手淘的 lib-flexible + rem,实现移动端自适应 安装 flexible npm install lib-flexible --save 引入 flexible ...

  5. Android 开发工具类 14_ JsonTools

    天气 JSON 数据解析 package com.example.weather_json.tools; import java.util.ArrayList; import java.util.Li ...

  6. Javac语法糖之内部类

    在Javac中解语法糖主要是Lower类来完成,调用这个类的入口函数translateTopLevelClass即可.这个方法只是JavacCompiler类的desugar方法中进行了调用. 首先来 ...

  7. LDAP落地实战(一):OpenLDAP部署及管理维护

    公司内部会有许多第三方系统或服务,例如Svn,Git,VPN,Jira,Jenkins等等,每个系统都需要维护一份账号密码以支持用户认证,当然公司也会有许多的主机或服务器,需要开放登录权限给用户登录使 ...

  8. celery在Django中的应用

    这里不解释celery,如果不清楚可以参考下面链接: http://docs.celeryproject.org/en/latest/getting-started/introduction.html ...

  9. 用css实现在横线中间插入文字

    在一些登录或者注册界面中常常可看到,一个大框框上面的横线中有插入文字,大概示意图如下: 这种现象其实是相对位置作用的结果,可以通过相对定位,是某元素恰好出现在div的边框上. position: re ...

  10. redis-springdata-api

    使用StringRedisTempalte操作redis五种数据类型 spring-data中继承了redisTemplate, 提供redis非切片连接池 代码github地址: https://g ...