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. vue - 登录验证与权限控制

    描述具体问题 需求 业务系统通常需要登录才能访问受限资源,在用户未登录情况下访问受限资源需要重定向到登录页面: 多个业务系统之间要实现单点登录,即在一个系统或应用已登录的情况下,再访问另一个系统时不需 ...

  2. AOP前世与今生,aspect

    AOP前世与今生 -------------------------------- 1.代码编写重复,(简单重构) 2.改善 3.静态代理(不改变原代码,继乘原来接口),代理类, aop 最原始出发点 ...

  3. Linux 环境下 gzip 的加解密命令

    1.加密 [root@127-0-0-1 nginx]# gzip -v access.log-20190328 access.log-20190328: 95.8% -- replaced with ...

  4. c++11相关特性

    前言 发现好多情况下都会用到c++11的新特性啊. 所以稍稍总结一下,只会粗略的说,不会详细的讲…… upd.csp-s可能不是c++11标准,请慎用.(博主考试CE后的善意提醒) 1.auto&am ...

  5. 举例子说明ubuntu中remove,autoremove,purge区别

    转自:慎用 apt-get autoremove !   apt-get 提供了一个用于下载和安装软件包的简易命令行界面.卸载软件包主要有这3个命令 remove – 卸载软件包autoremove ...

  6. 【Leetcode】2的幂(整数的二进制形式,与运算)

    class Solution { public: bool isPowerOfTwo(int n) { ) return false; )) == ; } }; 注: 1) 2的幂函数,其y值大于0: ...

  7. Zookeeper选举机制(转)

    源:http://blog.csdn.net/tototuzuoquan/article/details/54426684 1.Zookeeper选举机制 Zookeeper虽然在配置文件中并没有指定 ...

  8. 大哥带的mssql注入拿shell

    任务二 注入点拿shell 路径的爆破 https://blog.csdn.net/edu_aqniu/article/details/78409451 0X01判断 是否为判断当前数据库用户名是否为 ...

  9. 使用http-server在本地搭建一个HTTP服务器

    安装http-server 在控制台中输入 npm install http-server -g 进行全局安装 共享资源 进入需要共享资源的目录,比如 D:\,然后在控制台中输入 http-serve ...

  10. 在HTML标签元素中,绑定JS函数

    <a onclick="ShowMsg(this)" id="myA" href="#">按钮</a> //JS方法 ...