Web 服务、 Nfs 服务器以及 Dns 服务器综合实验

news2025/5/25 19:23:40

要求:

1.web 服务的资源文件通过 nfs 服务器共享  www.luntan.com

2.确保所有主机时间同步

3.定义本地 dns 服务器解析 web 主机域名

实验:

主机服务程序
192.168.96.142dns、nfs
192.168.96.132web

服务器说明:

设备      IP
服务端

192.168.96.142

[root@localhost ~]

客户端

192.168.96.132

[root@www ~]

1.确保所有主机时间同步

① 首先检查 chrony 服务是否已经安装(chrony 是在 linux 系统中用于时间同步的守护进程,可以让系统时钟与网络时间协议(NTP)服务器保持同步);在看到已安装后启动该程序
[root@142 ~]# rpm -qa | grep chrony
chrony-4.5-3.el9.x86_64

[root@142 ~]# systemctl start chronyd 
② 进入到 chrony 服务配置文件查看指定的 NTP 服务器池
[root@142 ~]# vim /etc/chrony.conf 

pool 2.rhel.pool.ntp.org iburst
③ 查看 chrony 当前时间源状态,带 * 符号的源表示当前正在使用该服务器进行同步;两个主机的同步的 IP 地址一样说明在 /etc/chrony.conf 中重复配置了 同一个 NTP 服务器
[root@142 ~]# chronyc sources

MS Name/IP address         Stratum Poll Reach LastRx Last sample               
===============================================================================
^- time.cloudflare.com           3   9   377    56    +23ms[  +22ms] +/-  242ms
^+ ntp5.flashdance.cx            2   8   377   370  -2762us[-4281us] +/-  108ms
^+ time.cloudflare.com           3   9   377    56  +3249us[+1772us] +/-  106ms
^* 211.68.71.26                  3   8   373    25    -12ms[  -13ms] +/-   88ms


# MS Name/IP address:
                    ① ^:表示该源是 NTP 服务器(server)
                    ② -:表示未被合并的源
                    ③ +:表示被合并到时间计算中的辅助源
                    ④ *:表示当前正在同步的主时间源

# Stratum:
         NTP 服务器的层级,数值越小越接近原子钟(2 比 3更精确)

# Poll:
      轮询间隔的对数(6表示 2^6 = 64 秒)

# Reach:
       可达性寄存器(八进制),记录最近 8 次尝试连接的结果(377 表示连续 8 次成功)

# LastRx:
        上次成功接收数据包的时间(秒)

# Last sample:
             最后一次测量的时间偏移量,格式为 调整后偏移 [原始测量值] +/- 误差估计
[root@132 ~]# chronyc sources
MS Name/IP address         Stratum Poll Reach LastRx Last sample               
===============================================================================
^- time.cloudflare.com           3   8   377    18   -398us[ -398us] +/-  133ms
^* 211.68.71.26                  2   7   377   122  +1913us[+1105us] +/-  104ms
^- time.cloudflare.com           3   8   377    82    +91ms[  +91ms] +/-  198ms
^+ ntp5.flashdance.cx            2   7   377    85  -5186us[-5186us] +/-  119ms
④ 除却 chronyc sources 查看 chrony 当前时间源状态,timedatectl 同样可以管理系统时间和日期,查看和配置系统时钟、时区以及 NTP 同步状态
[root@142 ~]# timedatectl

               Local time: 五 2025-05-23 14:28:07 CST
           Universal time: 五 2025-05-23 06:28:07 UTC
                 RTC time: 五 2025-05-23 06:28:08
                Time zone: Asia/Shanghai (CST, +0800)
System clock synchronized: yes     # NTP 同步状态
              NTP service: active  # chrony 或 ntpd 是否运行
          RTC in local TZ: no      # RTC 是否使用本地时区

2.在142主机上实现 dns 以及 nfs 服务程序

DNS
① rpm 查看 dns 服务程序 bind
[root@142 ~]# rpm -qa | grep bind
② 查看后没有 bind 程序包则进行下载
[root@142 ~]# mount /dev/sr0 /mnt    # 磁盘挂载

[root@142 ~]# vim /etc/yum.repos.d/base.repo     # 查看yum源配置是否完整

[root@142 ~]# dnf install bind -y     # 下载bind程序包
③ 进入到 bind 配置文件并编辑,其次进入到配置文件中资源文件 named.openlab 中设置 132 主机的 luntan.com
[root@142 ~]# vim /etc/named.conf 

zone "luntan.com" IN {
        type master;
        file "named.openlab";
};

[root@142 ~]# vim /var/named/named.openlab

$TTL 1D
@       IN SOA @ rname.invalid. (
                                        1       ; serial
                                        1M      ; refresh
                                        1M      ; retry
                                        1M      ; expire
                                        3M )    ; minimum                                       
        NS      ns.openlab.com.

ns      A       192.168.96.142

www     A       192.168.96.132    ; www.luntan.com   192.168.96.132   web服务器主机

wwww    CNAME   www

ftp     A       192.168.96.222

mail    A       192.168.96.100
④ 修改完配置文件后重启服务程序
[root@142 ~]# systemctl restart named
⑤ 在 132 主机进行测试
[root@132 ~]# dig -t A www.luntan.com @192.168.96.142

NFS
① 下载 nfs-utils 程序包
[root@142 ~]# dnf install nfs-utils -y
② 进入到 /etc/exports 配置文件并编辑,其次根据配置文件中设置的创建对应的资源文件
[root@142 ~]# vim /etc/exports
/pub  *(rw,sync)

# sync:启用同步写入模式;NFS 服务在处理客户端写入请求时,会将数据先写入本地磁盘,再返回确认信息给客户端


[root@142 ~]# mkdir /pub
③ 将 Discuz_X3.5_SC_UTF8_20230520 文件(论坛网站开源包文件)传输至 /pub 目录下并进行解压操作
[root@142 ~]# cd /pub

[root@142 pub]# 

[root@142 pub]# unzip Discuz_X3.5_SC_UTF8_20230520.zip 

[root@142 pub]# ll

④ 重启 nfs 服务,由于 nfs 服务启动时每次都会通过 rpc 进行端口注册,所以不建议频繁进行重启操作,只需要进行导出操作即可
[root@142 pub]# exportfs -ra
⑤ 将当前主机挂载的文件系统进行查看,但是我们前面下载完 nfs-utils 后没有启动服务程序,所以先启动 nfs-utils ,在进行挂载系统查看
[root@142 ~]# systemctl restart nfs-server.service

[root@142 ~]# showmount -e 192.168.96.142
Export list for 192.168.96.142:
/pub *
⑥ 客户端访问服务端共享系统,需要在客户端建立一个挂载点目录,我们创建为 /www‘接着将服务端的共享文件挂载到客户端的 /www 下,挂在后可查看服务端的共享文件内容
[root@132 ~]# dnf install nfs-utils -y

[root@132 ~]# mkdir /www

[root@132 ~]# mount 192.168.96.142:/pub /www

[root@132 ~]# ll /www

3.在132主机上实现 web 服务器

① 下载 nginx 程序包
[root@132 ~]# dnf install nginx -y
② 通过 nfs 解析网站资源路径下的界面信息,需要自定义一个配置文件
[root@132 ~]# vim /etc/nginx/conf.d/luntan.conf

server {
        listen 80;
        server_name www.luntan.com;
        root /www/upload/;

        location ~* \.(jpg|jpeg|png|gif|css|js)$ {
                #~* 匹配不区分大小写
                expires 30d;  # 设置缓存时间
                access_log off;
        }

# php-fpm  进程调度器
        location  / {

        fastcgi_pass   unix:/run/php-fpm/www.sock;
        fastcgi_index  index.php;
        fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
        include        fastcgi_params;

        }
}
③ 解析 php 文件还需要下载 php 解析程序
[root@132 ~]# dnf install php* -y
④ 最后安装数据库程序 mariadb-server 并启动
[root@132 ~]# dnf install mariadb-server -y

[root@132 ~]# systemctl restart mariadb
⑤ MySQL/MariaDB 提供一个安全配置脚本,用于初始化数据库安全设置;除了要设置密码以外,其余皆可回车
[root@132 ~]# mysql_secure_installation
⑥ 完成之后登录数据库并创建 luntan 的数据库,创建完成后 exit 退出数据库即可
[root@132 ~]# mysql -uroot -p

Enter password: 
Welcome to the MariaDB monitor.  Commands end with ; or \g.
Your MariaDB connection id is 13
Server version: 10.5.22-MariaDB MariaDB Server

Copyright (c) 2000, 2018, Oracle, MariaDB Corporation Ab and others.

Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.

MariaDB [(none)]> create database luntan;
Query OK, 1 row affected (0.000 sec)

MariaDB [(none)]> exit;
Bye
⑦ 同时启用并立即启动三个服务:Nginx(Web 服务器)、MariaDB(数据库)和 PHP-FPM(PHP 处理引擎)
[root@132 ~]# systemctl enable nginx mariadb php-fpm --now
Ⅰ.在 Windows 下测试 luntan
① 在 Windows 系统下登录浏览器,在浏览器中输入 linux 系统中的132主机 IP 地址进入到  Discuz! 安装向导(由于在动态网站 LNMP 文章中有完整的安装过程,这里省略安装过程)

进入到安装向导后我们可以看到文件缺失以及权限不够的问题,我们返回到 linux 中解决这两个问题。注意这里的文件是在服务端(142主机)的共享文件中,所以我们需要在服务端(142主机)修改权限等问题!

[root@142 ~]# cd /pub/upload/   # 将路径切换到upload下

[root@142 upload]# ll    # 查看upload下文件名

[root@142 upload]# chmod 777 config data uc_* -R    # 修改目录以及该目录下所有文件的权限,以递归的方式

修改完成后返回到 Windows 下刷新页面即可完成检查安装环境

② 安装完成后点击直接访问站点即可进入论坛

Ⅱ.在 Linux 下测试 luntan
① 在132主机客户端修改 dns IP 地址为142主机
[root@132 ~]# vim /etc/resolv.conf 

# Generated by NetworkManager
search localdomain
nameserver 192.168.96.142
② 进入到浏览器中输入 www.luntan.com 域名即可成功进入到我们的论坛界面,这一步证明我们在142主机配置的 dns 解析没有问题!

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

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

相关文章

汇编语言的子程序魔法:解锁四则运算的奥秘

在嵌入式系统的世界里,汇编语言就像是魔法师手中的魔杖,能够直接操控硬件,实现各种神奇的功能。今天,我将带你走进一场充满乐趣的实验:如何用汇编语言实现四则运算,并将它们封装成子程序。这不仅是一次技术…

快速解决Linux 中yum镜像拉取失败问题

