网易首页 > 网易号 > 正文 申请入驻

Linux 包管理器比较:dnf 和 apt | Linux 中国

0
分享至

导读:包管理器提供大致相同的功能:安装、管理和移除应用,但是它们还是有一些不一样的地方。           

本文字数:4559,阅读时长大约: 6分钟

https://linux.cn/article-13620-1.html
作者:Seth Kenlon
译者:perfiffer

有多种方式。例如,有新的 Flatpak 和容器方式,也有 DEB 和 RPM 这样一直以来经过考验的方式。

并没有一种通用的可以用于所有的操作系统的应用安装程序。如今,因为有无数的开发者发布软件,这导致了大部分的操作系统使用了应用商店(包括第一方和第三方)、拖放式安装,还有安装向导。不同的开发者对于他们发布的代码有不同的需求,这直接导致了他们所选择的安装方式的不同。

Linux 开创了一种通过命令行安装、管理、移除应用的包管理器的概念。 和 就是两种较为常见的包管理器。 命令是用来管理 DEB 格式的包, 命令是用来管理 RPM 格式的包。这两种包管理器在理论上并不是完全互斥的,尽管在实际的实践中,Linux 发行版通常只会使用到其中的一种。理论上,这两种命令可以运行在同一个系统上,但是会造成安装包的重叠,版本控制也会更加困难,命令也会是冗余的。然而,如果你是在一个混合的 Linux 环境下工作,比如你的工作站运行的是一个发行版,同时需要与运行另外一种发行版的服务器进行交互,那么你最好同时掌握这两种包管理器。

搜索应用

当你通过包管理器安装一个应用时,你需要先知道包的名称。通常,应用的名称和包的名称是一样的。 和 验证要安装的包名的过程是完全相同的。

  1. $ sudo dnf search zsh

  2. ====== Name Exactly Matched: zsh ======

  3. zsh.x86_64 : Powerful interactive shell

  4. [...]

使用 :

  1. $ sudo apt search zsh

  2. Sorting... Done

  3. Full Text Search... Done

  4. csh/stable 20110502-4+deb10u1 amd64

  5. Shell with C-like syntax

  6. ddgr/stable 1.6-1 all

  7. DuckDuckGo from the terminal

  8. direnv/stable 2.18.2-2 amd64

  9. Utility to set directory specific environment variables

  10. draai/stable 20180521-1 all

  11. Command-line music player for MPD

  12. [...]

如果想通过 更快的获取相关的搜索结果,你可以使用 :

  1. apt search ^zsh

  2. Sorting... Done

  3. Full Text Search... Done

  4. zsh/stable 5.7.1-1 amd64

  5. shell with lots of features

  6. [...]

查找应用程序包

有一些命令是与其它命令捆绑在一起的,都在一个包中。在这种情况下,你可以通过包管理器去了解哪个包提供了你需要的命令。 和 命令在如何搜索这类元数据上是有区别的。

使用 :

  1. $ sudo dnf provides pgrep

  2. procps-ng-3.3.15-6.el8.x86_64 : System and process monitoring utilities

  3. Repo : baseos

  4. Matched from:

  5. Filename : /usr/bin/pgrep

命令使用子命令 apt-file。要使用 apt-file,你必须先安装它,然后提示它更新缓存:

  1. $ sudo apt install apt-file

  2. Reading package lists... Done

  3. Building dependency tree

  4. Reading state information... Done

  5. The following additional packages will be installed:

  6. libapt-pkg-perl libexporter-tiny-perl liblist-moreutils-perl libregexp-assemble-perl

  7. The following NEW packages will be installed:

  8. apt-file libapt-pkg-perl libexporter-tiny-perl liblist-moreutils-perl libregexp-assemble-perl

  9. 0 upgraded, 5 newly installed, 0 to remove and 14 not upgraded.

  10. Need to get 297 kB of archives.

  11. After this operation, 825 kB of additional disk space will be used.

  12. Do you want to continue? [Y/n] y

  13. $ sudo apt-file update

  14. [...]

你可以通过 apt-file 搜索命令。你可以使用此命令进行广泛的全局搜索,但假如你知道命令的执行路径,它会更准确:

  1. $ sudo apt-file search /usr/bin/pgrep

  2. pgreplay: /usr/bin/pgreplay

  3. procps: /usr/bin/pgrep

安装应用程序

使用 和 安装应用程序基本上是相同的:

  1. $ sudo apt install zsh

使用 ,你可以使用同样的方式来安装一个包:

  1. $ sudo dnf install zsh

