返回顶部
首页 > 资讯 > 操作系统 >在Linux中pacman怎么用
  • 702
分享到

在Linux中pacman怎么用

2023-06-15 16:06:05 702人浏览 薄情痞子
摘要

小编给大家分享一下在linux中pacman怎么用,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!pacman 包管理器是 Arch Linux

小编给大家分享一下在linux中pacman怎么用,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!

pacman 包管理器是 Arch Linux 和其他主要发行版如 Red Hat 和 ubuntu/Debian 之间的主要区别之一。它结合了简单的二进制包格式和易于使用的 构建系统。pacman 的目标是方便地管理软件包,无论它是来自 官方库 还是用户自己构建的软件库。

如果你曾经使用过 Ubuntu 或基于 debian 的发行版,那么你可能使用过 apt-get 或 apt 命令。pacman 在 Arch Linux 中是同样的命令。如果你 刚刚安装了 Arch Linux,在安装 Arch Linux 后,首先要做的 几件事 之一就是学习使用 pacman 命令。

在这个初学者指南中,我将解释一些基本的 pacman 命令的用法,你应该知道如何用这些命令来管理你的基于 Archlinux 的系统。

Arch Linux 用户应该知道的几个重要的 pacman 命令

与其他包管理器一样,pacman 可以将包列表与软件库同步,它能够自动解决所有所需的依赖项,以使得用户可以通过一个简单的命令下载和安装软件。

通过 pacman 安装软件

你可以用以下形式的代码来安装一个或者多个软件包:

pacman -S 软件包名1 软件包名2 ...

在Linux中pacman怎么用

安装一个包

-S 选项的意思是同步synchronization,它的意思是 pacman 在安装之前先与软件库进行同步。

pacman 数据库根据安装的原因将安装的包分为两组:

  • 显式安装:由 pacman -S 或 -U 命令直接安装的包

  • 依赖安装:由于被其他显式安装的包所 依赖,而被自动安装的包。

卸载已安装的软件包

卸载一个包,并且删除它的所有依赖。

pacman -R 软件包名

在Linux中pacman怎么用

移除一个包

删除一个包,以及其不被其他包所需要的依赖项:

pacman -Rs 软件包名

如果需要这个依赖的包已经被删除了,这条命令可以删除所有不再需要的依赖项:

pacman -Qdtq | pacman -Rs -
升级软件包

pacman 提供了一个简单的办法来 升级 Arch Linux。你只需要一条命令就可以升级所有已安装的软件包。这可能需要一段时间,这取决于系统的新旧程度。

以下命令可以同步存储库数据库并且 更新系统的所有软件包,但不包括不在软件库中的“本地安装的”包:

pacman -Syu
  • S 代表同步

  • y 代表更新本地存储库

  • u 代表系统更新

也就是说,同步到中央软件库(主程序包数据库),刷新主程序包数据库的本地副本,然后执行系统更新(通过更新所有有更新版本可用的程序包)。

在Linux中pacman怎么用

系统更新

注意!

对于 Arch Linux 用户,在系统升级前,建议你访问 Arch-Linux 主页 查看最新消息,以了解异常更新的情况。如果系统更新需要人工干预,主页上将发布相关的新闻。你也可以订阅 RSS 源 或 Arch 的声明邮件。

在升级基础软件(如 kernel、xorg、systemd 或 glibc) 之前,请注意查看相应的 论坛,以了解大家报告的各种问题。

在 Arch 和 Manjaro 等滚动发行版中不支持部分升级。这意味着,当新的库版本被推送到软件库时,软件库中的所有包都需要根据库版本进行升级。例如,如果两个包依赖于同一个库,则仅升级一个包可能会破坏依赖于该库的旧版本的另一个包。

用 Pacman 查找包

pacman 使用 -Q 选项查询本地包数据库,使用 -S 选项查询同步数据库,使用 -F 选项查询文件数据库。

pacman 可以在数据库中搜索包,包括包的名称和描述:

pacman -Ss 字符串1 字符串2 ...

在Linux中pacman怎么用

查找一个包

查找已经被安装的包:

pacman -Qs 字符串1 字符串2 ...

根据文件名在远程软包中查找它所属的包:

pacman -F 字符串1 字符串2 ...

查看一个包的依赖树:

pactree 软件包名
清除包缓存

pacman 将其下载的包存储在 /var/cache/Pacman/pkg/ 中,并且不会自动删除旧版本或卸载的版本。这有一些优点:

  1. 鸿蒙官方战略合作共建——HarmonyOS技术社区

  2. 它允许 降级 一个包,而不需要通过其他来源检索以前的版本。

  3. 已卸载的软件包可以轻松地直接从缓存文件夹重新安装。

但是,有必要定期清理缓存以防止文件夹增大。

pacman contrib 包中提供的 paccache(8) 脚本默认情况下会删除已安装和未安装包的所有缓存版本,但最近 3 个版本除外:

paccache -r

在Linux中pacman怎么用

清除缓存

要删除当前未安装的所有缓存包和未使用的同步数据库,请执行:

pacman -Sc

要从缓存中删除所有文件,请使用清除选项两次,这是最激进的方法,不会在缓存文件夹中留下任何内容:

pacman -Scc
安装本地或者第三方的包

安装不是来自远程存储库的“本地”包:

pacman -U 本地软件包路径.pkg.tar.xz

安装官方存储库中未包含的“远程”软件包:

pacman -U Http://www.example.com/repo/example.pkg.tar.xz

额外内容:用 pacman 排除常见错误

下面是使用 pacman 管理包时可能遇到的一些常见错误。

提交事务失败(文件冲突)

如果你看到以下报错:

error: could not prepare transactionerror: failed to commit transaction (conflicting files)package: /path/to/file exists in filesystemErrors occurred, no packages were upgraded.

这是因为 pacman 检测到文件冲突,不会为你覆盖文件。

解决这个问题的一个安全方法是首先检查另一个包是否拥有这个文件(pacman-Qo 文件路径)。如果该文件属于另一个包,请提交错误报告。如果文件不属于另一个包,请重命名“存在于文件系统中”的文件,然后重新发出更新命令。如果一切顺利,文件可能会被删除。

你可以显式地运行 pacman -S –overwrite 要覆盖的文件模式**,强制pacman` 覆盖与 给模式匹配的文件,而不是手动重命名并在以后删除属于该包的所有文件。

提交事务失败(包无效或损坏)

在 /var/cache/pacman/pkg/ 中查找 .part 文件(部分下载的包),并将其删除。这通常是由在 pacman.conf 文件中使用自定义 XferCommand 引起的。

初始化事务失败(无法定数据库)

当 pacman 要修改包数据库时,例如安装包时,它会在 /var/lib/pacman/db.lck 处创建一个锁文件。这可以防止 pacman 的另一个实例同时尝试更改包数据库。

如果 pacman 在更改数据库时被中断,这个过时的锁文件可能仍然保留。如果你确定没有 pacman 实例正在运行,那么请删除锁文件。

检查进程是否持有锁定文件:

lsof /var/lib/pacman/db.lck

如果上述命令未返回任何内容,则可以删除锁文件:

rm /var/lib/pacman/db.lck

如果你发现 lsof 命令输出了使用锁文件的进程的 PID,请先杀死这个进程,然后删除锁文件。

以上是“在Linux中pacman怎么用”这篇文章的所有内容,感谢各位的阅读!相信大家都有了一定的了解,希望分享的内容对大家有所帮助,如果还想学习更多知识,欢迎关注编程网操作系统频道!

--结束END--

本文标题: 在Linux中pacman怎么用

本文链接: https://lsjlt.com/news/280726.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

猜你喜欢
  • 在Linux中pacman怎么用
    小编给大家分享一下在Linux中pacman怎么用,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!pacman 包管理器是 Arch Linux...
    99+
    2023-06-15
  • Arch Linux的pacman命令怎么用
    本篇文章为大家展示了Arch Linux的pacman命令怎么用,内容简明扼要并且容易理解,绝对能使你眼前一亮,通过这篇文章的详细介绍希望你能有所收获。pacman 命令可以在Linux系统中查找新的安装包、安装和升级新的安装包、以及清理系...
    99+
    2023-06-28
  • ArchLinux中如何使用Pacman命令
    这篇文章主要介绍ArchLinux中如何使用Pacman命令,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!Pacman 是一个软件包管理器,作为ArchLinux发行版的一部分。简单来说,就是和apt-get之于Ub...
    99+
    2023-06-27
  • 在Linux上中dig怎么用
    这篇文章主要介绍在Linux上中dig怎么用,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!dig 是一个强大而灵活的工具,用于查询域名系统(DNS)服务器。在这篇文章中,我们将深入了解它的工作原理以及它能告诉你什么。...
    99+
    2023-06-15
  • 在Linux中loop device怎么用
    这篇文章给大家分享的是有关在Linux中loop device怎么用的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。在Linux中,有一种特殊的块设备叫loop device,这种loop device设备是通过影...
    99+
    2023-06-27
  • GNU sed怎么在Linux中使用
    GNU sed怎么在Linux中使用?相信很多没有经验的人对此束手无策,为此本文总结了问题出现的原因和解决方法,通过这篇文章希望你能解决这个问题。处理 Linux 中的文本流Linux 将程序中的输入和输出当成字符流或者字符序列。在开始理解...
    99+
    2023-06-12
  • vim怎么在Linux系统中使用
    这期内容当中小编将会给大家带来有关vim怎么在Linux系统中使用,文章内容丰富且以专业的角度为大家分析和叙述,阅读完这篇文章希望大家可以有所收获。什么是vimVim是从 vi 发展出来的一个文本编辑器。代码补完、编译及错误跳转等方便编程的...
    99+
    2023-06-09
  • curl命令怎么在Linux中使用
    curl命令怎么在Linux中使用?相信很多没有经验的人对此束手无策,为此本文总结了问题出现的原因和解决方法,通过这篇文章希望你能解决这个问题。语法: # curl [option] [url]常见参数:-A/--user-agent&nb...
    99+
    2023-06-09
  • pmap 命令怎么在linux中使用
    pmap 命令怎么在linux中使用?相信很多没有经验的人对此束手无策,为此本文总结了问题出现的原因和解决方法,通过这篇文章希望你能解决这个问题。通过查看帮助,返回了如下信息:Usage: pmap [options]&...
    99+
    2023-06-09
  • 怎么在Linux中使用netstat命令
    这篇文章给大家介绍怎么在Linux中使用netstat命令,内容非常详细,感兴趣的小伙伴们可以参考借鉴,希望对大家能有所帮助。简介Netstat 命令用于显示各种网络相关信息,如网络连接,路由表,接口状态 (Interface Statis...
    99+
    2023-06-09
  • vim指令怎么在linux 中使用
    这篇文章给大家介绍vim指令怎么在linux 中使用,内容非常详细,感兴趣的小伙伴们可以参考借鉴,希望对大家能有所帮助。Vim 是 Linux 系统上的最著名的文本/代码编辑器,也是早年的 Vi 编辑器的加强版,而 gVim 则是其 Win...
    99+
    2023-06-09
  • 怎么在linux中使用ar 命令
    怎么在linux中使用ar 命令?相信很多没有经验的人对此束手无策,为此本文总结了问题出现的原因和解决方法,通过这篇文章希望你能解决这个问题。用途说明创建静态库。a文件。用C/C++开发程序时经常用到,但我很少单独在命令行中使用ar命令,一...
    99+
    2023-06-09
  • printf语句怎么在Linux 中使用
    这篇文章给大家介绍printf语句怎么在Linux 中使用,内容非常详细,感兴趣的小伙伴们可以参考借鉴,希望对大家能有所帮助。Linux shell中的printf的详细用法一 语法printf '输出类型输出格式' 输出内...
    99+
    2023-06-09
  • sed和awk怎么在Linux中使用
    本篇文章给大家分享的是有关sed和awk怎么在Linux中使用,小编觉得挺实用的,因此分享给大家学习,希望大家阅读完这篇文章后可以有所收获,话不多说,跟着小编一起来看看吧。sed用法:sed是一个很好的文件处理工具,本身是一个管道命令,主要...
    99+
    2023-06-09
  • 怎么在Linux 中使用makefile命令
    这篇文章将为大家详细讲解有关怎么在Linux 中使用makefile命令,文章内容质量较高,因此小编分享给大家做个参考,希望大家阅读完这篇文章后对相关知识有一定的了解。下面以\build\core\product.mk下面的内容为例介绍:&...
    99+
    2023-06-09
  • iptraf命令怎么在Linux中使用
    本篇文章给大家分享的是有关iptraf命令怎么在Linux中使用,小编觉得挺实用的,因此分享给大家学习,希望大家阅读完这篇文章后可以有所收获,话不多说,跟着小编一起来看看吧。iptraf是一个基于ncurses开发的IP局域网监控工具,它可...
    99+
    2023-06-13
  • lsof 命令怎么在Linux中使用
    lsof 命令怎么在Linux中使用?相信很多没有经验的人对此束手无策,为此本文总结了问题出现的原因和解决方法,通过这篇文章希望你能解决这个问题。lsof(list open files)是一个列出当前系统打开文件的工具。在linux环境下...
    99+
    2023-06-13
  • wc命令怎么在linux中使用
    wc命令怎么在linux中使用?针对这个问题,这篇文章详细介绍了相对应的分析和解答,希望可以帮助更多想解决这个问题的小伙伴找到更简单易行的方法。wc命令的功能为统计指定文件中的字节数、字数、行数, 并将统计结果显示输出。语法:wc [选项]...
    99+
    2023-06-13
  • 怎么在linux中使用system函数
    这期内容当中小编将会给大家带来有关怎么在linux中使用system函数,文章内容丰富且以专业的角度为大家分析和叙述,阅读完这篇文章希望大家可以有所收获。system(执行shell 命令) 相关函数 fork,execve,waitpid...
    99+
    2023-06-13
  • 怎么在Linux中使用free命令
    今天就跟大家聊聊有关怎么在Linux中使用free命令,可能很多人都不太了解,为了让大家更加了解,小编给大家总结了以下内容,希望大家根据这篇文章可以有所收获。           ...
    99+
    2023-06-13
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作