RHEL8.0快速入门系列笔记--软件包管理(十一)

RHEL8.0快速入门系列笔记–软件包管理(十一)

一、软件包管理

1、Linux系统中软件包管理
(一)软件包类型
[1] 二进制包

  • 什么是二进制包?有什么特点?
    1.二进制包,指的是已经编译好的软件包,只需要直接安装就可以使用
    2.二进制包,不需要编译,直接下载安装
    3.二进制包,需要根据自己的计算机CPU以及操作系统去选择合适的
    4.二级制包,命名方式一般为:xlackmore-5.31-2.e16.x86_64.rpm
    在这里插入图片描述

[2] 源码包

  • 什么是源码包?有什么特点?
    1.源码包,指的是程序员写的原始的程序代码文件,不能够直接在计算机上运行。
    2.源码包,需要进行编译,变成二进制的软件包后,才可安装使用
    3.源码包,一般可以使用在任何计算机上安装使用
    4.源码包,命名方式一般为:(软件包名.tar.gz)(软件包名.tar.bz2)(软件包名.tar.xz)(软件包.zip)

[3] 二进制源码包(了解)

  • 什么是二进制源码包?有什么特点?
    1.二进制源码包,是一个半成品,安装后不能直接使用
    2.二进制源码包,需要使用rpmbuild工具重建成真正的rpm包或者重建成源码包才可以安装使用
    3.二进制源码包,命名方式一般为:(mysql-community-5.7.25-1.el6.src.rpm)

(二)常见的二进制包

系统平台包类型工具在线安装
RedHat/CentOS/Fedora/SUSErpmrpm、rpmbuildyum/dnf
Ubuntu/Debiandebdpkgapt

(三)总结二进制包和源码包区别

软件包类型是否编译安装难易程度可定制性
二进制包易(直接安装)
源码包难(配置 --》编译–》安装)

2、Linux系统中软件包安装方式
(一)二进制包
[1] rpm工具安装

  • 首先:需要下载好rpm包
  • 然后:直接使用rpm包安装

[2] yum/dnf工具安装

  • 首先:需要配置软件仓库(里面存放很多软件包,但不一定在本地)
  • 然后:使用yum工具安装

(二)源码包
[1] 根据需求配置
功能的定制
[2] 编译
使用编译器编译成二进制的软件包
[3] 安装
将软件包安装到指定位置
[4] 源码包安装优点
1.可以在任意平台编译安装,编译出来的软件包非常适应所在机器。
2.可以在编译的时候,通过配置,对某些功能进行定制,开启或关闭相应功能

3、二进制rpm包如何管理(重点)
(一)如何获取rpm包
Linux只是内核,Linux发行版本:GNU/Linux
1.RedHat/CentOS光盘
2.推荐网站

3.相应软件官方网站

(二)如何选择合适的RPM包
1.选择适合当前系统的版本号

  • 找不到合适的,才去尝试别的系统版本号
  • el6兼容el5,el5无法安装el6

2.选择适合当前计算机cpu的架构

  • x86_64包,只能安装在64位的系统
  • i386,i586,i686的软件包可以安装在62位和64位系统上
  • noarch表示这个软件包与硬件架构无关可以通用
  • 32位系统不能安装64位包

建议:建议不要夸大版本去安装软件,尽量使用当前版本自带软件包装
(三)如何管理rpm包
[1] rpm工具安装rpm包
(1)rpm工具安装rpm包

# rpm -ivh 软件包
注意:软件包的名字必须写全,xxx.rpm

(2)rpm工具卸载rpm包

# rpm -e 软件包名
注意:卸载软件只需要软件包名字即可

(3)rpm工具升级rpm包

#rpm -Uvh 软件包
或者
#rpm -Fvh 软件包
选项说明:
-v:输出详细信息
-h:打印散列标记,一般和-v一起使用
-u:升级软件包,如果该软件包没有安装,会自动帮你安装
-F:升级软件包,如果该软件包没安装,不会自动帮你安装

(4)查看rpm包相关信息