许多基于 RPM 的发行版都具有组包安装的特性,它会将有时表面相关的应用程序收集到一个易于安装的目标中。例如,Fedora 中的 组包就包含流行的创意应用程序。那些想要某一个创意应用程序的艺术家可能也想要类似的应用程序,选择安装一整个组包一个简单而快速的方法,可以合理地开始建立一个数字工作室。你可以通过 group list 来查看可用的组包(使用 -v 来查看不带空格的组名):

  1. $ sudo dnf group list -v

  2. [...]

  3. Available Groups:

  4. Container Management (container-management)

  5. RPM Development Tools (rpm-development-tools)

  6. Design Suite (design-suite)

  7. Development Tools (development)

  8. [...]

使用 group install 子命令安装 RPM 组包:

  1. $ sudo dnf group install design-suite

你可以使用 @ 符号来减少输入:

  1. $ sudo dnf install @design-suite

更新应用程序

使用包管理器的一个优点是,它知道所有已经安装的应用。这样你不必去寻找应用程序的更新版本。相反,你可以通过包管理器去获取更新的版本。

和 使用的子命令略有不同。因为 保存了一个需要定期更新的缓存信息,它使用 upgrade 子命令来更新应用程序:

  1. $ sudo apt upgrade

相比之下, 命令在你每次使用时都会更新元信息,所以 updateupgrade 子命令是可以互换的:

  1. $ sudo dnf upgrade

这等同于:

  1. $ sudo dnf update

移除应用程序

如果你曾经尝试在任何一个平台上手动删除一个应用程序,你就会知道,应用程序删除后,在硬盘上会残留各种文件,比如首选项文件、数据或图标。所以包管理器的另一个优点是,包管理器管理着包中安装的每一个文件,可以很方便的删除:

  1. $ sudo dnf remove zsh

remove 子命令也适用于 :

  1. $ sudo apt remove zsh

使用 命令删除一个包并不会删除已修改的用户配置文件,以防你意外删除了包。如果你想通过 命令删除一个应用及其配置文件,请在你之前删除过的应用程序上使用 purge 子命令:

  1. $ sudo apt purge zsh

和 都不会删除家目录中的数据和配置文件(即使使用 purge 子命令)。如果想要从家目录中删除数据,你必须手动操作(通常你可以在 ~/.config~/.local 文件中找到)。

了解包管理

无论你选择的发行版支持的是 还是 ,这些命令的用途大致相同。它们可以帮助你安装、更新和移除包。这两种包管理器是目前最通用的包管理器。它们的语法元素在很大程度上是相同的,所以在两者之间切换非常容易。

和 还有一些高级功能,例如仓库管理,但这些功能并不像你使用 searchinstall 那样频繁。

无论你更经常使用哪种包管理器,你都可以下载我们的 和 ,以便你在最需要的时候可以查询使用语法。

via:

作者: 选题: 译者: 校对:

本文由 原创编译, 荣誉推出

欢迎遵照 CC-BY-NC-SA 协议规定转载,

如需转载,请在文章下留言 “ 转载:公众号名称”,

我们将为您添加白名单,授权“ 转载文章时可以修改”。

特别声明:以上内容(如有图片或视频亦包括在内)为自媒体平台“网易号”用户上传并发布,本平台仅提供信息存储服务。

Notice: The content above (including the pictures and videos if any) is uploaded and posted by a user of NetEase Hao, which is a social media platform and only provides information storage services.

相关推荐
热点推荐
东大的实力其实已经被巴基斯坦,塞尔维亚和伊朗叙利亚证明了。

东大的实力其实已经被巴基斯坦,塞尔维亚和伊朗叙利亚证明了。

沧海一书客
2025-01-04 15:39:37
乌军收复克里米纳南部!击毁哈尔科夫俄军阵地

乌军收复克里米纳南部!击毁哈尔科夫俄军阵地

项鹏飞
2025-01-05 20:51:10
网友:讽刺啊!江阴一企业通报下班后4分钟内打卡的下班积极分子

网友:讽刺啊!江阴一企业通报下班后4分钟内打卡的下班积极分子

火山诗话
2025-01-05 16:28:44
日企高管评价中国汽车充满“很劣质的精致感”?网友:又酸了

日企高管评价中国汽车充满“很劣质的精致感”?网友:又酸了

派大星纪录片
2025-01-05 17:04:15
打包哥再进山姆遭员工大喊滚出去!其怒斥:下架新疆产品有理了?

