NFS服务器、autofs自动挂载综合实验

综合实验

现有主机 node01 和 node02,完成如下需求:
1、在 node01 主机上提供 DNS 和 WEB 服务
2、dns 服务提供本实验所有主机名解析
3、web服务提供 www.rhce.com 虚拟主机
4、该虚拟主机的documentroot目录在 /nfs/rhce 目录
5、该目录由 node02 主机提供的NFS服务共享
6、该目录可以通过autofs服务实现自动挂载
7、所有服务应该在重启之后依然可以正常使用

 实现步骤(准备两台虚拟机):

一、服务端配置

(一)、配置apache名称的虚拟主机

1、安装httpd模块

dnf install httpd -y

2、编写vhost.conf

vim /etc/httpd/conf.d/vhost.conf

内容如下:

192.168.229.140为本机IP

3、创建所需目录,往目录中写内容

mkdir /rhce

echo welcome to rhce > /rhce/index.html

 (二)、配置正向解析

1、安装bind模块

dnf install bind -y

 2、配置named.conf和resolv.conf

vim /etc/named.conf

 内容如下:

DNS 服务器在端口 53 上监听来自指定 IP 地址 192.168.229.140(本机IP) 的请求

vim /etc/resolv.conf

 内容如下:

3、编写区域配置文件named.rhce

vim /var/named/named.rhce

内容如下:

192.168.229.140为本机IP

 4、重启httpd、named服务

systemtcl restart httpd

systemtcl restart named

 5、查看防火墙和SELinux的状态,将防火墙和SELinux开启

 systemctl status firewalld

getenforce

 开启:

systemctl start firewalld

setenforce 1

 6、放行http、dns服务

firewall-cmd --permanent --add-service=http

firewall-cmd --permanent --add-service=dns

(三)、在 ⾮ 标 中 为 HTTP 定 义 SELinux

1、使⽤ matchpathcon ⼯具⽐较标准 SELinux 类型和新路径

        matchpathcon /var/www/html/ /rhce/

2、将 新/rhce/内 容 ⽬ 录 的 SELinux 类 型 改 为 默 认 /var/www/html/ ⽬录的类型

        semanage fcontext -a -e /var/www/html /rhce

设置后如下:  

 3、递归重新标记/rhce目录

        restorecon -Rv /rhce

 结果如下:

 (四)、配置NFS服务器

1、安装并启动NFS服务器

dnf install nfs-utils -y

systemctl enable --now nfs-server

查看状态:

systemctl status nfs-server

2、配置导出目录

mkdir /rhce

chmod 777 /rhce/

vim /etc/exports

需要写入的内容如下:

 3、配置防火墙放行规则

firewall-cmd --permanent --add-service=nfs

firewall-cmd --permanent --add-service=mountd

firewall-cmd --permanent --add-service=rpc-bind

firewall-cmd --reload

firewall-cmd --list-services

二、客户端配置

(一)、客户端挂载

1、在客户端查看导出的目录,并挂载

showmount -e 192.168.229.140

 mkdir /nfs/rhce/ -p

mount 192.168.229.140:/nfs /nfs/rhce/

df -h /nfs/rhce/

2、开机自动挂载

vim /etc/fstab

(二)、配置autofs自动挂载

1、安装autofs服务

dnf install autofs -y

2、编写auto.nfs(子配置文件)

 rhce 192.168.229.140:/rhce

挂载点                         挂载设备

3、配置auto.master(主配置文件)

添加内容如下:

 4、重启autofs服务

systemctl restart autofs

(三)、配置apache名称的虚拟主机

1、安装httpd模块

dnf install httpd -y

2、编写vhost.conf

vim /etc/httpd/conf.d/vhost.conf

内容如下:

192.168.229.141为本机IP

 (四)、配置正向解析

1、安装bind模块

dnf install bind -y

 2、配置named.conf和resolv.conf

vim /etc/named.conf

 内容如下:

DNS 服务器在端口 53 上监听来自指定 IP 地址 192.168.229.141(本机IP) 的请求

