惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

cs.AI updates on arXiv.org
cs.AI updates on arXiv.org
WordPress大学
WordPress大学
宝玉的分享
宝玉的分享
人人都是产品经理
人人都是产品经理
博客园 - 聂微东
IT之家
IT之家
V
V2EX
Jina AI
Jina AI
V
Visual Studio Blog
有赞技术团队
有赞技术团队
博客园 - 司徒正美
博客园 - 叶小钗
The Cloudflare Blog
cs.CV updates on arXiv.org
cs.CV updates on arXiv.org
小众软件
小众软件
奇客Solidot–传递最新科技情报
奇客Solidot–传递最新科技情报
博客园 - 三生石上(FineUI控件)
OSCHINA 社区最新新闻
OSCHINA 社区最新新闻
Google DeepMind News
Google DeepMind News
钛媒体:引领未来商业与生活新知
钛媒体:引领未来商业与生活新知
腾讯CDC
Google Online Security Blog
Google Online Security Blog
博客园 - 【当耐特】
Apple Machine Learning Research
Apple Machine Learning Research
K
KPMG report finds enterprise disconnect between AI and its ROI | CIO
N
News and Events Feed by Topic
N
News and Events Feed by Topic
The Last Watchdog
The Last Watchdog
W
WeLiveSecurity
月光博客
月光博客
Security Archives - TechRepublic
Security Archives - TechRepublic
Webroot Blog
Webroot Blog
SecWiki News
SecWiki News
博客园_首页
罗磊的独立博客
量子位
Latest news
Latest news
I
Intezer
V
Vulnerabilities – Threatpost
A
Arctic Wolf
Last Week in AI
Last Week in AI
Recent Commits to openclaw:main
Recent Commits to openclaw:main
S
SegmentFault 最新的问题
S
Security Affairs
阮一峰的网络日志
阮一峰的网络日志
让小产品的独立变现更简单 - ezindie.com
让小产品的独立变现更简单 - ezindie.com
酷 壳 – CoolShell
酷 壳 – CoolShell
P
Palo Alto Networks Blog
C
CXSECURITY Database RSS Feed - CXSecurity.com
N
News | PayPal Newsroom

乌云盖雪

CasaOS 开启网络共享自动发现功能 积雨云 人何以会有怜悯之心 善恶只是心灵的状态 关于荣格的心理机能十字架 资本与权力 怎么会这样 房子和手机——我为什么选择躺平(一) 配置 Plank Dock 常见问题 一种选择性可见互联网 迷雾笼罩的城市 王土狗谈爱与恨 化作星星的你 人无非是爱一些条件和特质罢了 我为什么爱装系统 你养的蚂蚱 三种选择 今天被一大型狗咬了 Firefox 89 的全新 Proton 界面 黑暗将至 VLC 播放器无法退出及丢帧问题 黑色的太阳 用心去看这个世界 生与死 关系和人生意义 穷人的现实 我是谁 归乡 人际关系的两大忌 事业、关系与自我 你是真地喜欢做那些事本身吗 从经验和逻辑说起 心灵的缺省状态 解决 Mellow 在 Manjaro 中开机自启后无法自动连接的问题 驱动力 心灵的阅历 Hexo 如何删除 git commit 历史记录 真实是什么 社交其实就是行乞与施舍 多雨的夏季就要过去 拒绝在人生的阶梯上攀爬 会演奏音乐的青铜雕像 繁衍后代和自我延续 人生的目的与道路 记一次外出 解决 Windows Thin PC 系统中 Firefox 和 IE 播放音频和视频的问题 感性·理性·心 做题与发明创造 关于真理 安装并迁移到 Typecho 遇到的一些问题及解决方法 关于信仰 WordPress 使用 Cloudflare 遇到的几个问题及解决方法 极端体验之1G内存装 Win7 墓碑 活在过去 人生意义浅论 我作为一个中国人到底该不该要孩子 重复与感受 人类的认知有上限么 生而为奴——我的反社会情结 关于创造力的一些思考 心灵是不可预测的 创造的条件 种子 面具 凌晨2点的街道 牢笼 迷雾都市 心灵的眼镜 旁观者 空白 十年一梦 穿越 在回去的路上 我们的家园 身世 链接
pacman 和 yay 常用命令
乌云盖雪 · 2022-09-28 · via 乌云盖雪

Pacman 是一个功能强大的软件包管理器,作为 Arch Linux 发行版的一部分。简单来说,就是和 apt-get 之于Ubuntu一样,pacman 就是 Arch 的 apt-get。pacman 的常用命令如下:

更新系统

pacman -Syu # 对整个系统进行更新。
pacman -Sy # 下载远程仓库最新软件列表到本地,将本地的包数据库与远程的仓库进行同步。
pacman -Su # 升级所有已安装的软件包。

安装软件包

pacman -S 软件包名 # 安装软件包。也可以同时安装多个包,只需以空格分隔包名即可。
pacman -Sy 软件包名 # 在同步包数据库(数据库即所有软件列表)后再执行安装。
pacman -Sv 软件包名 # 在显示一些操作信息后执行安装。
pacman -U 软件包名.pkg.tar.gz # 安装本地软件包,其扩展名为 pkg.tar.gz。
pacman -U http://url/package_name-version.pkg.tar.gz # 安装一个远程包(不在 pacman 配置的源里面)。

卸载软件包

