Linux :源代码编译安装过程(应用程序基础,RPM软件包管理工具,源代码编译安装)

应用程序基础

应用程序与系统命令的关系

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

RPM软件包管理工具

在这里插入图片描述
在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

查询已经安装的RPM软件信息

用法 rpm -qa

命令讲解

-qa: 查看已经安装的所有的RPM软件包列表

-ql 查看软件包的安装目录

-qi 查看指定软件包详细信息 (可以结合which使用)

-qf 通过此软件具体的路径,插这个软件具体的版本

-qc 列出配置文件(etc下的文件)会列出conf文件的位置 //查看配置文件所在路径

-qd: 列出帮助文件(man手册)

查询未安装的RPM软件信息

用法 rpm -qpi

用法:

-qpi 查看该软件的详细信息

-qpl 查看包内所有包含的目录文件列表

-qpc 列出配置文件

-qpd 列出帮助手册

安装,升级 RPM软件

-U 升级,若为安装,则进行安装

-i 安装一个新的rpm

-h 以#号显示安装的进度

-v 显示安装过程的详细信息

-f 更新某个RPM软件,若未安装,则放弃安装

–force 强制安装所指定的RPM软件包
(生产环境不要用,除非一定一定一定要安装)

通常同情下 ivh(安装新的rpm软件,显示安装进度和详情)是一起使用的

如:rpm -ivh /mnt/Packages/lynx-…

卸载RPM软件

-e

-evh

用法 rpm -e lynx

辅助选项:-- nodeps 安装,升级或卸载 直接忽略依赖关系

解决软件包依赖关系

安装:被依赖的软件包需要先安装,可同时指定多个 rpm 包软件进行安装

卸载:依赖其他程序的软件包需要先卸载,可同时指定多个软件名进行卸载

忽略依赖关系:结合 --nodeps选项,但可能会导致软件异常,一般不用

维护RPM数据库

一般在非正常操作的情况下会丢失,所以我们要重建RPM数据库

命令: rpm -rebuilddb 或者 rpm -initdb

哪一条都可以

源代码编译安装

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

TAR包解压,这个在我博客Linux命令详解第三章有,可以去看

在这里插入图片描述

HTTPD 源代码编译安装过程

所有命令都在这里

    1  mount /dev/cdrom /mnt
    2  cd /opt
    3  ll
    4  md5sum httpd-2.4.25.tar.gz
    5  tar zxvf httpd-2.4.25.tar.gz -C /opt
    
    7  cd httpd-2.4.25/
    8  rpm -ivh /mnt/Packages/pcre-devel-8.32-17.el7.x86_64.rpm
    9    rpm -ivh /mnt/Packages/apr-devel-1.4.8-3.el7.x86_64.rpm 
   10    rpm -ivh /mnt/Packages/expat-devel-2.1.0-10.el7_3.x86_64.rpm 
   11    rpm -ivh /mnt/Packages/libdb-devel-5.3.21-20.el7.x86_64.rpm 
   12  rpm -ivh /mnt/Packages/cyrus-sasl-devel-2.1.26-21.el7.x86_64.rpm 
   13    rpm -ivh /mnt/Packages/openldap-devel-2.4.44-5.el7.x86_64.rpm 
   14    rpm -ivh /mnt/Packages/apr-util-devel-1.5.2-6.el7.x86_64.rpm 
   15  ./configure --prefix=/usr/local/apache
   16  make
   17  make install
   18  cd /usr/local/apache/bin/
   19  vi /usr/local/apache/conf/apache.conf
   20  vi /usr/local/apache/conf/httpd.conf
   21  ./apachectl start
   22  yum -y install lynx
   23  lynx 127.0.0.1
   24  cd ~

命令详解

首先我们需要挂在CD 进入虚拟机先把CD设置成已连接
在这里插入图片描述

mount /dev/cdrom /mnt 使用这条命令把CD挂在到mnt下面去

再使用XFTP 5 工具把httpd-2.4.25.tar包拖进去
这个工具可以去下载,tar包可以翻看一下上面有下载地址
在这里插入图片描述
这里可以看到我们上传到opt目录下

cd /opt    切到opt目录下
ll         查看有那些目录或文件

[root@localhost ~]# cd /opt
[root@localhost opt]# ll
total 8380
drwxr-xr-x.  3 zzt  zzt      4096 Jul 23 10:48 extundelete-0.2.4
-rw-r--r--.  1 root root   108472 Jan  3  2013 extundelete-0.2.4.tar.bz2
drwxr-xr-x. 12  501 games    4096 Jul 24 03:03 httpd-2.4.25
-rw-r--r--.  1 root root  8460433 Jul 24 02:58 httpd-2.4.25.tar.gz
drwxr-xr-x.  2 root root        6 Mar 26  2015 rh
[root@localhost opt]# 

可以看到包以及在了

使用MD5工具验证包的差错,通常看前2个后两个
 [root@localhost opt]#  md5sum httpd-2.4.25.tar.gz
24fb8b9e36cf131d78caae864fea0f6a  httpd-2.4.25.tar.gz
[root@localhost opt]# 
  cd httpd-2.4.25/切到这个目录安装这7个依赖包  GCC  c++等

rpm -ivh /mnt/Packages/pcre-devel-8.32-17.el7.x86_64.rpm
rpm -ivh /mnt/Packages/apr-devel-1.4.8-3.el7.x86_64.rpm 
rpm -ivh /mnt/Packages/expat-devel-2.1.0-10.el7_3.x86_64.rpm 
rpm -ivh /mnt/Packages/libdb-devel-5.3.21-20.el7.x86_64.rpm 
rpm -ivh /mnt/Packages/cyrus-sasl-devel-2.1.26-21.el7.x86_64.rpm 
rpm -ivh /mnt/Packages/openldap-devel-2.4.44-5.el7.x86_64.rpm 
rpm -ivh /mnt/Packages/apr-util-devel-1.5.2-6.el7.x86_64.rpm
#####切换到 /opt目录下
[root@localhost opt]# tar xzvf httpd-2.4.25.tar.gz -C /opt                             #####解压压缩包
[root@localhost opt]# cd httpd-2.4.25/                                                          


#####进入httpd-2.4.25目录
[root@localhost httpd-2.4.25]# ./configure --prefix=/usr/local/apache        #####./configure配置 这里添加了安装的路径


[root@localhost httpd-2.4.25]# make
[root@localhost httpd-2.4.25]# make install 


[root@localhost httpd-2.4.25]# cd /usr/local/apache/bin/                           
 #####进入/usr/local/apache/bin/目录


[root@localhost bin]# ll
总用量 1124
-rwxr-xr-x 1 root root  51872 9月  21 22:57 ab
-rwxr-xr-x 1 root root   3434 9月  21 22:55 apachectl
-rwxr-xr-x 1 root root  23514 9月  21 22:55 apxs
-rwxr-xr-x 1 root root   8696 9月  21 22:57 checkgid
-rwxr-xr-x 1 root root   8925 9月  21 22:55 dbmmanage
-rw-r--r-- 1 root root   1071 9月  21 22:55 envvars
-rw-r--r-- 1 root root   1071 9月  21 22:55 envvars-std
-rwxr-xr-x 1 root root  13800 9月  21 22:57 fcgistarter
-rwxr-xr-x 1 root root  40936 9月  21 22:57 htcacheclean
-rwxr-xr-x 1 root root  28056 9月  21 22:57 htdbm
-rwxr-xr-x 1 root root  14072 9月  21 22:57 htdigest
-rwxr-xr-x 1 root root  23416 9月  21 22:57 htpasswd
-rwxr-xr-x 1 root root 851848 9月  21 22:57 httpd
-rwxr-xr-x 1 root root  13760 9月  21 22:57 httxt2dbm
-rwxr-xr-x 1 root root  14392 9月  21 22:57 logresolve
-rwxr-xr-x 1 root root  23048 9月  21 22:57 rotatelogs




[root@localhost bin]# vi /usr/local/apache/conf/httpd.conf    
######在194行  #   号去掉
[root@localhost bin]# ./apachectl start
httpd (pid 19441) already running


[root@localhost bin]# rpm -ivh /mnt/Packages/lynx-2.8.8-0.3.dev15.el7.x86_64.rpm               
####安装客户端浏览器##
警告:/mnt/Packages/lynx-2.8.8-0.3.dev15.el7.x86_64.rpm: 头V3 RSA/SHA256 Signature, 密钥 ID f4a80eb5: NOKEY
准备中...                          ################################# [100%]
正在升级/安装...
   1:lynx-2.8.8-0.3.dev15.el7         ################################# [100%]



[root@localhost bin]# lynx 127.0.0.1                  ####这个是客户端的浏览工具####

                                               It works!

看到It works! 说明已经成功了

猜你喜欢

转载自blog.csdn.net/weixin_48190891/article/details/107559764