打包哥再进山姆遭员工大喊滚出去!其怒斥:下架新疆产品有理了?

垛垛糖
2025-01-05 11:48:08
人民币汇率急剧贬值!1月6号,本日凌晨的四大消息持续发酵!

人民币汇率急剧贬值!1月6号,本日凌晨的四大消息持续发酵!

风口招财猪
2025-01-06 01:06:42
俄罗斯在库尔斯克损失了大量部队:甚至整个步兵营

俄罗斯在库尔斯克损失了大量部队:甚至整个步兵营

一种观点
2025-01-05 16:50:38
烂!41岁武术冠军翻拍《长江七号》擦边卖肉差评一片,票房仅3万

烂!41岁武术冠军翻拍《长江七号》擦边卖肉差评一片,票房仅3万

靠谱电影君
2025-01-05 13:44:36
中国护照可免签国家/地区(2025.01)

中国护照可免签国家/地区(2025.01)

布拉旅游说
2025-01-04 08:09:26
多伦多华人超市抓捕现场曝光!5辆警车1辆消防车,逮了个小女贼!

多伦多华人超市抓捕现场曝光!5辆警车1辆消防车,逮了个小女贼!

二向箔
2025-01-05 12:44:24
哈马斯发布囚禁超450 天的女人质视频!如果是你女儿,也唱赞歌吗

哈马斯发布囚禁超450 天的女人质视频!如果是你女儿,也唱赞歌吗

大风文字
2025-01-05 16:29:05
曝某新能源汽车奇葩质检事件,座椅颜色装错,车主提车一周才发现

曝某新能源汽车奇葩质检事件,座椅颜色装错,车主提车一周才发现

小星球探索
2025-01-05 13:14:09
央视曝光加油站克扣用户加油量,屏显 50 升油实际仅加 48.5 升

央视曝光加油站克扣用户加油量,屏显 50 升油实际仅加 48.5 升

IT之家
2025-01-05 17:04:12
补锅成功!拉涅利率领罗马在最近7场比赛中取得5胜平1负

补锅成功!拉涅利率领罗马在最近7场比赛中取得5胜平1负

直播吧
2025-01-06 06:36:14
离了大谱!有网友称长春一企业使用消费券发工资,几千几万都有…

离了大谱!有网友称长春一企业使用消费券发工资,几千几万都有…

火山诗话
2025-01-05 13:49:12
沈飞六代机新画面,一机两型航母也要用

沈飞六代机新画面,一机两型航母也要用

三叔的装备空间
2025-01-05 13:49:15
印度突发坠机事件!

印度突发坠机事件!

鲁中晨报
2025-01-06 00:59:02
警惕!复合维生素或使癌症发生率大幅上升

警惕!复合维生素或使癌症发生率大幅上升

荷兰豆爱健康
2025-01-05 23:26:46
首次回升!韩国新生儿9年来首次正增长,没什么秘诀,就是砸钱?

首次回升!韩国新生儿9年来首次正增长,没什么秘诀,就是砸钱?

乌娱子酱
2025-01-05 12:16:19
“比基尼京剧” 照片被曝惹争议:吃瓜群众直呼辣眼睛!

“比基尼京剧” 照片被曝惹争议:吃瓜群众直呼辣眼睛!

书画艺术收藏
2025-01-05 19:20:03
2025-01-06 09:11:00
Linux incentive-icons
Linux
Linux 中国开源社区
8016文章数 73118关注度
往期回顾 全部

科技要闻

苹果降价,不稀罕了

头条要闻

30岁男子确诊尘肺病:肺部火辣辣地疼 气只有针眼大小

头条要闻

30岁男子确诊尘肺病:肺部火辣辣地疼 气只有针眼大小

体育要闻

波杰姆斯基:你们都算老几?

娱乐要闻

更多知情者下场!已婚网友称张颂文诱骗骚扰?

财经要闻

央行两次提"择机降准降息"意味着什么

汽车要闻

10万元级无图智驾 悦也PLUS全路况实测

态度原创

本地
房产
家居
艺术
教育

本地新闻

云游中国|冰雪“祁”缘照进现实,谁懂多震撼

房产要闻

中交 × 鱼珠 | 高定江景梦幻联动,打造都市精英的 “临江乌托邦”

家居要闻

素色现代 开启简洁生活

艺术要闻

故宫珍藏的墨迹《十七帖》,比拓本更精良,这才是地道的魏晋写法

教育要闻

做好学校文化建设,关键在这三方面

无障碍浏览 进入关怀版