vim /etc/resolv.conf

 内容如下:

3、编写区域配置文件named.rhce

vim /var/named/named.rhce

内容如下:

192.168.229.141为本机IP

 4、重启httpd、named服务

systemtcl restart httpd

systemtcl restart named

 5、查看防火墙和SELinux的状态,将防火墙和SELinux开启

 systemctl status firewalld

getenforce

 开启:

systemctl start firewalld

setenforce 1

 6、放行http、dns服务

firewall-cmd --permanent --add-service=http

firewall-cmd --permanent --add-service=dns

7、当 httpd进程使用 nfs 文件系统时,需要打开一个selinux 布尔值 这个提示会在系统日志中出现,setsebool -P httpd_use_nfs 1 这个是开启的命令

setsebool -P httpd_use_nfs 1

 三、测试结果

重启服务端、客户端,然后测试

服务端:

客户端:

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/bicheng/45329.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

【pbootcms】新环境搭建环境安装时发生错误

【pbootcms】新环境搭建环境安装时发生错误 提示一下内容: 登录请求发生错误,您可按照如下方式排查: 1、试着删除根目录下runtime目录,刷新页面重试 2、检查系统会话文件存储目录是否具有写入权限; 3、检查服务器环境pathinfo及伪静态规则配置; 先按照…

开源模型应用落地-Yi模型小试-开源模型 vs 闭源模型(四)

一、前言 Yi 开源模型是由零一万物公司发布的一系列自然语言和多模态模型。2024年5月13日,零一万物发布了最新的 Yi-1.5系列开源模型,开源了6B/9B/34B的 base 版和 chat 版模型,并第一时间发布在ModelScope、huggingface、 wisemodel 等 AI 开源社区平台。 二、术语 2.1. 零…

LeetCode HOT100(三)滑动窗口

子数组最大平均数 I (非hot100,但是滑动窗口的思想可以很好的体现,入门滑动窗口很好的题) 给你一个由 n 个元素组成的整数数组 nums 和一个整数 k 。 请你找出平均数最大且 长度为 k 的连续子数组,并输出该最大平均数…

LabVIEW阀门运动PCT测试

开发了一套基于LabVIEW的阀门运动PCT(Pressure-Composition-Temperature)测试方法。该系统通过控制阀门运动,实现对氢气吸附和解吸过程的精确测量和控制。所用硬件包括NI cDAQ-9174数据采集模块、Omega PX309压力传感器、SMC ITV2030电动调节…

文学式开发工具 Jupyter Notebook

前言:Hello大家好,我是小哥谈。为什么说Jupyter Notebook是文学式开发工具?因为Jupyter Notebook将代码、说明文本、数学方程式、数据可视化图表内容全部组合到一起并显示在一个共享的文档中,可以实现一边写代码一边记录的效果&am…

hot100 | 九、图论

