nfs共享服务为中小型企业在存储上提供了有效的节省空间,许多大型的网站也在使用nfs,如百度和阿里等,下面结合自己所学的知识,阐述如何在centos6和centos7下配置nfs。注:除了必要的说明外,未说明的命令代表centos6和7的命令是一样的。

一、服务器端:

1、首先在服务器端禁止selinux和防火墙(测试环境下);

setenforce 0  ----临时禁止selinux;

service iptables stop  ---在centos6下停防火墙,

systemctl stop firewalld  -----在centos7下停防火墙;

2、下载软件包

nfs服务依赖于rpc服务,nfs服务只有在rpc服务内注册后,nfs客户端才能检测到服务器端的nfs服务端口;

rpm -qa|grep -E 'nfs-utils|rpcbind'  ----使用grep-E多过滤查询是否已经存在来nfs和rpc的软件包

rpm -qa nfs-utils rpcbind  ---检查系统是否已经存在来nfs和rpc的软件包,如果没有,测执行下面的下载命令;

yum -y install nfs-utils rpcbind  -----使用yum源安装rpc和nfs服务;

3、启动rpc和nfs

/etc/init.d/rpcbind start  ----centos6下启动rpc服务;

systemctl start  rpcbind  ---centos7下启动rpc服务

/etc/init.d/rpcbind status  ---centos6下查看rpc服务状态;

systemctl start  rpcbind  ---centos7下查看rpc服务状态

rpcinfo -p localhost  ----查看本机的rpc进程;

centos6下rpc的状态     注:默认情况下rpc会使用111端口

[root@h1 ~]# rpcinfo -p localhost
program vers proto port service
100000 4 tcp 111 portmapper
100000 3 tcp 111 portmapper
100000 2 tcp 111 portmapper
100000 4 udp 111 portmapper
100000 3 udp 111 portmapper
100000 2 udp 111 portmapper

centos7下的rpc状态

[root@hxy ~]# rpcinfo -p localhost
program vers proto port service
100000 4 tcp 111 portmapper
100000 3 tcp 111 portmapper
100000 2 tcp 111 portmapper
100000 4 udp 111 portmapper
100000 3 udp 111 portmapper
100000 2 udp 111 portmapper

/etc/init.d/nfs start  ----在centos6下启动nfs服务

/etc/init.d/nfs status  ----在centos6下查看nfs服务状态

systemctl start  nfs  ---在centos7下启动nfs服务

systemctl status  nfs  -----在centos7下查看nfs服务状态

rpcinfo -p localhost  ----再次执行rpcinfo -p localhost,查看nfs在rpc中注册的端口信息;

[root@h1 ~]# rpcinfo -p localhost
program vers proto port service
100000 4 tcp 111 portmapper
100000 3 tcp 111 portmapper
100000 2 tcp 111 portmapper
100000 4 udp 111 portmapper
100000 3 udp 111 portmapper
100000 2 udp 111 portmapper
100011 1 udp 875 rquotad
100011 2 udp 875 rquotad
100011 1 tcp 875 rquotad
100011 2 tcp 875 rquotad
100005 1 udp 49695 mountd
100005 1 tcp 59877 mountd
100005 2 udp 45066 mountd
100005 2 tcp 56487 mountd
100005 3 udp 32839 mountd
100005 3 tcp 35875 mountd
100003 2 tcp 2049 nfs
100003 3 tcp 2049 nfs
100003 4 tcp 2049 nfs
100227 2 tcp 2049 nfs_acl
100227 3 tcp 2049 nfs_acl
100003 2 udp 2049 nfs
100003 3 udp 2049 nfs
100003 4 udp 2049 nfs
100227 2 udp 2049 nfs_acl
100227 3 udp 2049 nfs_acl
100021 1 udp 34416 nlockmgr
100021 3 udp 34416 nlockmgr
100021 4 udp 34416 nlockmgr
100021 1 tcp 32899 nlockmgr
100021 3 tcp 32899 nlockmgr
100021 4 tcp 32899 nlockmgr

设置开机自启动nfs(此处不是必须的,根据需求自行选择是否添加该功能)

centos6下的设置

chkconfig rpcbind on;

chkconfig nfs on;

centos7下的设置

systemctl enable rpcbind;

systemctl enable nfs;

4、配置nfs权限配置文件,确定客户端访问的权限;

vi /etc/exports

/mnt/cdrom *(rw,async)

注:/mnt/cdrom 指想要共享的文件目录,*代表所有的ip都可以访问,(rw,async)代表访问者对此目录有读和写的权限,aysnc指:不同时写到内存和文件中;

exportfs -r  ----使配置文件立即生效;

5、将共享目录的所有者和群组配置为nfsnobody

chown nfsnobody:nfsnobody /mnt/cdrom -R

或者将此文件夹的其他人权限改为rwx

chmod o=rwx /mnt/cdrom

二、客户端的配置

1、客户端只需要安装rpc服务即可;

rpm -qa nfs-utils rpcbind

yum -y install rpcbind  ---不存在rpc才执行此命令

2、查看是否能够访问服务器端的共享文件目录;

[root@hxy ~]# showmount -e 192.168.222.128
Export list for 192.168.222.128:
/mnt/cdrom *

3、将服务器端的共享目录挂载到本地目录下

mount -t nfs 192.168.222.128:/mnt/cdrom/ /mnt/cdrom/

4、查看挂载是否成功

[root@hxy ~]# df -h
文件系统 容量 已用 可用 已用% 挂载点
/dev/mapper/centos-root 7.8G 1.4G 6.1G 18% /
devtmpfs 223M 0 223M 0% /dev
tmpfs 235M 0 235M 0% /dev/shm
tmpfs 235M 5.6M 229M 3% /run
tmpfs 235M 0 235M 0% /sys/fs/cgroup
/dev/sda1 976M 103M 807M 12% /boot
tmpfs 47M 0 47M 0% /run/user/0
192.168.222.128:/mnt/cdrom 918M 918M 0 100% /mnt/cdrom