在linux中使用yum命令拉取镜像的时候,如果出现如下类似报错: 我这里是安装Erlang环境也是同样报错: 其实就是网络环境的问题,更换为国内的镜像源就行了,可以选择cmd的ssh连接方式(命令:ssh root192.168.xxx…

HarmonyOS基础组件:Button三种类型的使用

简介 HarmonyOS在明年将正式不再兼容Android原生功能,这意味着对于客户端的小伙伴不得不开始学习HarmonyOS开发语言。本篇文章主要介绍鸿蒙中的Button使用。 HarmonyOS中的Button相较于Android原生来说,功能比较丰富,扩展性高,减…

产业互联网+三融战略:重构企业增长密码

产业互联网时代:用"三融"重构企业增长飞轮 在产业互联网浪潮下,企业面临资源分散、资金短缺、人才难聚的三重挑战。本文提出的"融人、融资、融资源"顶层设计,正为新时代企业构建增长新引擎。 一、三级合伙人体系&#x…

Centos系统资源镜像配置

主要体现 yum 命令执行报错,排除网络连接问题 解决步骤: 下载安装工具 # 安装 wget curl vim yum install -y wget curl vim 原有repo文件备份 # 进入配置文件所在文件夹 cd /etc/yum.repos.d# 创建 backup 文件夹 mkdir backup# 备份文件放置文件夹 m…

【Linux网络篇】:Socket网络套接字以及简单的UDP网络程序编写

✨感谢您阅读本篇文章,文章内容是个人学习笔记的整理,如果哪里有误的话还请您指正噢✨ ✨ 个人主页:余辉zmh–CSDN博客 ✨ 文章所属专栏:Linux篇–CSDN博客 文章目录 网络编程套接字一.预备知识1.理解源IP地址和目的IP地址2.认识端…

学习路之uniapp--unipush2.0推送功能--给自己发通知

学习路之uniapp--unipush2.0推送功能--给自己发通知 一、绑定云空间及创建云函数二、编写发送界面三、效果后期展望: 一、绑定云空间及创建云函数 package.json {"name": "server-push","dependencies": {},"main": "…

leetcode hot100刷题日记——12.反转链表

解答: /*** Definition for singly-linked list.* struct ListNode {* int val;* ListNode *next;* ListNode() : val(0), next(nullptr) {}* ListNode(int x) : val(x), next(nullptr) {}* ListNode(int x, ListNode *next) : val(x), next(n…

《Python语言程序设计》第4章第8题3个个位数之间比大小。‘a小于b而b大于c’这是最有漏洞的一个对比,请问我如何判断a和c

升序来做这个题 比如123就变成321 需要比对3个数 这不是比对2个数。a和b比对 我们可以直接写 if a>b: print(ab) else print(ba) 但是现在是3个数abc 如果进行if比对呢 if a > b >c: print(a,b,c) elif a < b >c: print(bca) … 简洁的代码变成了复杂的代码段。…

Selenium 测试框架 - Python

🚀Selenium Python 实战指南:从入门到进阶 Selenium 是 Web 自动化测试中最受欢迎的工具之一,支持多种浏览器和语言。本文将从环境搭建到多浏览器兼容、测试框架集成、元素定位方式、常用操作、浏览器配置等多个方面进行详细讲解,并分享常见的最佳实践建议。 📦一、环境…

RNN GRU LSTM 模型理解

一、RNN 1. 在RNN中&#xff0c; 二、GRU 1. GRU是为了解决RNN 梯度消失引入的改良模型&#xff0c; 2. GRU 通过门控 Gamma_r Gamma_u 两个变量&#xff0c;实现了对于过往记忆的筛选&#xff1a;这种机制使得GRU能够灵活地决定何时“忘记”过去的信息以及何时“记住”新的…

【MC】红石比较器

在《我的世界》&#xff08;Minecraft&#xff09;中&#xff0c;红石比较器&#xff08;Redstone Comparator&#xff09; 是一种高级红石元件&#xff0c;主要用于 检测、比较或处理信号强度&#xff0c;同时还能与容器、特定方块互动。 红石比较器有两种模式&#xff1a; 比…

红黑树简单模拟实现

定义成员变量旋转insert以234树的角度来待插入操作具体代码 完整代码 我们前面实现了 二叉搜索树和 AVL树。 其中AVL树是二叉搜索树的改进&#xff0c;但是有些人觉得二叉树搜索的插入调整太频繁了&#xff0c;或者说平衡条件过于苛刻。 于是人们放松了左右子树高度差的限制&…

豪越科技:消防应急装备智能仓储管理新变革

在消防救援工作中&#xff0c;消防装备无疑是消防员们与火灾等灾害顽强对抗的关键“武器”。然而&#xff0c;传统的消防装备管理模式长期以来饱受诸多痛点的困扰&#xff0c;严重影响着消防工作的高效开展和救援效果。 在过去&#xff0c;装备丢失的情况时有发生。由于缺乏有效…

如何设计Agent的记忆系统

最近看了一张画Agent记忆分类的图 我觉得分类分的还可以&#xff0c;但是太浅了&#xff0c;于是就着它的逻辑&#xff0c;仔细得写了一下在不同的记忆层&#xff0c;该如何设计和选型 先从流程&#xff0c;作用&#xff0c;实力和持续时间的这4个维度来解释一下这几种记忆&am…

毕业论文格式(Word)

目录 Word目录怎么自动生成&#xff1f;快速生成试试这3个方法&#xff01; - 知乎https://zhuanlan.zhihu.com/p/692056836目录生成需要先设置标题样式&#xff0c;这个不仅是目录生成需要&#xff0c;和后续的图表也有关系。 最好不要自己创建新的样式&#xff0c;而是在现有…

学习STC51单片机14(芯片为STC89C52RC)

接下来我们进入学会了HC—SR04 还有舵机那么现在我们将他们融合在一起&#xff0c;用超声波来引导舵机的转动 我们这个最后的成果是做一个智能垃圾桶 成品是这样的&#xff0c;是不是可有意思了 成品视频 现在我们将舵机的代码和超声波测距模块的代码整合到一起&#xff0c;实…

基于CodeBuddy实现本地网速的实时浏览小工具

本文所使用的 CodeBuddy 免费下载链接&#xff1a;腾讯云代码助手 CodeBuddy - AI 时代的智能编程伙伴 前言 在数字化浪潮席卷全球的今天&#xff0c;网络已成为人们生活和工作中不可或缺的基础设施。无论是在线办公、学习、娱乐&#xff0c;还是进行大数据传输和云计算&…

stable diffusion论文解读

High-Resolution Image Synthesis with Latent Diffusion Models 论文背景 LDM是Stable Diffusion模型的奠基性论文 于2022年6月在CVPR上发表 传统生成模型具有局限性&#xff1a; 扩散模型&#xff08;DM&#xff09;通过逐步去噪生成图像&#xff0c;质量优于GAN&#x…

计算机网络(3)——传输层

1.概述 1.1 传输层的服务和协议 (1)传输层为允许在不同主机(Host)上的进程提供了一种逻辑通信机制 (2)端系统(如手机、电脑)运行传输层协议 发送方&#xff1a;将来自应用层的消息进行封装并向下提交给 网络层接收方&#xff1a;将接收到的Segment进行组装并向上提交给应用层 …