Linux之CentOS软件包管理
mhr18 2024-12-04 13:51 17 浏览 0 评论
1 软件包管理介绍
软件包管理,顾名思义就是对Linux操作系统的软件及安装包进行管理,比如下载、安装、卸载、删除等等,就好比我们Windows上的控制面板->软件管理。
Linux(CentOS)软件包分类:
与Windows对比:
Linux(CentOS) | Windows |
rpm | exe |
源码包 | 软件源码(.java) |
二进制包 | 可执行文件(.jar) |
软件包管理工具分类:
与Windows对比:
Linux(CentOS) | Windows |
rpm | exe直接安装 |
yum | 先联网下载.exe再安装 |
2 rpm包管理
2.1 简介
名称规则:
主要功能:
安装、卸载、升级和管理软件,组件查询功能,验证功能,软件包GPG和MD5数字签名的导入、验证和发布,软件包依赖处理,选择安装,网络远程安装功能
2.2 常见命令
2.2.1 软件安装
(1)命令
rpm -i [安装包]
(2)演示
[root@iZ1608aqb7ntn9Z tmp]# rpm -i jre-7u51-linux-i586.rpm
Unpacking JAR files...
rt.jar...
......
(3)常用参数
- rpm -ivh [安装包] :显示安装进度
[root@iZ1608aqb7ntn9Z tmp]# rpm -ivh jre-7u51-linux-i586.rpm
Verifying... ################################# [100%]
准备中... ################################# [100%]
......
2.2.2 已安装软件搜索
(1)命令
rpm -q [安装包名称]
(2)演示
[root@iZ1608aqb7ntn9Z tmp]# rpm -q jre
jre-1.7.0_51-fcs.i586
(3)常用参数
- rpm -qa [安装包名称]:显示全部软件安装包
- [root@iZ1608aqb7ntn9Z tmp]# rpm -qa jre
jre-1.7.0_51-fcs.i586 - rpm -qi [安装包名称]:查看指定软件包的名称、版本、许可协议、用途描述等详细信息
[root@iZ1608aqb7ntn9Z tmp]# rpm -qi jre
Name : jre
Version : 1.7.0_51
Release : fcs
Architecture: i586
Install Date: 2021年08月30日 星期一 14时43分36秒
Group : Development/Tools
Size : 82103392
License : http://java.com/license
Signature : (none)
Source RPM : jre-1.7.0_51-fcs.src.rpm
Build Date : 2013年12月19日 星期四 11时28分49秒
Build Host : jdk7-lin2-i586.us.oracle.com
Relocations : /usr/java
Packager : Java Software <jre-comments@java.sun.com>
Vendor : Oracle Corporation
URL : URL_REF
Summary : Java Platform Standard Edition Runtime Environment
Description :
......
- rpm -ql [安装包名称]:显示指定的软件包在当前系统中安装的所有目录、文件列表
[root@iZ1608aqb7ntn9Z tmp]# rpm -ql jre
/etc
/etc/.java
/etc/.java/.systemPrefs
/etc/.java/.systemPrefs/.system.lock
/etc/.java/.systemPrefs/.systemRootModFile
/etc/init.d/jexec
/usr
/usr/java
/usr/java/jre1.7.0_51
/usr/java/jre1.7.0_51/COPYRIGHT
/usr/java/jre1.7.0_51/LICENSE
/usr/java/jre1.7.0_51/README
......
2.2.3 已安装软件卸载
(1)命令
rpm -e [安装包/安装包名称]
(2)演示
[root@iZ1608aqb7ntn9Z tmp]# rpm -q jre
jre-1.7.0_51-fcs.i586
[root@iZ1608aqb7ntn9Z tmp]# rpm -e jre-1.7.0_51-fcs.i586
警告:文件 /usr/java/jre1.7.0_51/lib/install.jar:移除失败:没有那个文件或目录
[root@iZ1608aqb7ntn9Z tmp]# rpm -q jre
未安装软件包 jre
2.2.4 其他命令
rpm --force [安装包]:强制安装某个软件包
rpm --nodeps [安装包]:在安装或升级、卸载一个软件包时,不检查与其他软件包的依赖关系
3 yum包管理
3.1 简介
Yum 是 Red Hat 软件包管理器,它能够查询有关可用软件包的信息,从存储库获取软件包,安装和卸载软件包,以及将整个系统更新到最新的可用版本。Yum在更新,安装或删除软件包时执行自动依赖性解析,因此能够自动确定,获取和安装所有可用的依赖软件包。
3.2 配置yum源(CentOS8,其他版本建议自行百度)
[root@iZ1608aqb7ntn9Z yum.repos.d]# touch CentOS-AppStream.repo CentOS-BaseOS.repo CentOS-Extras.repo
[root@iZ1608aqb7ntn9Z yum.repos.d]# ls
CentOS-AppStream.repo CentOS-centosplus.repo CentOS-Extras.repo CentOS-Sources.repo
CentOS-BaseOS.repo CentOS-CR.repo CentOS-fasttrack.repo CentOS-Vault.repo
CentOS-Base.repo CentOS-Debuginfo.repo CentOS-Media.repo docker-ce.repo
CentOS-Base.repo.bak CentOS-epel.repo CentOS-PowerTools.repo kubernetes.repo
[root@iZ1608aqb7ntn9Z yum.repos.d]# vim CentOS-AppStream.repo
# 写入文件
[aliyun-AppStream]
name=CentOS-$releasever - AppStream
baseurl=https://mirrors.aliyun.com/centos/$releasever/AppStream/$basearch/os/
gpgcheck=1
enabled=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-centosofficial
# 写入完成
[root@iZ1608aqb7ntn9Z yum.repos.d]# vim CentOS-BaseOS.repo
# 写入文件
[aliyun-BaseOS]
name=CentOS-$releasever - Base
baseurl=https://mirrors.aliyun.com/centos/$releasever/BaseOS/$basearch/os/
gpgcheck=1
enabled=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-centosofficial
# 写入完成
[root@iZ1608aqb7ntn9Z yum.repos.d]# vim CentOS-Extras.repo
# 写入文件
[aliyun-extras]
name=CentOS-$releasever - Extras
baseurl=https://mirrors.aliyun.com/centos/$releasever/extras/$basearch/os/
gpgcheck=1
enabled=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-centosofficial
# 写入完成
[root@iZ1608aqb7ntn9Z yum.repos.d]# dnf -y install epel-release
[root@iZ1608aqb7ntn9Z yum.repos.d]# dnf clean all
[root@iZ1608aqb7ntn9Z yum.repos.d]# dnf makecache
[root@iZ1608aqb7ntn9Z yum.repos.d]# dnf repolist
仓库 'aliyun-AppStream' 在配置中缺少名称,将使用 id。
仓库 'aliyun-BaseOS' 在配置中缺少名称,将使用 id。
仓库 'aliyun-extras' 在配置中缺少名称,将使用 id。
Repository centosplus is listed more than once in the configuration
仓库 id 仓库名称
aliyun-AppStream aliyun-AppStream
aliyun-BaseOS aliyun-BaseOS
aliyun-extras aliyun-extras
base CentOS-8 - Base - mirrors.aliyun.com
docker-ce-stable Docker CE Stable - x86_64
epel Extra Packages for Enterprise Linux 8 - x86_64
extras CentOS-8 - Extras - mirrors.aliyun.com
kubernetes Kubernetes
updates CentOS-8 - Updates - mirrors.aliyun.com
[root@iZ1608aqb7ntn9Z yum.repos.d]# rm -rf CentOS-AppStream.repo CentOS-BaseOS.repo CentOS-Extras.repo
3.3 常用命令
3.3.1 安装
(1)命令
yum install [安装包名称]
(2)演示
[root@iZ1608aqb7ntn9Z yum.repos.d]# yum install redis
Repository PowerTools is listed more than once in the configuration
Repository centosplus is listed more than once in the configuration
上次元数据过期检查:0:02:07 前,执行于 2021年08月30日 星期一 16时06分30秒。
依赖关系解决。
==========================================================================================================================
软件包 架构 版本 仓库 大小
==========================================================================================================================
安装:
redis x86_64 5.0.3-2.module_el8.2.0+318+3d7e67ea AppStream 925 k
启用模块流:
redis 5
事务概要
==========================================================================================================================
安装 1 软件包
总下载:925 k
安装大小:3.2 M
确定吗?[y/N]: y
......
(3)常用参数
- yum -y install [安装包名称]:无询问安装
[root@iZ1608aqb7ntn9Z yum.repos.d]# yum -y install gcc
Repository PowerTools is listed more than once in the configuration
Repository centosplus is listed more than once in the configuration
CentOS-8 - Base - mirrors.aliyun.com 14 MB/s | 5.6 MB 00:00
CentOS-8 - Extras - mirrors.aliyun.com 38 kB/s | 10 kB 00:00
CentOS-8 - AppStream - mirrors.aliyun.com 21 MB/s | 8.8 MB 00:00
......
3.3.2 查看已安装的安装包
(1)命令
- yum list : 列出所有可安装的软件包
- yum list updates : 列出所有可更新的软件包
- yum list installed: 列出所有已安装的软件包
(2)演示
命令的结果显示较长,在这里不做演示
3.3.3 查找安装包
(1)命令
yum search [要查找的关键词]
(2)演示
[root@iZ1608aqb7ntn9Z tmp]# yum search vim
Repository PowerTools is listed more than once in the configuration
Repository centosplus is listed more than once in the configuration
上次元数据过期检查:0:05:07 前,执行于 2021年08月30日 星期一 16时06分30秒。
================================================= 名称 和 概况 匹配:vim =================================================
awesome-vim-colorschemes.noarch : Collection of color schemes for Neo/vim, merged for quick use
beakerlib-vim-syntax.noarch : Files for syntax highlighting BeakerLib tests in VIM editor
fluxbox-vim-syntax.noarch : Fluxbox syntax scripts for vim
geany-plugins-vimode.x86_64 : Vim-mode plugin for Geany
neovim.x86_64 : Vim-fork focused on extensibility and agility
python-neovim-doc.noarch : Documentation for python-neovim
python3-neovim.noarch : Python client to Neovim
vim-X11.x86_64 : The VIM version of the vi editor for the X Window System - GVim
vim-airline.noarch : Lean & mean status/tabline for vim that's light as air
vim-ansible.noarch : Vim plugin for syntax highlighting ansible's common filetypes
......
3.3.4 卸载
(1)命令
yum remove [安装包或关键词]
(2)演示
[root@iZ1608aqb7ntn9Z tmp]# yum remove vim
Repository PowerTools is listed more than once in the configuration
Repository centosplus is listed more than once in the configuration
依赖关系解决。
......
移除 4 软件包
......
4 源码包和二进制包
4.1 介绍
源码包就是软件的开发源码,比如用C语言开发的软件源码一般都会是以.c结尾的文件集,用Java开发的软件源码都是以.java为后缀的文件,因此源码包并不能直接安装运行,需要编译之后才能进行安装和运行,Linux中常见的软件源码安装包都是以.tar.gz结尾的压缩文件,将其解压后就可以看见软件的开发源码。
例如Maven,上边的红框框里就是二进制包,下边的红框框就是源码包,压缩格式分别是.zip和.tar.gz
4.2 常见的解压命令
(1)zip压缩包
nuzip [压缩包名称] :解压zip的压缩包
(2)tar.gz压缩包
tar -zxvf [压缩包名称] :解压tar.gz压缩包
tar -xvf [压缩包名称] :解压tar压缩包
5 总结
在CentOS中有rpm和yum两种软件包管理,总结优缺点,rpm包安装简便不用联网,但是如果出现依赖关系无法自动解决,需要手动寻找依赖,yum包安装需要联网,可以自动解决依赖。
相关推荐
- Dubai's AI Boom Lures Global Tech as Emirate Reinvents Itself as Middle East's Silicon Gateway
-
AI-generatedimageAsianFin--Dubaiisrapidlytransformingitselffromadesertoilhubintoaglob...
- OpenAI Releases o3-pro, Cuts o3 Prices by 80% as Deal with Google Cloud Reported to Make for Compute Needs
-
TMTPOST--OpenAIisescalatingthepricewarinlargelanguagemodel(LLM)whileseekingpartnershi...
- 黄仁勋说AI Agent才是未来!但究竟有些啥影响?
-
,抓住风口(iOS用户请用电脑端打开小程序)本期要点:详解2025年大热点你好,我是王煜全,这里是王煜全要闻评论。最近,有个词被各个科技大佬反复提及——AIAgent,智能体。黄仁勋在CES展的发布...
- 商城微服务项目组件搭建(五)——Kafka、Tomcat等安装部署
-
1、本文属于mini商城系列文档的第0章,由于篇幅原因,这篇文章拆成了6部分,本文属于第5部分2、mini商城项目详细文档及代码见CSDN:https://blog.csdn.net/Eclipse_...
- Python+Appium环境搭建与自动化教程
-
以下是保姆级教程,手把手教你搭建Python+Appium环境并实现简单的APP自动化测试:一、环境搭建(Windows系统)1.安装Python访问Python官网下载最新版(建议...
- 零配置入门:用VSCode写Java代码的正确姿
-
一、环境准备:安装JDK,让电脑“听懂”Java目标:安装Java开发工具包(JDK),配置环境变量下载JDKJava程序需要JDK(JavaDevelopmentKit)才能运行和编译。以下是两...
- Mycat的搭建以及配置与启动(mycat2)
-
1、首先开启服务器相关端口firewall-cmd--permanent--add-port=9066/tcpfirewall-cmd--permanent--add-port=80...
- kubernetes 部署mysql应用(k8s mysql部署)
-
这边仅用于测试环境,一般生产环境mysql不建议使用容器部署。这里假设安装mysql版本为mysql8.0.33一、创建MySQL配置(ConfigMap)#mysql-config.yaml...
- Spring Data Jpa 介绍和详细入门案例搭建
-
1.SpringDataJPA的概念在介绍SpringDataJPA的时候,我们首先认识下Hibernate。Hibernate是数据访问解决技术的绝对霸主,使用O/R映射(Object-Re...
- 量子点格棋上线!“天衍”邀您执子入局
-
你是否能在策略上战胜量子智能?这不仅是一场博弈更是一次量子智力的较量——量子点格棋正式上线!试试你能否赢下这场量子智局!游戏玩法详解一笔一画间的策略博弈游戏目标:封闭格子、争夺领地点格棋的基本目标是利...
- 美国将与阿联酋合作建立海外最大的人工智能数据中心
-
当地时间5月15日,美国白宫宣布与阿联酋合作建立人工智能数据中心园区,据称这是美国以外最大的人工智能园区。阿布扎比政府支持的阿联酋公司G42及多家美国公司将在阿布扎比合作建造容量为5GW的数据中心,占...
- 盘后股价大涨近8%!甲骨文的业绩及指引超预期?
-
近期,美股的AI概念股迎来了一波上升行情,微软(MSFT.US)频创新高,英伟达(NVDA.US)、台积电(TSM.US)、博通(AVGO.US)、甲骨文(ORCL.US)等多股亦出现显著上涨。而从基...
- 甲骨文预计新财年云基础设施营收将涨超70%,盘后一度涨8% | 财报见闻
-
甲骨文(Oracle)周三盘后公布财报显示,该公司第四财季业绩超预期,虽然云基建略微逊于预期,但管理层预计2026财年云基础设施营收预计将增长超过70%,同时资本支出继上年猛增三倍后,新财年将继续增至...
- Springboot数据访问(整合MongoDB)
-
SpringBoot整合MongoDB基本概念MongoDB与我们之前熟知的关系型数据库(MySQL、Oracle)不同,MongoDB是一个文档数据库,它具有所需的可伸缩性和灵活性,以及所需的查询和...
- Linux环境下,Jmeter压力测试的搭建及报错解决方法
-
概述 Jmeter最早是为了测试Tomcat的前身JServ的执行效率而诞生的。到目前为止,它的最新版本是5.3,其测试能力也不再仅仅只局限于对于Web服务器的测试,而是涵盖了数据库、JM...
你 发表评论:
欢迎- 一周热门
- 最近发表
-
- Dubai's AI Boom Lures Global Tech as Emirate Reinvents Itself as Middle East's Silicon Gateway
- OpenAI Releases o3-pro, Cuts o3 Prices by 80% as Deal with Google Cloud Reported to Make for Compute Needs
- 黄仁勋说AI Agent才是未来!但究竟有些啥影响?
- 商城微服务项目组件搭建(五)——Kafka、Tomcat等安装部署
- Python+Appium环境搭建与自动化教程
- 零配置入门:用VSCode写Java代码的正确姿
- Mycat的搭建以及配置与启动(mycat2)
- kubernetes 部署mysql应用(k8s mysql部署)
- Spring Data Jpa 介绍和详细入门案例搭建
- 量子点格棋上线!“天衍”邀您执子入局
- 标签列表
-
- oracle位图索引 (74)
- oracle批量插入数据 (65)
- oracle事务隔离级别 (59)
- oracle 空为0 (51)
- oracle主从同步 (56)
- oracle 乐观锁 (53)
- redis 命令 (78)
- php redis (88)
- redis 存储 (66)
- redis 锁 (69)
- 启动 redis (66)
- redis 时间 (56)
- redis 删除 (67)
- redis内存 (57)
- redis并发 (52)
- redis 主从 (69)
- redis 订阅 (51)
- redis 登录 (54)
- redis 面试 (58)
- 阿里 redis (59)
- redis 搭建 (53)
- redis的缓存 (55)
- lua redis (58)
- redis 连接池 (61)
- redis 限流 (51)