此处可见,已经成功了,

注:如果想要永久挂载在本地目录下,必须将其写入/etc/fstab文件下,并执行mount -a 检索挂载语法,这样才能实现永久挂载;

现在亲可以试着访问服务器端此文件夹下的文件了

如何在centos6和centos7上部署nfs共享服务器和客户端的更多相关文章

  1. 在 CentOS7 上部署 MySQL 主从

    在 CentOS7 上部署 MySQL 主从 通过 SecureCRT 连接至 MySQL 主服务器: 找到 my.cnf 文件所在的目录: mysql --help | grep my.cnf 一般 ...

  2. 在 CentOS7 上部署 zookeeper 服务

    在 CentOS7 上部署 zookeeper 服务 1 用 SecureCRT 或 XShell 等 Linux 客户端工具连接至 CentOS7 服务器: 2 进入到 /usr/local/too ...

  3. 在阿里云ECS CentOS7上部署基于MongoDB+Node.js的博客

    前言:这是一篇教你如何在阿里云的ECS CentOS 7服务器上搭建一个个人博客的教程,教程比较基础,笔者尽可能比较详细的把每一步都罗列下来,包括所需软件的下载安装和域名的绑定,笔者在此之前对Linu ...

  4. 在CentOS7上部署Kubernetes集群

    在CentOS7上部署Kubernetes集群 文/FCBusquest 2015-12-22 18:36:00 简介 Kubernetes(k8s)是Google开源的大规模容器集群管理系统, 本文 ...

  5. CentOS7上部署ASP.Net Core 2.2应用

    前言 在CentOS7上部署ASP.Net Core应用是我的技术路线验证的一部分,下一个产品计划采用ASP.Net Boilerplate Framework开发.因此需要求提前进行一下技术验证,在 ...

  6. 【docker】centOS7上部署的mysql和spring boot服务,要求,mysql的时间、java程序服务的时间和宿主机的时间完全保持一致【修改mysql时区,临时和永久】【修改spring boot配置文件时区】【修改docker启动spring boot实例程序时区】

    要求:centOS7上部署的mysql和spring boot服务,要求,mysql的时间.java程序服务的时间和宿主机的时间完全保持一致: ============================ ...

  7. (转)Centos7上部署openstack ocata配置详解

    原文:http://www.cnblogs.com/yaohong/p/7601470.html 随笔-124  文章-2  评论-82  Centos7上部署openstack ocata配置详解 ...

  8. centos7上部署dubbo管理控制台dubbo-admin

    centos7上部署dubbo管理控制台dubbo-admin 1 准备工作 服务器:系统centos7, 内存4G, 存储60G, ip 192.168.159.128 软件环境: 安装有jdk1. ...

  9. windows上搭建NFS服务器及客户端 挂载

    在Windows相关系统上搭建NFS服务及客户端挂载  有两种方式: 第一种: (Windows Server2008R2等类似企业版这样的版本的Server服务上有自带的NFS服务进行搭建) (特别 ...

随机推荐

  1. TypeScript作为前端开发你必须学习的技能二)

    TypeScript 变量声明 变量是一种使用方便的占位符,用于引用计算机内存地址.我们可以把变量看做存储数据的容器. TypeScript 变量的命名规则:和javascript一样.除了下划线 _ ...

  2. OI实用网址

    LaTeX公式编辑器 https://www.codecogs.com/latex/eqneditor.php http://latex.91maths.com/ 图.坐标系绘制 https://cs ...

  3. Cassandra 安装部署

    Linux 系统安装Cassandra 一.Cassandra需要安装jdk支持,首先安装jdk 自行百度查找安装 二.下载Cassandra 官网地址: https://cassandra.apac ...

  4. sql server 表2字段更新到表1,mysql

    UPDATE kingdee_pro_stock set kingdee_pro_stock.org_name=ERP_BASIC_BILLNO_PREFIX.org_name,kingdee_pro ...

  5. 浅谈Vue中Slot以及slot-scope

    vue中关于插槽的文档说明很短,语言又写的很凝练,再加上其和methods,data,computed等常用选项使用频率.使用先后上的差别,这就有可能造成初次接触插槽的开发者容易产生“算了吧,回头再学 ...

  6. Devexpress MVC DateEdit 设置默认的Time

    当用户没有选择日期的时候, 默认显示当前的时间给TimeEdit. 只有当用户选了日期后, 才会把时间带进去. 效果图: 实现 C# Helper Code public static Action& ...

  7. 关于spring data jpa的@query的传入参数是对象怎么匹配参数

    /** * Specifies methods used to obtain and modify person related information * which is stored in th ...

  8. 论文学习 :Learning a Deep Convolutional Network for Image Super-Resolution 2014

    (Learning a Deep Convolutional Network for Image Super-Resolution, ECCV2014) 摘要:我们提出了一种单图像超分辨率的深度学习方 ...

  9. 后盾网lavarel视频项目---1、数据迁移

    后盾网lavarel视频项目---1.数据迁移 一.总结 一句话总结: 1.lavarel的数据迁移比较简单,就是用php来创建数据表 2.创建迁移文件:php artisan make:migrat ...

  10. 提示标签title折行

    使用代码换行共两种代码,均可实现html标签内title内容显示时换行.换行代码符分别为:“ ”和“ ”以上符合数字输入均必须英文半角模式输入.使用时候,在需要换行地方任选一种(组)换行符号代码即可.