pacman -R 软件包名 # 该命令只删除软件包,保留其全部已经安装的依赖关系。
pacman -Rv 软件包名 # 删除软件包,并显示详细的信息。
pacman -Rs 软件包名 # 删除软件包,同时删除本机上只有该软件依赖而没有被其他已安装软件包使用的的软件。
pacman -Rsc 软件包名 # 删除软件包,并删除所有依赖这个软件的程序,慎用。
pacman -Ru 软件包名 # 删除软件包,同时删除不再被任何软件所需要的依赖。
pacman -Rd 软件包名 # 在删除软件包时不检查依赖。
pacman -Rn 软件包名 # 缺省地,pacman会备份被删除程序的配置文件,将它们加上 pacsave 扩展名。如果在删除软件包时要同时删除相应的配置文件(这种行为在基于 Debian 的系统中称为清除 purging),可是使用该命令。
pacman -Rsn 软件包名 # 该命令删除一个软件包、它的配置文件以及所有不再需要的依赖。-s参数用来删除当前无用的依赖。

搜索软件包

pacman -Ss 关键字 # 在仓库中搜索含关键字的软件包(本地已安装的会标记)。
pacman -Qs 关键字 # 搜索已安装的软件包。
pacman -Qu # 列出所有可升级的软件包。
pacman -Qt # 列出不被任何软件要求的软件包。

查询软件信息

pacman -Q 软件包名 # 查看软件包是否已安装,已安装则显示软件包名称和版本。
pacman -Qi 软件包名 # 查看某个软件包信息,显示较为详细的信息,包括描述、构架、依赖、大小等等。
pacman -Ql 软件包名 # 列出软件包内所有文件,包括软件安装的每个文件、文件夹的名称和路径。
pacman -Qo /path/to/a/file # 可以通过查询数据库获知目前你的文件系统中某个文件是属于哪个软件包。
pacman -Qdt # 罗列所有不再作为依赖的软件包(孤立 orphans)。

软件包组

pacman -Sg # 列出软件仓库上所有的软件包组。
pacman -Qg # 列出本地已经安装的软件包组和子包。
pacman -Sg 软件包组 # 查看某软件包组所包含的所有软件包。
pacman -Qg 软件包组 # 和 pacman -Sg 软件包组完全一样。

很多人建议通过安装软件组来安装工具链,例如:

pacman -S mingw-w64-x86_64-toolchain
pacman -S mingw-w64-i686-toolchain
pacman -S mingw-w64-x86_64-qt5
pacman -S base-devel

清理缓存

pacman -Sc # 清理未安装的包文件,包文件位于 /var/cache/pacman/pkg/ 目录。
pacman -Scc # 清理所有的缓存文件。警告:关于 pacman -Scc,仅在你确定不需要做任何软件包降级工作时才这样做。pacman -Scc 会从缓存中删除所有软件包。

要了解更详细的参数开关可以 pacman –help 或者 man pacman。

配置和常用选项

Pacman 的配置文件位于/etc/pacman.conf。关于配置文件的进一步信息可以用 man pacman.conf 查看。
常用选项都在[options]段。阅读 man 手册或者查看缺省的 pacman.conf 可以获得有关信息和用途。

跳过升级软件包

如果由于某种原因,你不希望升级某个软件包(如果有多个包不需要升级,只需以空格分隔包名即可),可以加入内容如下:
IgnorePkg = 软件包名

跳过升级软件包组

和软件包一样,你也可以象这样跳过升级某个软件包组:
IgnoreGroup = gnome

附注

Arch Linux 的版本库里面包括:
core # 核心软件包。
extra # 其他常用软件。
community # 社区软件包,譬如 Mysql 等。
testing # 正在测试阶段,还没有正式加入源的软件包。通常软件版本比较新,但是不是非常稳定。
release # 已经发布的软件包。
unstable # 非正式的软件包,可能包括以前版本的软件或者测试软件。

因为Pacman的软件都是从源里面更新,因此在 /etc/pacman.d 里面配置这些软件源的地址。在 /etc/pacman.d 目录里面分别有上面几种软件类型对应的文件名,可以自己手工配置这些软件源的地址。

Pacman 是一个功能强大的包管理器,作为基于 Arch 的发行版的默认设置提供,但它缺乏从 Arch 用户存储库 (AUR) 下载包的功能。 AUR 是一个社区维护的存储库,以安装脚本的形式提供数千个第三方包,也称为 PKGBUILD。要使用这些 PKGBUILD 安装包,我们需要像 yay 这样的 AUR 助手。 yay 可以执行 pacman 的几乎所有操作,并在此基础上添加了很多额外用法。yay 的用法和 pacman 完全类似,上述所有 pacman xxx 命令,均可替换成 yay xxx 执行。yay 安装命令不需要加 sudo。

yay 的常用命令

yay 软件包名或搜索词 # 从仓库和 AUR 中交互式搜索和安装软件包。
yay # 同步并更新所有来自仓库和 AUR 的软件包。后面不跟任何参数时,yay 会执行操作 yay -Syu,它会先调用 pacman 更新源的数据库、更新所有从源内安装的软件包,并检查你的 AUR 包有没有更新。
yay -Sua # 只同步和更新 AUR 软件包。
yay -S 软件包名 # 从仓库和 AUR 中安装一个新的软件包。
yay -Ss 关键词 # 从仓库和 AUR 中搜索软件包数据库中的关键词。
yay -Ps # 显示已安装软件包和系统健康状况的统计数据。

参考: