shell练习(3)

embedded/2025/1/17 11:22:22/

源码编译安装httpd 2.4,提供系统服务管理脚本并测试

(建议两种方法实现)

下载链接:https://dlcdn.apache.org/httpd/httpd-2.4.62.tar.gz

先装C 和 C++ 编程中常用的工具

[root@openEuler-22 ~]# yum install gcc gcc-c++ make -y

再查看解压

解压:

#将解压后的文件存放到 /usr/local/src/ 目录下
[root@openEuler-22 ~]# tar xf  httpd-2.4.62.tar.gz -C /usr/local/src/

创建一个名为 apache 的系统组和系统用户


#-r 表示创建系统组,-g 48 表示组 ID 为 48
[root@openEuler-22 ~]# groupadd -r -g 48 apache#-r 表示创建系统用户,-u 48 表示用户 ID 为 48,-g 48 表示用户所属组为 apache 组,
# -c "Apache server" 表示用户的注释为 "Apache server",-s /sbin/nologin 表示用户的登录 
#shell 为 /sbin/nologin,即不允许该用户登录系统
[root@openEuler-22 ~]# useradd -r -u 48 -g 48 -c "Apache server" -s /sbin/nologin apache

运行 configure 脚本,为 Apache 服务器的编译做准备

# 切换到 /usr/local/src/httpd-2.4.62/ 目录
[root@openEuler-22 src]# cd /usr/local/src/httpd-2.4.62/# 运行 configure 脚本,--prefix=/usr/local/apache 表示将 Apache 服务器安装到 
#/usr/local/apache 目录下
[root@openEuler-22 httpd-2.4.62]#./configure --prefix=/usr/local/apache#会发现无法运行,因为还缺少依赖包,依次将显示出来缺少的包下载下来,直到可以运行成功# 使用 yum 安装 apr-devel 开发库,用于 Apache 服务器的编译
[root@openEuler-22 httpd-2.4.62]# yum install apr-devel -y# 使用 yum 安装 apr-util-devel 开发库,用于 Apache 服务器的编译确认
[root@openEuler-22 httpd-2.4.62]# yum install apr-util-devel -y# 使用 yum 安装 pcre-devel 开发库,用于 Apache 服务器的编译
[root@openEuler-22 httpd-2.4.62]# yum install pcre-devel -y#无缺少依赖包
[root@openEuler-22 httpd-2.4.62]#./configure --prefix=/usr/local/apache

成功截图:

使用 make 命令编译 Apache 服务器源代码

[root@openEuler-1 httpd-2.4.62]#make

# 使用 make install 命令将编译好的 Apache 服务器安装到系统中
[root@openEuler-22 httpd-2.4.62]# make install# 切换到 /usr/local/apache/bin 目录,这里存放着 Apache 服务器的可执行文件和控制脚本
[root@openEuler-22 httpd-2.4.62]# cd  /usr/local/apache/bin# 使用 vim 编辑器编辑 apachectl 文件,该文件通常是 Apache 服务器的控制脚本
[root@openEuler-22 bin]# vim apachectl# 尝试使用 systemctl 启动 httpd 服务,这里应该是启动 Apache 服务器服务
[root@openEuler-22 bin]# systemctl start httpd


http://www.ppmy.cn/embedded/154641.html

相关文章

更新用户密码功能

总说 过程参考黑马程序员SpringBoot3Vue3全套视频教程,springbootvue企业级全栈开发从基础、实战到面试一套通关_哔哩哔哩_bilibili 又是写了一半开始懒散不想写了,9天没写了。 博客仅记录过程,可能解释不详细,因为我也有点一知…

GIS大模型:三维重建与建模

文章目录 数据收集预处理特征提取深度估计点云生成表面重建纹理映射大模型的角色 大模型在三维重建与建模方面,尤其是在处理低空地图数据时,展现了其强大的能力。通过使用深度学习算法,特别是那些基于卷积神经网络(CNNs&#xff0…

PHP智慧小区物业管理小程序

🌟智慧小区物业管理小程序:重塑社区生活,开启便捷高效新篇章 🌟 智慧小区物业管理小程序是一款基于PHPUniApp精心雕琢的智慧小区物业管理小程序,它犹如一股清新的科技之风,吹进了现代智慧小区的每一个角落…

【网络 MAC 学习专栏 -- 如何理解 PHY 的 Link Up】

请阅读【嵌入式开发学习必备专栏 Cache | MMU | AMBA BUS | CoreSight | Trace32 | CoreLink | ARM GCC | CSH】 文章目录 OverviewClause 22/Clause 45Clause 22Clause 45 PHY Link 状态的软件实现 转自: 开心果 Need Car 2022年10月20日 09:50 上海 Overview PHY…

YunSDR通信小课堂-33

第16讲 MIMO-OFDM基带接收端系统搭建 IEEE802.11n协议物理层采用的主要技术是MIMO-OFDM技术,本章首先阐述MIMO-OFDM系统基本原理,在此基础上探讨IEEE802.11n采用的MIMO-OFDM系统结构。MIMO技术是具有极高频谱利用率的技术,在空间复用模式下,理想情况可以达到300Mbp…

使用vcpkg安装c++库时出现git网络连接报错的解决方案

使用vcpkg安装c库时出现git连接报错的解决方案 背景解决方案 背景 在使用vcpkg的命令vcpkg install安装库的时候,出现了如下报错 error :failed to fetch ref HEAD from repository https://github.com/microsoft/vcpkg failed to execute: "C:\Program File…

学术内容写作ChatGPT提示词分享

论文写作 标题/主题句[Title/Topic Sentence] 1.为以下摘要建议5个标题:[摘要段落] Suggest 5 titles for the following abstract: [ABSTRACT PARAGRAPH] 2.为这段落写一个主题句:[段落] Write a topic sentence for this paragraph: [PARAGRAPH] …

Flutter插件制作、本地/远程依赖及缓存机制深入剖析(原创-附源码)

Flutter插件在开发Flutter项目的过程中扮演着重要的角色,我们从 ​​​​​​https://pub.dev 上下载添加到项目中的第三方库都是以包或者插件的形式引入到代码中的,这些第三方工具极大的提高了开发效率。 深入的了解插件的制作、发布、工作原理和缓存机…