0

0

linux有几种包管理

青灯夜游

青灯夜游

发布时间:2022-07-01 16:50:05

|

6115人浏览过

|

来源于php中文网

原创

8种常用包管理有:1、DPKG,Debian系的包管理系统;2、apt,Debian、Ubuntu上的包管理系统;3、apt-cache,一个apt软件包管理工具;4、RPM,红帽系的包管理系统;5、yum,一个解决包依赖关系而存在的软件包管理器;6、DNF,新一代的rpm软件包管理器;7、pkg,FreeBSD默认使用的包管理器;8、Pacman,Arch系的包管理系统。

linux有几种包管理

本教程操作环境:linux7.3系统、Dell G3电脑。

大多数现代的类 Unix 操作系统都提供了一种中心化的机制用来搜索和安装软件。软件通常都是存放在存储库中,并通过包的形式进行分发。处理包的工作被称为包管理。包提供了操作系统的基本组件,以及共享的库、应用程序、服务和文档。

包管理系统除了安装软件外,它还提供了工具来更新已经安装的包。包存储库有助于确保你的系统中使用的代码是经过审查的,并且软件的安装版本已经得到了开发人员和包维护人员的认可。

大多数包系统都是围绕包文件的集合构建的。包文件通常是一个存档文件,它包含已编译的二进制文件和软件的其他资源,以及安装脚本。包文件同时也包含有价值的元数据,包括它们的依赖项,以及安装和运行它们所需的其他包的列表。

虽然这些包管理系统的功能和优点大致相同,但打包格式和工具却因平台而异:

操作系统 格式 工具
Debian .deb aptapt-cache,, dpkg
Ubuntu .deb aptapt-cache,, dpkg
CentOS .rpm yum
Fedora .rpm dnf
FreeBSD Ports, .txz pkg

1、DPKG

dpkg是Debian系的包管理系统,包后缀名是.deb。

dpkg 是 linux 系统下用来安装、创建和管理软件包的工具。 其安装的软件包一般是下载到本地的软件包,拓展名是deb。

格式 : dpkg 参数 package.deb (初学者容易忘记打空格,在命令和参数以及参数和软件包中间要打空格,否则linux会无法识别)

dpkg -i

dpkg -i 是 linux 系统下用来安装软件包的命令。

格式 : /home/用户名/桌面(desktop)/ # dpkg -i package.deb (此时,安装包被放在桌面上,也可以放到其他文件夹中,在所在文件夹中打开终端或者# dpkg -i /绝对路径/package.deb )

dpkg -r

dpkg -r 是 linux 系统下用来卸载软件包的命令。 我推荐和dpkg -l 命令结合使用,因为卸载软件的名字不一定和安装时安装包的名字一样。

格式 : # dpkg -r package (卸载时可以在任意路径)

使用 dpkg -l 命令找到需要卸载的软件,将软件名复制(不要将软件版本一起复制),复制的软件名替换格式里的package

dpkg -P

dpkg -P 是 linux 系统下用来卸载软件包的同时删除其配置文件的命令。 如果想要完全将软件包卸载干净最好使用这个命令。我就碰到过没卸载干净导致安装后一版本的软件时无法安装成功的问题。

格式 : # dpkg -P package (使用方式可以参考dpkg -r)

dpkg -l

dpkg -l 是 linux 系统下用查看列出当前已安装的软件包的命令。

格式 : # dpkg -l 就可以看到所有已安装的软件包

如果要看某个特定的软件,比如我在公司里安装的软件带有gongsi的关键字

可以使用 # dpkg -l grep | gongsi 就可以看到带gongsi关键词的安装包,其中 | 是竖杠不是字母l。

2、apt

apt是Advanced Package Tool的简写,是工作于Debian, Ubuntu等相关linux发行版上的软件包管理系统。apt在类Unix操作系统上提供如自动检索、配置和安装软件包等功能来简化软件的管理。

