Redian新闻
>
使用 apt 进行 Linux 包管理 | Linux 中国

使用 apt 进行 Linux 包管理 | Linux 中国

科技
 
导读:学习如何使用 apt 命令在基于 Debian 的 Linux 发行版上安装软件包,然后下载我们的速查表,让正确的命令触手可及。
本文字数:4610,阅读时长大约:5分钟

LCTT 译者 :Hans zhao
🌟🌟
翻译: 3.0 篇
|
贡献: 4 天
2022-05-02
2022-05-05
https://linux.cn/lctt/hanszhao80

包管理器🔗 opensource.com 可帮助你处理 Linux 系统的计算机上软件的更新、卸载、故障排除等问题。Seth Kenlon 写了 使用 dnf 进行 Linux 包管理🔗 linux.cn 一文,介绍了如何使用 dnf 这款命令行包管理工具,在 RHEL、CentOS、Fedora、Mageia、OpenMandriva 等 Linux 发行版中安装软件。

Debian 和基于 Debian 的发行版(例如 MX Linux、Deepin、Ubuntu)以及基于 Ubuntu 的发行版(例如 Linux Mint 和 Pop!_OS)都有 apt,这是一个“相似但不同”的工具。在本文中,我将按照 Seth 的示例(但使用 apt)向你展示如何使用它。

在一开始,我想先提一下四个跟 apt 相关的软件安装工具:

◈ Synaptic🔗 www.nongnu.org 是为 apt 服务的一个基于 GTK+ 的图形用户界面(GUI)的前端工具。
◈ Aptitude🔗 wiki.debian.org 是为 apt 服务的一个基于 Ncurses 的全屏命令行前端工具。
◈ apt 的前身有 apt-getapt-cache 等工具。
◈ Dpkg🔗 wiki.debian.org 是在 apt 包管理器背后处理繁杂事务的”幕后工作者“。

还有其他的包管理系统,例如 Flatpak🔗 flatpak.org 和 Snap🔗 snapcraft.io,你可能会在 Debian 和基于 Debian 的系统上遇到它们,但我不打算在这里讨论。还有一些应用程序“商店”,例如 GNOME “软件”🔗 wiki.gnome.org,与 apt 和其他打包技术重叠;我也不打算在这里讨论它们。最后,还有其他 Linux 发行版,例如 Arch🔗 archlinux.org 和 Gentoo🔗 www.gentoo.org 既不使用 dnf 也不使用 apt,我也不打算在这里讨论它们!

上面我讲了这么多我不想提及的内容,你可能怀疑 apt 到底还能处理多少软件。这么说吧,在我的 Ubuntu 20.04 上,apt 可以让我使用 69,371 个软件包,从 0ad(一款古代战争题材的即时战略游戏)到 zzuf(一个透明的应用程序模糊测试工具),一点也不差。

使用 apt 搜索软件

使用 apt 软件包管理器的第一步是找到感兴趣的软件包。Seth 的 dnf 文章以 Cockpit🔗 opensource.com 服务器管理应用程序为例。用 apt 我会输入如下命令:

  1. $ apt search cockpit
  2. Sorting... Done
  3. Full Text Search... Done
  4. 389-ds/hirsute,hirsute 1.4.4.11-1 all
  5.   389 Directory Server suite - metapackage
  6. cockpit/hirsute,hirsute 238-1 all
  7.   Web Console for Linux servers
  8. ...
  9. $

上面的第二个包就是你要的那个(以 cockpit/hirsute 开头的那一行)。如果你决定要安装它,输入:

  1. $ sudo apt install cockpit

apt 将负责安装 Cockpit 以及使其工作所需的所有部件或 依赖。有时我们不太确定这是我们所需要的。了解更多的信息可能有助于你决定是否真的要安装此应用程序。

包元数据

