1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
pacman -S <package_name>
有一定风险!!!
有可能静默安装旧包
有可能安装成最新包,但静默安装旧依赖

pacman -Sy 刷新本地数据库
pacman -Syy 强制!刷新本地数据库
如果直接跟包名,仍然有风险,比如假设你的系统中安装了libvpx-1.14,当你执行pacman -Sy firefox,此时系统会直接安装最新版firefox和libvpx-1.15(最新版),但是你的系统中的ffmpeg依赖libvpx-1.14,此时依赖链断裂,系统崩溃

pacman -Su
基于旧数据库升级包
有一定风险!!!
有可能静默升级成旧包
有可能升级成最新包,但安装了旧依赖
如果跟包名,基于旧数据库升级指定包,就更有风险了,毕竟上面基于新数据库升级指定包都有风险

pacman -Syu
刷新本地数据库然后更新所有软件包(更新系统)
pacman -Syu <package_name>
这是安装软件包的标杆做法

---

pacman -R
卸载包,保留所有依赖和配置文件

pacman -Rs
卸载包,卸载无用依赖

pacman -Rsc
卸载包,卸载无用依赖,卸载配置文件

---

-Q 查询所有已安装的包
-Qd 仅查询依赖(dependence)
-Qdt 仅查询独立的依赖(dependence independent)
-Qdtq 仅查询独立的依赖(dependence independent)q for --quiet 仅显示包名,不显示版本号

---

-Ss 关键词,联网查询
-Ss '^package_name$',精准匹配包名
-Qs ,关键词,本地查询