apt, apt-get, apt-cache这几个命令使用library来处理软件包。apt实际上可以看作dpkg的前端,并且比以往的dselect对用户更加友好。

apt整合了apt-get和apt-cache——这两个命令功能很多但一般往往用不到,因此apt保留了常用和重要的功能。

常用命令:

# 从软件源同步最新的软件信息并缓存到本地 
apt update 

# 安装指定的包,并同时安装其依赖的其他包。 
apt install [package] 

# 更新软件版本 
apt upgrade 

# 查找软件,没有添加参数就是展示所有的软件包,加关键字就是搜索指定的包 
apt list zlib* 

# 列出已经安装的软件版本 
apt list --installed 

# 关键字搜索软件的名称和描述 
apt search zlib* 

# 卸载包,但是配置文件还是会保存着
apt remove [package] 

# 卸载包,并删除配置文件 
apt purge [package] 

# 卸载因安装软件自动安装的依赖 
apt autoremove 

# 删除所有已下载的软件包 
apt clean 

# 类似clean,但删除的是过期的包(即已不能下载或者是无用的包) 
apt autoclean

3、apt-cache

apt-cache是linux下的一个apt软件包管理工具,它可查询apt的二进制软件包缓存文件。APT包管理的大多数信息查询功能都可以由apt-cache命令实现,通过apt-cache命令配合不同的子命令和参数的使用,可以实现查找,显示软件包信息及包依赖关系等功能.

常用命令:

apt-cache show package_name
#显示指定软件包的信息,包括版本号,安装状态和包依赖关系等.

apt-cache search package_name
#搜索软件包,可以按关键字查找软件包,通常用于查询的关键字会使用软件包的名字或软件包的一部分.

apt-cache showpkg package_name
#显示软件包的依赖关系信息.

 apt-cache stats
#显示当前系统所使用的数据源的统计信息,用户可以使用该命令查看数据源的相关统计信息.

apt-cache policy package_name
#显示软件包的安装状态和版本信息.

apt-cache depends package_name
#显示指定软件包所依赖的软件包。当用户需要了解某个软件包依赖于其他哪些包时,可以使用apt-cache depends来查询包依赖关系.

apt-cache rdepends package_name
#查询指定软件包的反向依赖关系,即那些其他的软件包需要依赖你所指定的软件包做为安装和运行的必须条件.

apt-cache dump
#显示缓存中的每个软件包的简要描述信息.


apt-cache unmet
#显示不符合一致性的依赖关系.

4、RPM

RPM是红帽系的包管理系统,包后缀名是.rpm。

RPM是Red-Hat Package Manager(RPM软件包管理器)的缩写,这一文件格式名称虽然打上了RedHat的标志,但是其原始设计理念是开放式的,现在包括OpenLinux、S.u.S.E.以及Turbo Linux等Linux的分发版本都有采用,可以算是公认的行业标准了。一种用于互联网下载包的打包及安装工具,它包含在某些Linux分发版中。它生成具有.RPM扩展名的文件。与Dpkg类似。

简而言之,就是linux中的软件包。

rpm包构成

1.png

  • 【1】软件名

  • 【2】版本

  • 【3】适用系统

  • 【4】系统架构

  • 【5】适用rpm体系软件

rpm相关命令及参数

magento(麦进斗)
magento(麦进斗)

Magento是一套专业开源的PHP电子商务系统。Magento设计得非常灵活,具有模块化架构体系和丰富的功能。易于与第三方应用系统无缝集成。Magento开源网店系统的特点主要分以下几大类,网站管理促销和工具国际化支持SEO搜索引擎优化结账方式运输快递支付方式客户服务用户帐户目录管理目录浏览产品展示分析和报表Magento 1.6 主要包含以下新特性:•持久性购物 - 为不同的

下载

可以使用rpm命令对rpm包软件进行相关处理

2.png

5、yum