要了解有关软件包的更多信息,使用 apt show 命令:

  1. $ apt show cockpit
  2. Package: cockpit
  3. Version: 238-1
  4. Priority: optional
  5. Section: universe/admin
  6. Origin: Ubuntu
  7. Maintainer: Ubuntu Developers <ubuntu-devel-discuss@lists.ubuntu.com>
  8. Original-Maintainer: Utopia Maintenance Team <pkg-utopia-maintainers@lists.alioth.debian.org>
  9. Bugs: https://bugs.launchpad.net/ubuntu/+filebug
  10. Installed-Size: 88.1 kB
  11. Depends: cockpit-bridge (>= 238-1), cockpit-ws (>= 238-1), cockpit-system (>= 238-1)
  12. Recommends: cockpit-storaged (>= 238-1), cockpit-networkmanager (>= 238-1), cockpit-packagekit (>= 238-1)
  13. Suggests: cockpit-doc (>= 238-1), cockpit-pcp (>= 238-1), cockpit-machines (>= 238-1), xdg-utils
  14. Homepage: https://cockpit-project.org/
  15. Download-Size: 21.3 kB
  16. APT-Sources: http://ca.archive.ubuntu.com/ubuntu hirsute/universe amd64 Packages
  17. Description: Web Console for Linux servers
  18. The Cockpit Web Console enables users to administer GNU/Linux servers using a
  19. web browser.
  20. .
  21. It offers network configuration, log inspection, diagnostic reports, SELinux
  22. troubleshooting, interactive command-line sessions, and more.
  23. $

特别要注意的是 Description 字段,它会告诉你更多关于应用程序的信息。Depends 字段说明还必须安装什么,而 Recommends 则显示建议安装的其他(如果有的话)合作组件。Homepage 字段会提供一个网址,通过它你可以了解更多。

哪个包提供的这个文件?

有时你并不知道包名,但你知道包里一定包含着的某个文件。Seth 以 qmake-qt5 程序作为示例。使用 apt search 找不到它:

  1. $ apt search qmake-qt5
  2. Sorting... Done
  3. Full Text Search... Done
  4. $

但是,另一个有关联的命令 apt-file 可以用来探索包内部:

  1. $ apt-file search qmake-qt5
  2. qt5-qmake-bin: /usr/share/man/man1/qmake-qt5.1.gz
  3. $

这时会显示一个 qmake-qt5 的手册页。它是一个名为 qt5-qmake-bin 的包的一部分。注意,此包名称颠倒了字符串 qmake 和 qt5 的顺序。

包里包含哪些文件?

方便的 apt-file 命令会列出给定的包中包含哪些文件。例如:

  1. $ apt-file list cockpit
  2. cockpit: /usr/share/doc/cockpit/TODO.Debian
  3. cockpit: /usr/share/doc/cockpit/changelog.Debian.gz
  4. cockpit: /usr/share/doc/cockpit/copyright
  5. cockpit: /usr/share/man/man1/cockpit.1.gz
  6. cockpit: /usr/share/metainfo/cockpit.appdata.xml
  7. cockpit: /usr/share/pixmaps/cockpit.png
  8. $

注意,这与 apt show 命令提供的信息不同,后者列出了包的依赖(其他必须安装的包)。

移除一个应用程序

你还可以使用 apt 移除软件包。例如,要移除apt-file 应用程序:

  1. $ sudo apt purge apt-file

注意必须由超级用户运行 apt 才能安装或移除应用程序。

移除一个包并不会自动移除 apt 在此过程中安装的所有依赖项。不过,一点点的工作就很容易去除这些残留:

  1. $ sudo apt autoremove

认识一下 apt

正如 Seth 所写的,“你对包管理器的工作方式了解得越多,在需要安装和查询应用程序时就会越容易。”

即便你不是 apt 的重度使用者,当你需要在命令行中安装或删除软件包时(例如,在一台远程服务器上或遵循某些热心肠发布的操作指南时),掌握一些 apt 的知识也会很有用。在某些软件创作者仅提供了一个裸 .pkg 文件的情况下,可能还需要了解一些关于 dpkg 的知识(如上所述)。