1-leetcode200. 岛屿数量 注意: 蛮巧妙的做法,直接在读取到1的时候给res的值1,然后深度优先搜索把所有相邻的陆地全部改为海洋注意dfs里面的范围判断,[0, **length-1]**length-1length-1length-1 public int numIslands(char[][] grid) {in…

一文搞定node.js和Vue脚手架的介绍以及安装

node.js的介绍以及安装 node.js的介绍 node.js提供了前端程序的运行环境,可以把node.js理解成是运行前端程序的服务器。node.js的安装 从官网下载安装即可:http://nodejs.cn/download/不要勾选这个,否则会下载很多东西 node -v 是 查看node的版本 npm…

按下快门前的算法——对焦

对焦算法可以分为测距式,相位式,反差式。 其中测距式是通过激光,(TOF,Time of Flight)等主动式地得知物距,然后对焦。更常用的是后两者。 反差式CDAF(Contrast Detection Auto Foc…

【服务器】端口映射

文章目录 1.端口映射的概念1.1 端口映射的类型1.2 端口映射的应用场景1.3 示例 2.为什么要进行端口映射呢?3.原理3.1【大白话】原理解释3.2 原理图 4.代码 1.端口映射的概念 端口映射(Port Mapping),也称为端口转发(P…

docker基础知识以及windows上的docker desktop 安装

记录以供备忘 基础概念: 什么是docker 将程序和环境一起打包,以在不同操作系统上运行的工具软件 什么是基础镜像 选一个基础操作系统和语言后,将对应的文件系统、依赖库、配置等打包为一个类似压缩包的文件,就是基础镜像 什么是…

科学防治激素脸 荟敏堂中医治则有绝招

仟江水商业电讯(7月12日 北京 委托发布)最近几年,“激素脸”一词出现在我们生活中的频率似乎越来越高。很多人都曾经或者正在饱受其苦:皮肤瘙痒、紧绷、刺痛,甚至出现红斑、红血丝、表皮萎缩、粗糙、脱屑等等&#xff…

AI在软件开发中的角色:辅助创新还是自动化取代?

文章目录 每日一句正能量前言:人工智能与软件开发的未来交汇点AI工具现状AI对开发者的影响工作方式的改变需要掌握的新技能保持竞争力的策略结论 AI开发的未来AI在软件开发领域的未来发展方向AI是否可能完全取代开发者如何在AI时代规划开发者的职业发展结论 后记&am…

备考美国数学竞赛AMC8和AMC10:吃透1850道真题和知识点

距离接下来的AMC8、AMC10美国数学竞赛还有几个月的时间,实践证明,做真题,吃透真题和背后的知识点是备考AMC8、AMC10有效的方法之一。 通过做真题,可以帮助孩子找到真实竞赛的感觉,而且更加贴近比赛的内容,…

【项目实战】深入解析HTTP状态码:400 Bad Request

在互联网的日常使用中,HTTP状态码是服务器用来回应客户端请求的一种标准化方式。当你在浏览器地址栏敲入一个网址或在应用中发起一个请求时,背后就是HTTP协议在起作用。今天,我们将聚焦于一个特别常见但经常被误解的状态码——400 Bad Reques…

Golang | Leetcode Golang题解之第230题二叉搜索树中第K小的元素

题目: 题解: type MyBst struct {root *TreeNodenodeNum map[*TreeNode]int // 统计以每个结点为根结点的子树的结点数,并存储在哈希表中 }// 统计以 node 为根结点的子树的结点数 func (t *MyBst) countNodeNum(node *TreeNode) int {if…

大数据时代的数据库管理:分库与读写分离的重要性

前言 “分库”和“数据库拆分”这两个术语在数据库领域经常被提及,通常指的是类似的概念,但在细节上有所区别。分库通常指的是将一个大型数据库中的数据分布到多个较小的数据库中,以提高性能和可管理性。而数据库拆分则更广泛地指将数据库…

解决GET请求中文乱码问题

解决GET请求中文乱码问题 1、乱码的根本原因2、解决方法方法一:修改Tomcat配置(推荐)方法二:使用URLEncoder和URLDecoder(不推荐用于GET请求乱码)方法三:String类编解码(不直接解决乱…

深入理解C++多态性:虚函数、纯虚函数与抽象类的奥秘

深入理解C多态性:虚函数、纯虚函数与抽象类的奥秘 在C这门强大而灵活的编程语言中,多态性(Polymorphism)是一个核心概念,它允许我们通过统一的接口(通常是基类指针或引用)来访问不同对象&#…

DBA 数据库管理 部署Mysql 服务,基础查询

数据库:存储数据的仓库 数据库服务软件: 关系型数据库: 存在硬盘 ,制作表格的 数据库的参数 [rootmysql50 ~]# cat /etc/my.cnf.d/mysql-server.cnf 主配置文件 [mysqld] datadir/var/lib/mysql 存放数据库目录…

C#高级开发 线上面试题20240711

1.事件与委托什么关系,委托与lamda表达式是什么关系? 委托(Delegate) 是一种类型,它定义了方法的类型,使得可以将方法作为参数进行传递。委托是引用类型,它封装了一个或多个方法。委托的实例可以像调用方法一样被调用,而实际上它调用的是它所封装的方法。 事件(Event…