yum,全称“Yellow dog Updater, Modified”,是一个专门为了解决包的依赖关系而存在的软件包管理器。就好像 Windows 系统上可以通过 360 软件管家实现软件的一键安装、升级和卸载,Linux 系统也提供有这样的工具,就是 yum。

可以这么说,yum 是改进型的 RPM 软件管理器,它很好的解决了 RPM 所面临的软件包依赖问题。yum 在服务器端存有所有的 RPM 包,并将各个包之间的依赖关系记录在文件中,当管理员使用 yum 安装 RPM 包时,yum 会先从服务器端下载包的依赖性文件,通过分析此文件从服务器端一次性下载所有相关的 RPM 包并进行安装。

yum 软件可以用 rpm 命令安装,安装之前可以通过如下命令查看 yum 是否已安装:

# rpm -qa | grep yum
yum-metadata-parser-1.1.2-16.el6.i686
yum-3.2.29-30.el6.centos.noarch
yum-utils-1.1.30-14.el6.noarch
yum-plugin-fastestmirror-1.1.30-14.el6.noarch
yum-plugin-security-1.1.30-14.el6.noarch

可以看到,系统上已经安装了 yum。

yum基于 RPM 包管理,能够从指定的服务器自动下载 RPM 包并且安装,可以自动处理依赖性关系,并且一次安装所有依赖的软件包,无须繁琐地一次次下载、安装。

yum 提供了查找、安装、删除某一个、一组甚至全部软件包的命令,而且命令简洁而又好记。

yum 语法

yum [options] [command] [package ...]
  • options:可选,选项包括-h(帮助),-y(当安装过程提示选择全部为 "yes"),-q(不显示安装的过程)等等。

  • command:要进行的操作。

  • package:安装的包名。

yum常用命令

1. 列出所有可更新的软件清单命令:yum check-update

2. 更新所有软件命令:yum update

3. 仅安装指定的软件命令:yum install

4. 仅更新指定的软件命令:yum update

5. 列出所有可安裝的软件清单命令:yum list

6. 删除软件包命令:yum remove

7. 查找软件包命令:yum search

8. 清除缓存命令:

  • yum clean packages: 清除缓存目录下的软件包

  • yum clean headers: 清除缓存目录下的 headers

  • yum clean oldheaders: 清除缓存目录下旧的 headers

  • yum clean, yum clean all (= yum clean packages; yum clean oldheaders) :清除缓存目录下的软件包及旧的 headers

6、DNF

DNF 是新一代的rpm软件包管理器。他首先出现在 Fedora 18 这个发行版中。而最近,它取代了yum,正式成为 Fedora 22 的包管理器。

DNF包管理器克服了YUM包管理器的一些瓶颈,提升了包括用户体验,内存占用,依赖分析,运行速度等多方面的内容。DNF使用 RPM, libsolv 和 hawkey 库进行包管理操作。尽管它没有预装在 CentOS 和 RHEL 7 中,但你可以在使用 YUM 的同时使用 DNF 。

安装 DNF 包管理器

DNF 并未默认安装在 RHEL 或 CentOS 7系统中,但是 Fedora 22 已经默认使用 DNF .

1、为了安装 DNF ,您必须先安装并启用 epel-release 依赖。

在系统中执行以下命令:

# yum install epel-release

或者

# yum install epel-release -y

其实这里并没有强制使用”-y”的理由,相反的,在不使用”-y”的情况下,用户可以在安装过程中查看到底有哪些东西被安装进了系统。但对于没有这个需求的用户,您可以在 YUM 中使用”-y”参数来自动安装所有东西。

2、使用 epel-release 依赖中的 YUM 命令来安装 DNF 包。在系统中执行以下命令:

# yum install dnf

然后, DNF 包管理器就被成功的安装到你的系统中了。接下来,是时候开始我们的教程了!在这个教程中,您将会学到27个用于 DNF 包管理器的命令。使用这些命令,你可以方便有效的管理您系统中的 RPM 软件包。现在,让我们开始学习 DNF 包管理器的27条常用命令吧!

