搜索
首页运维linux运维linux有几种包管理

linux有几种包管理

Jul 01, 2022 pm 04:50 PM
linux

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相关命令及参数

可以使用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 8c407fc3ca5bd2960ccd7d76fd924a9e

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

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

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

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

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视频教程

以上是linux有几种包管理的详细内容。更多信息请关注PHP中文网其他相关文章!

声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
Linux的基本要素:为初学者解释Linux的基本要素:为初学者解释Apr 17, 2025 am 12:08 AM

Linux的核心组件包括内核、文件系统、Shell和常用工具。1.内核管理硬件资源并提供基本服务。2.文件系统组织和存储数据。3.Shell是用户与系统交互的接口。4.常用工具帮助完成日常任务。

Linux:看看其基本结构Linux:看看其基本结构Apr 16, 2025 am 12:01 AM

Linux的基本结构包括内核、文件系统和Shell。1)内核管理硬件资源,使用uname-r查看版本。2)EXT4文件系统支持大文件和日志,使用mkfs.ext4创建。3)Shell如Bash提供命令行交互,使用ls-l列出文件。

Linux操作:系统管理和维护Linux操作:系统管理和维护Apr 15, 2025 am 12:10 AM

Linux系统管理和维护的关键步骤包括:1)掌握基础知识,如文件系统结构和用户管理;2)进行系统监控与资源管理,使用top、htop等工具;3)利用系统日志进行故障排查,借助journalctl等工具;4)编写自动化脚本和任务调度,使用cron工具;5)实施安全管理与防护,通过iptables配置防火墙;6)进行性能优化与最佳实践,调整内核参数和养成良好习惯。

了解Linux的维护模式:必需品了解Linux的维护模式:必需品Apr 14, 2025 am 12:04 AM

Linux维护模式通过在启动时添加init=/bin/bash或single参数进入。1.进入维护模式:编辑GRUB菜单,添加启动参数。2.重新挂载文件系统为读写模式:mount-oremount,rw/。3.修复文件系统:使用fsck命令,如fsck/dev/sda1。4.备份数据并谨慎操作,避免数据丢失。

Debian如何提升Hadoop数据处理速度Debian如何提升Hadoop数据处理速度Apr 13, 2025 am 11:54 AM

本文探讨如何在Debian系统上提升Hadoop数据处理效率。优化策略涵盖硬件升级、操作系统参数调整、Hadoop配置修改以及高效算法和工具的运用。一、硬件资源强化确保所有节点硬件配置一致,尤其关注CPU、内存和网络设备性能。选择高性能硬件组件对于提升整体处理速度至关重要。二、操作系统调优文件描述符和网络连接数:修改/etc/security/limits.conf文件,增加系统允许同时打开的文件描述符和网络连接数上限。JVM参数调整:在hadoop-env.sh文件中调整

Debian syslog如何学习Debian syslog如何学习Apr 13, 2025 am 11:51 AM

本指南将指导您学习如何在Debian系统中使用Syslog。Syslog是Linux系统中用于记录系统和应用程序日志消息的关键服务,它帮助管理员监控和分析系统活动,从而快速识别并解决问题。一、Syslog基础知识Syslog的核心功能包括:集中收集和管理日志消息;支持多种日志输出格式和目标位置(例如文件或网络);提供实时日志查看和过滤功能。二、安装和配置Syslog(使用Rsyslog)Debian系统默认使用Rsyslog。您可以通过以下命令安装:sudoaptupdatesud

Debian中Hadoop版本怎么选Debian中Hadoop版本怎么选Apr 13, 2025 am 11:48 AM

选择适合Debian系统的Hadoop版本,需要综合考虑以下几个关键因素:一、稳定性与长期支持:对于追求稳定性和安全性的用户,建议选择Debian稳定版,例如Debian11(Bullseye)。该版本经过充分测试,拥有长达五年的支持周期,能够确保系统稳定运行。二、软件包更新速度:如果您需要使用最新的Hadoop功能和特性,则可以考虑Debian的不稳定版(Sid)。但需注意,不稳定版可能存在兼容性问题和稳定性风险。三、社区支持与资源:Debian拥有庞大的社区支持,可以提供丰富的文档和

Debian上TigerVNC共享文件方法Debian上TigerVNC共享文件方法Apr 13, 2025 am 11:45 AM

本文介绍如何在Debian系统上使用TigerVNC共享文件。你需要先安装TigerVNC服务器,然后进行配置。一、安装TigerVNC服务器打开终端。更新软件包列表:sudoaptupdate安装TigerVNC服务器:sudoaptinstalltigervnc-standalone-servertigervnc-common二、配置TigerVNC服务器设置VNC服务器密码:vncpasswd启动VNC服务器:vncserver:1-localhostno

See all articles

热AI工具

Undresser.AI Undress

Undresser.AI Undress

人工智能驱动的应用程序,用于创建逼真的裸体照片

AI Clothes Remover

AI Clothes Remover

用于从照片中去除衣服的在线人工智能工具。

Undress AI Tool

Undress AI Tool

免费脱衣服图片

Clothoff.io

Clothoff.io

AI脱衣机

AI Hentai Generator

AI Hentai Generator

免费生成ai无尽的。

热门文章

R.E.P.O.能量晶体解释及其做什么(黄色晶体)
1 个月前By尊渡假赌尊渡假赌尊渡假赌
R.E.P.O.最佳图形设置
1 个月前By尊渡假赌尊渡假赌尊渡假赌
R.E.P.O.如果您听不到任何人,如何修复音频
1 个月前By尊渡假赌尊渡假赌尊渡假赌
R.E.P.O.聊天命令以及如何使用它们
1 个月前By尊渡假赌尊渡假赌尊渡假赌

热工具

SecLists

SecLists

SecLists是最终安全测试人员的伙伴。它是一个包含各种类型列表的集合,这些列表在安全评估过程中经常使用,都在一个地方。SecLists通过方便地提供安全测试人员可能需要的所有列表,帮助提高安全测试的效率和生产力。列表类型包括用户名、密码、URL、模糊测试有效载荷、敏感数据模式、Web shell等等。测试人员只需将此存储库拉到新的测试机上,他就可以访问到所需的每种类型的列表。

安全考试浏览器

安全考试浏览器

Safe Exam Browser是一个安全的浏览器环境,用于安全地进行在线考试。该软件将任何计算机变成一个安全的工作站。它控制对任何实用工具的访问,并防止学生使用未经授权的资源。

Atom编辑器mac版下载

Atom编辑器mac版下载

最流行的的开源编辑器

MinGW - 适用于 Windows 的极简 GNU

MinGW - 适用于 Windows 的极简 GNU

这个项目正在迁移到osdn.net/projects/mingw的过程中,你可以继续在那里关注我们。MinGW:GNU编译器集合(GCC)的本地Windows移植版本,可自由分发的导入库和用于构建本地Windows应用程序的头文件;包括对MSVC运行时的扩展,以支持C99功能。MinGW的所有软件都可以在64位Windows平台上运行。

Dreamweaver CS6

Dreamweaver CS6

视觉化网页开发工具