Linux教程

兄弟连linux系列(四)软件安装

本文主要是介绍兄弟连linux系列(四)软件安装,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!

第6章:软件安装

查询系统内部安装的软件包

  • rpm -qa
  • rpm -qa | grep 包名
点击查看代码
(base) [root@localhost ~]# rpm -qa |grep httpd
centos-logos-httpd-85.8-2.el8.noarch
httpd-manual-2.4.37-43.module_el8.5.0+1022+b541f3b1.noarch
httpd-tools-2.4.37-43.module_el8.5.0+1022+b541f3b1.x86_64
httpd-filesystem-2.4.37-43.module_el8.5.0+1022+b541f3b1.noarch
httpd-2.4.37-43.module_el8.5.0+1022+b541f3b1.x86_64

Linux源码包安装软件
本节仍然以安装 apache 为例,安装过程分为如下几步:
下载 apache 源码包。该软件的源码包可通过官方网站 http://httpd.apache.org/download.cgi#apache24 下载,得到的源码包格式为压缩包( ".tar.gz" 或 ".tar.bz2" )。

将各种文件分门别类保存在对应的目录中,应该成为合格 Linux 管理员约定俗成的习惯。Linux 系统中用于保存源代码的位置主要有 2 个,分别是 "/usr/src" 和 "/usr/local/src",其中 "/usr/src" 用来保存内核源代码,"/usr/local/src" 用来保存用户下载的源代码。
将源码包进行解压缩,使用命令如下:
[root@localhost ~]#tar -zxvf httpd-2.2.9.tar.gz|more

进入解压目录,执行如下命令:
[root@localhost ~]# ls
anaconda-ks.cfg httpd-2.2.9 httpd-2.2.9.tar.gz install.log install.log.syslog
[root@localhost ~]# cd httpd-2.2.9

./configure 软件配置与检查。这一步主要完成以下任务:

  • 检测系统环境是否符合安装要求。
  • 定义需要的功能选项。通过 "./configure--prefix=安装路径" 可以指定安装路径。注意,configure 不是系统命令,而是源码包软件自带的一个脚本程序,所以必须采用 "./configure" 方式执行("./" 代表在当前目录下)。

把系统环境的检测结果和定义好的功能选项写入 Makefile 文件,因为后续的编译和安装需要依赖这个文件的内容。
此步具体执行代码如下:
[root@localhost httpd-2.2.9]# ./configure --prefix=/usr/local/apache2
checking for chosen layout...Apache
checking for working mkdir -p…yes
checking build system type...i686-pc-linux-gnu
checking host system type...i686-pc-linux-gnu
checking target system typa...i686-pc-linux-gnu
…省略部分输出…

--prefix 选项的含义为指定安装目录

此命令没有加载其他功能,只是指定安装目录。
需要说明的是,"/usr/local/apache2" 目录不需要手工建立,安装完成后会自动建立(这个目录是否生成也是检测软件是否正确安装的重要标志)。

make 编译。
make 会调用 gcc 编译器,并读取 Makefile 文件中的信息进行系统软件编译。
编译的目的就是把源码程序转变为能被 Linux 识别的可执行文件,这些可执行文件保存在当前目录下。
执行的编译命令如下:
[root@localhost httpd-2.2.9]# make
编程过程较为耗时,需要有足够的耐心。

正式开始安装软件,这里通常会写清程序的安装位置
如果没有,则建议读者把安装的执行过程保存下来,以备将来删除软件时使用。安装指令如下:
[root@localhost httpd-2.2.9]# make install

整个过程不报错,即为安装成功。

这篇关于兄弟连linux系列(四)软件安装的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!