7、pkg

FreeBSD默认使用的包管理器。

8、Pacman

Pacman是Arch系的包管理系统,新版本包后缀名是.pkg.tar.zst,之前的版本是.pkg.tar.xz。

相关推荐:《Linux视频教程

相关专题

更多
windows查看端口占用情况
windows查看端口占用情况

Windows端口可以认为是计算机与外界通讯交流的出入口。逻辑意义上的端口一般是指TCP/IP协议中的端口,端口号的范围从0到65535,比如用于浏览网页服务的80端口,用于FTP服务的21端口等等。怎么查看windows端口占用情况呢?php中文网给大家带来了相关的教程以及文章,欢迎大家前来阅读学习。

515

2023.07.26

查看端口占用情况windows
查看端口占用情况windows

端口占用是指与端口关联的软件占用端口而使得其他应用程序无法使用这些端口,端口占用问题是计算机系统编程领域的一个常见问题,端口占用的根本原因可能是操作系统的一些错误,服务器也可能会出现端口占用问题。php中文网给大家带来了相关的教程以及文章,欢迎大家前来学习阅读。

1050

2023.07.27

windows照片无法显示
windows照片无法显示

当我们尝试打开一张图片时,可能会出现一个错误提示,提示说"Windows照片查看器无法显示此图片,因为计算机上的可用内存不足",本专题为大家提供windows照片无法显示相关的文章,帮助大家解决该问题。

744

2023.08.01

windows查看端口被占用的情况
windows查看端口被占用的情况

windows查看端口被占用的情况的方法:1、使用Windows自带的资源监视器;2、使用命令提示符查看端口信息;3、使用任务管理器查看占用端口的进程。本专题为大家提供windows查看端口被占用的情况的相关的文章、下载、课程内容,供大家免费下载体验。

417

2023.08.02

windows无法访问共享电脑
windows无法访问共享电脑

在现代社会中,共享电脑是办公室和家庭的重要组成部分。然而,有时我们可能会遇到Windows无法访问共享电脑的问题。这个问题可能会导致数据无法共享,影响工作和生活的正常进行。php中文网给大家带来了相关的教程以及文章,欢迎大家前来阅读学习。

2343

2023.08.08

windows自动更新
windows自动更新

Windows操作系统的自动更新功能可以确保系统及时获取最新的补丁和安全更新,以提高系统的稳定性和安全性。然而,有时候我们可能希望暂时或永久地关闭Windows的自动更新功能。php中文网给大家带来了相关的教程以及文章,欢迎大家前来学习阅读。

769

2023.08.10

windows boot manager
windows boot manager

windows boot manager无法开机的解决方法:1、系统文件损坏,使用Windows安装光盘或USB启动盘进入恢复环境,选择修复计算机,然后选择自动修复;2、引导顺序错误,进入恢复环境,选择命令提示符,输入命令"bootrec /fixboot"和"bootrec /fixmbr",然后重新启动计算机;3、硬件问题,使用硬盘检测工具进行扫描和修复;4、重装操作系统。本专题还提供其他解决

1480

2023.08.28

windows锁屏快捷键
windows锁屏快捷键

windows锁屏快捷键是Windows键+L、Ctrl+Alt+Del、Windows键+D、Windows键+P和Windows键+R。本专题为大家提供windows相关的文章、下载、课程内容,供大家免费下载体验。

1596

2023.08.30

php源码安装教程大全
php源码安装教程大全

本专题整合了php源码安装教程,阅读专题下面的文章了解更多详细内容。

7

2025.12.31

热门下载

更多
网站特效
/
网站源码
/
网站素材
/
前端模板

精品课程

更多
相关推荐
/
热门推荐
/
最新课程
PostgreSQL 教程
PostgreSQL 教程

共48课时 | 6.3万人学习

Git 教程
Git 教程

共21课时 | 2.3万人学习

关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送

Copyright 2014-2026 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号