目录

1、Linux程序应用基础

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

        1.2、典型应用程序的目录结构文件类型 

         1.3、常用的软件包封装类型

2、RPM包管理工具

          2.2、RPM软件包

          2.3、RPM命令的格式

    RPM命令功能

           2.4、查询RPM软件包信息

                 查询已安装的rpm软件信息

                 查询未安装的 RPM 软件包文件中信息

              2.5、安装、升级、卸载 RPM 软件包

3、解决软件包依赖的方法

4、yum库配置

               4.1、yum常用的操作命令

5、yum源代码编译安装

编译安装过程

      开始编译安装四部操作

1、tar解包

2、./configure配置

3、make编译  生成可执行的二进制文本

 4、安装

5、启动

测试服务是否正常

 总结

引言:了解Linux应用程序的基础,学习如何查询RPM软件包的信息,了解怎么安装、升级、卸载RPM软件包,运用yum源仓库,了解编译安装。

1、Linux程序应用基础

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

角色 系统命令 应用程序
文件位置 一般在/bin(用户)和/sbin(管理员)目录中,或为shell内部指令

通常放在/usr/bin、 /usr/sbin 和/usr/local/bin 、/usr/local/sbin等目录中

主要用途 完成对系统的基本管理工作,例如IP配置工具 完成相对独立的其他辅助任务,例如网页浏览器
适用环境 一般只在字符操作界面中运行  根据实际需要,有些程序可在图形界面中运行
运行格式 一般包括命令字、命令选项和命令参数  通常没有固定的执行格式(开发人员自定义)

1.2、典型应用程序的目录结构文件类型 

文件类型  保存目录
普通执行程序文件 /usr/bin
服务器执行程序文件和管理程序文件 /usr/sbin
应用程序配置文件 /etc
日志文件 /var/log
应用程序参考文档文件 /usr/share/doc
应用程序手册页文件 /usr/local/share/man

1.3、常用的软件包封装类型

文件类型 保存目录
RPM软件包 扩展名为“.rpm”   centos   red-hat
DEB软件包 扩展名为“deb”   debian系统或ubuntu
源代码软件包 一般为“.tar.gz”、“.tar.bz2”等格式的压缩包包含程序的原始代码(开发自定义)
绿色免安装的软件包

软件包的扩展名不一,以TarBall格式的居多
在压缩包内提供已编译好的执行程序文件

解开压缩包后的文件即可直接使用

Linux系统:fedora      centos      redhat      Debian      ubunth

2、RPM包管理工具

由Red Hat 公司提出,被众多Linux发行版采用

建立统一的数据库文件

详细记录软件包安装、卸载等变化信息

自动分析软件包依赖关系

2.2、RPM软件包

RPM 软件素材参考:     http://www.rpm.org

一般命名格式: bash-4.1.2-15.el6_4.x86_64.rpm

bash:软件名称

4.1.2 :版本号

15:发布次数

x86-64 : 硬件平台

rpm : 扩展名

2.3、RPM命令的格式

rpm命令能实现几乎所有对RPM软件包的管理功能

执行"man rpm"命令可以获得关于rpm命令的详细帮助信息

    RPM命令功能

查询、验证RPM软件包的相关信息

安装、升级、卸载RPM软件包

维护RPM数据库信息等综合管理操作

2.4、查询RPM软件包信息

          查询已安装的rpm软件信息

rpm -q 软件名 #查询指定软件是否安装

rpm -q elinks lynx

rpm -qi 软件名 #显示已安装的指定软件的详细信息

rpm -qi samba-client

rpm -ql 软件名 #显示已安装的指定软件的文件列表

rpm -ql wget

rpm -qc 软件名 #列出已安装的指定软件的配置文件

rpm -qc httpd

rpm -qd 软件名 #列出已安装的指定软件的软件包文档所在位置

rpm -qd httpd

rpm -qR 软件名 #列出已安装的指定软件的依赖的软件包及文件

rpm -qR

rpm qF 软件名 #列出已安装的指定软件属于哪个安装包

rpm -qF yum

rpm -qa #显示当前系统中以 rpm 方式安装的所有软件列表

rpm -qa yum

rpm -qa #显示当前系统中以rpm 方式安装的所有软件列表

rpm -qa| grep -i pstfix #查询软件postfix 是否已安装

rpm -qf /usr/bin/passwd #查看指定的文件或目录是哪个软件包所安装的

        查询未安装的 RPM 软件包文件中信息

rpm -qpi RPM包文件名 #查询指定软件包的详细信息

rpm -qpi /mnt/Packages/ethtool-4.8-10.el7.x86_64.rpm

rpm -qpl RPM包文件名 #查询指定软件包的文件列表

rpm -qpl /mnt/Packages/ethtool-4.8-10.el7.x86_64.rpm

rpm -qpc RPM包文件名 #查询指定软件包的配置文件

rpm -qpc /mnt/Packages/elinks-0.12-0.37.pre6.el7.0.1.x86_64.rpm

rpm -qpd RPM包文件名 #查询指定软件包的软件包文档的位置

rpm -qpd /mnt/Packages/vsftpd-3.0.2-25.el7.x86_64.rpm

2.5、安装、升级、卸载 RPM 软件包

格式:

rpm [选项] RPM包文件

rpm -ivh RPM软件包

常用选项:

-i:安装一个新的 RPM 软件包。

-U:升级某个软件包,若未安装过,则进行安装。

-F:升级某个软件包,若未安装过,则放弃安装。

-h:在安装或升级软件包的过程中,以“#”号显示安装进度。

-v:显示软件安装过程中的详细信息。

--force:强制安装某个软件包,比如要安装版本更旧的软件包

-e:卸载指定名称的软件包。

--nodeps:在安装或升级、卸载一个软件包时,不检查与其他软件包的依赖关系。

3、解决软件包依赖的方法

安装有依赖关系的多个软件时

①被依赖的软件包需要先安装

②可同时指定多个.rpm包文件进行安装

卸载有依赖关系的多个软件时

①依赖其他程序的软件包需要先卸载

②可同时指定多个软件名进行卸载

忽略依赖关系

结合”--nodeps“选项,但可能导致软件异常

4、yum库配置

配置本地yum 源仓库

df -h   查看挂载点     前提是把虚拟机光盘选项点击已连接

mount /dev/cdrom /mnt/ #把光盘挂载到/mnt目录下 

挂载设备 目录或文件夹 

注:最好是空的原来的数据将被隐藏,挂载点同一时只能挂载一个设备

mount /dev/cdrom或sr0 /mnt #将光盘挂载到/mnt目录下

cd /etc/yum.repos.d/

mkdir repos.bak

mv *.repo repos.bak

cd /etc/yum.repos.d/

vim local.repo

[local] #仓库类别

name=local #仓库名称

baseurl=file:///mnt #指定URL访问路径为光盘挂载目录

enabled=1 #开启此yum源,此为默认项,可省略

gpgcheck=0 #不验证软件包的签名

yum clean all && yum makecache #删除yum缓存并更新

 4.1、yum常用的操作命令

yum list #查询软件包列表

yum list installed #查询系统中已安装的软件包

yum list available #查询仓库中尚未安装的软件包

yum list updates #查询可以升级版本的软件包

yum info 软件名 #查询软件包的描述信息

yum info httpd

yum search [all] 关键词 #根据某个关键词来查找相关的软件包

yum search all httpd

yum whatprovides 命令 #查询命令属于哪个软件包

yum whatprovides netstat

yum install 包名 -y --downloadonly --downloaddir=/tmp/ #下载RPM包到指定目录

5、yum源代码编译安装

yum安装源代码软件包需要编译安装,需要安装支持c和c++程序语言的编译器,如gcc、gcc-c++、make如果使用rpm方式安装,则需要先安装多个依赖包,这样会很繁琐。这里可以使用 yum方式进行一键安装。

   使用源代码安装软件的优点

获得最新的软件版本,及时修复bug

根据用户需要,灵活定制软件功能  

     应用场合举例

安装较新版本的应用程序时

当前安装的程序无法满足需要时

需要为应用程序添加新的功能时

编译安装过程

例:编译安装apache服务

① 使用yum方式进行安装编译器

yum install -y gcc gcc-c++ make

源代码编译概述 可操作行

gcc --version //查看 gcc 版本信息

make --version //查看 make 版本信息

② 校验 http源码包 可操作性

[root@localhost home]# md5sum httpd-2.4.29.tar.bz2

0c599404ef6b69eee95bcd9fcd094407 httpd-2.4.29.tar.bz2

③ #yum命令安装apache 库文件以及依赖包

yum install gcc* apr-devel* pkgconfig* libapr* pcre pcre-devel libtool libxml2-devel apr-util* -y

rz 上传          sz -b 下载

      开始编译安装四部操作

1、tar解包

tar jzxf httpd-2.4.25.tar.gz -C /opt/

cd /opt/httpd-2.4.25/ #切换到解压好的目录下

2、./configure配置

./configure --prefix=/usr/local/apache     #使用源码目录中的configure脚本,安装路劲设置为 /usr/local/apache

3、make编译  生成可执行的二进制文本

 make -j 2                    #进行make编译

 4、安装

make install                    #进行make安装

5、启动

/usr/local/apache/bin/apachectl start                  #启动apache

测试服务是否正常

测试方法

1、当前服务器输入curl http://IP 查看是否有页面输入    #你当前的服务器IP地址

2、运行 lynx 127.0.0.1查看本机Apache运行状态是否有输入页面 #前提需要安装lynx工具

3、浏览器输入IP地址显示页面内容无报错正常    #前提你的网卡类型跟主机进行通信才能显示

查看是否正常

 总结

学习目的:为了安装相应的软件和管理相应的程序。 通过上述描述,了解了软件包的封装类型,RPM软件包管理工具,源代码编译安装的基本过程和yum常用的操作命令

原文链接:https://blog.csdn.net/weixin_56270746/article/details/123767457

最后修改:2023 年 10 月 26 日
如果觉得我的文章对你有用,请随意赞赏