查看已经安装的软件的文件列表
rpm -ql 软件包名
查看未安装的rpm包里的文件列表
rpm -qlp 软件包(xxx.rpm)
查看已安装的所有rpm包
rpm -qa 软件包
查看已安装软件的文档列表
rpm -qd 软件包名
查看已经安装软件的配置文件
rpm -qc 软件包名
查看已经安装软件的详细信息
rpm -qi 软件包名
查看指定文件来自哪个rpm包
rpm -qf 文件名

(5)rpm工具其他安装选项

--force    表示强制
rpm -ivh  软件包  --force  		强制安装软件包
rpm -e 软件包名  --force 		强制卸载软件包
--nodeps		忽略依赖关系
rpm -ivh 软件包  --nodeps		忽略依赖关系安装
rpm -e 软件包 --nodeps  		忽略依赖关系卸载

其他了解
rpm --import key_file  		导入公钥用于检查rpm文件签名
rpm -checksig packages.rpm		检查rpm包签名

rpm 工具管理rpm软件包

  • 安装、卸载、升级、查看
  • 缺点:有依赖关系需要我们人肉去解决 A–B和C

[2] yum(dnf)工具管理
yum/dnf优点:能够自动解决依赖关系。
**核心:**需要一个软件仓库,软件仓库指的是来存放软件包和软件包之间的依赖关系地方。
在这里插入图片描述
1.需要有软件仓库

  • 仓库可以在本地---->本地yum源
  • 仓库可以在远程---->网络yum源---->网络必须OK

2.需要告诉yum工具到哪个仓库里找

  • 默认有一个地方,存放了xxx.repo文件---->定义了去哪个仓库里找

[1] 配置本地yum源
1.本地仓库分类

  • BaseOS存储库
    BaseOS存储库指在提供一套核心的底层操作系统的功能,为基础软件安装库
  • AppStream存储库
  • AppStream存储库中包括额外的用户空间应用程序。运行时语言和数据库,以支持不同的工作负载和用例。AppStream中的内容有两种格式----熟悉的RPM格式和称为模块的RPM格式扩展。

2.配置本地仓库
步骤1:挂载镜像到本地系统

[root@RedHat8 ~]# mount -o ro /dev/sr0 /mnt/

列出BaseOS和AppStream的内容如下说明仓库已准备好
[root@RedHat8 ~]# ls /mnt/BaseOS/
packages    repodata
[root@RedHat8 ~]# ls /mnt/AppStream
packages    repodata

步骤2:修改配置文件指定本地存储库

[root@RedHat8 yum.repos.d]# pwd
/etc/yum.repos.d
[root@RedHat8 yum.repos.d]# cat local.repo 
[BaseOS]
name=BaseOS
baseurl=file:///mnt/BaseOS
gpgcheck=0
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-redhat-release
enabled=1

[AppStream]
name=AppStream
baseurl=file:///mnt/AppStream
enabled=1
gpgcheck=0
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-redhat-beta

步骤3:查看是否成功

清空yum源
[root@RedHat8 yum.repos.d]# yum clean all
创建yum缓存
[root@RedHat8 yum.repos.d]# yum makecache
查看仓库
[root@RedHat8 yum.repos.d]# yum repolist 
Updating Subscription Management repositories.
Unable to read consumer identity
This system is not registered to Red Hat Subscription Management. You can use subscription-manager to register.
上次元数据过期检查:0:00:44 前,执行于 2020年02月06日 星期四 15时11分27秒。
仓库标识                                                                    仓库名称                                                                    状态
AppStream                                                                   AppStream                                                                   4,672
BaseOS                                                                      BaseOS                                                                      1,658

[2] yum(dnf)工具使用

  • 安装软件包
# yum -y onstall 软件包1 软件包2
# yum -y groupinstall "包组名"
注意:
1.其中 -y选项表示取消交互
2.包组里面包含很多软件包
  • 卸载软件包
# yum -y remove 软件包名
# yum -y groupremove "包组名"
  • 升级rpm包
# yum updata 软件包名
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值