我发现 Synaptic 包管理器在我的桌面上是一个非常有用的工具,但出于各种目的,我也在少数维护的服务器上使用着 apt

下载我们的 apt 速查表🔗 opensource.com 习惯该命令并尝试一些新技巧。一旦你这样做了,你可能会发现很难再使用其他任何东西。

apt 速查表🔗 opensource.com


via: https://opensource.com/article/21/6/apt-linux

作者:Chris Hermansen 选题:lujun9972 译者:hanszhao80 校对:wxy

本文由 LCTT 原创编译,Linux中国 荣誉推出


欢迎遵照 CC-BY-SA 协议规定转载,
如需转载,请在文章下留言 “转载:公众号名称”,
我们将为您添加白名单,授权“转载文章时可以修改”。


微信扫码关注该文公众号作者

戳这里提交新闻线索和高质量文章给我们。
相关阅读
使用 watch 和 tail 命令监视 Linux 上的活动 | Linux 中国HydraPaper:一个支持多显示器的 Linux 壁纸管理器 | Linux 中国在 Linux 上使用 Bash 创建一个临时文件 | Linux 中国在虚拟机中运行 Linux 的十大优点 | Linux 中国如何在 Linux 和 Windows 电脑之间共享文件 | Linux 中国你的 Linux 启动时有几只小企鹅? | Linux 中国机器学习:使用 Python 进行分类 | Linux 中国在 Ubuntu Linux 如何安装 H.264 解码器 | Linux 中国【糖醋小排】使用 Linux 上的开源财务工具 Skrooge 管理你的预算 | Linux 中国Fedora Linux 36 发布 | Linux 中国上一个说“丼”不读jǐng的人,已经被我骂哭了如何在 Linux 桌面中启用 “激活 Linux” 水印通知 | Linux 中国使用 Flatseal 管理 Flatpak 的权限 | Linux 中国分享 8 篇使用 Linux 命令行的技巧 | Linux 中国好消息!Docker Desktop 现已支持 Linux | Linux 中国Linux 中国开通播客频道:“开源朗读者”和“硬核观察” | Linux 中国机器学习:使用 Python 进行预测 | Linux 中国在 Linux 上使用 sudo 命令的 5 个理由 | Linux 中国用 Gwenview 在 Linux 上裁剪和调整照片大小 | Linux 中国如何在 Linux 中使用 Pandoc 转换文件格式 | Linux 中国Archinstall 新的菜单系统让安装 Arch Linux 更容易了 | Linux 中国我如何在 Linux 上扫描家庭照片 | Linux 中国一辈子!恨这个人!微软还有另一个 Linux 发行版,而且是基于 Debian 的 | Linux 中国使用 rustup 管理你的 Rust 工具链 | Linux 中国书赵熙《过夔州》并记Linux Lite 6.0 发布:弃用 Firefox,默认浏览器使用 Chrome | Linux 中国使用 LibreOffice 进行首次开源贡献的 6 种简单方法 | Linux 中国天地有情亦伤春---Mount Kent North Ridge实测 Linux Mint 升级工具 | Linux 中国使用 dnf 进行 Linux 包管理 | Linux 中国英伟达在提升 Linux 上的 GPU 使用体验上迈出了一大步 | Linux 中国俄乌战争浪漫主义的答案最适合程序员的 10 款 Linux 发行版 | Linux 中国
logo
联系我们隐私协议©2024 redian.news
Redian新闻
Redian.news刊载任何文章,不代表同意其说法或描述,仅为提供更多信息,也不构成任何建议。文章信息的合法性及真实性由其作者负责,与Redian.news及其运营公司无关。欢迎投稿,如发现稿件侵权,或作者不愿在本网发表文章,请版权拥有者通知本网处理。