您的当前位置:首页正文

Pacman命令介绍

2024-08-24 来源:客趣旅游网
Pacman命令介绍

⽤pacman很久了,⼀直没有深⼊去研究到底它包含多少神秘的⼒量,每次都是pacman -Syu就简单的把所有升级更新问题搞定实在是让笔者懒惰了很多。不过也正是因为pacman的简单让笔者爱不释⼿,同时Archlinux的强⼤灵活也让其成为笔者最为⼼仪的Linux,不过笔者对Archlinux的最终评价就是-Archlinux是⼀款为折腾⽽诞⽣的Linux(⾄少对笔者来说是这样的)。想要折腾,就⽤Archlinux吧。今天给⼤家带来的是Archlinux下最关键,也是灵魂的⼯具pacman命令介绍(这个⼯具与debian,ubuntu下的apt-get⼗分类似),不过命令稍微复杂⼀些,转过来当做给⾃⼰作参考了。⼀、⾸先说说啥是pacman吧:

Pacman 是⼀个 软件包管理器, 作为 ArchLinux发⾏版的⼀部分. 它最早由 Arch Linux 的 Judd Vinet开发. Pacman 可以解决安装过程中的依赖问题,⾃动下载并且安装所有需要的软件包。Pacman包管理器是Arch Linux的⼀⼤亮点。它将⼀个简单的⼆进制包格式和易⽤的构建系统结合了起来。Pacman使得简单的管理与⾃定义软件包成为了可能,⽽不论他们来⾃于官⽅的Arch软件库或是⽤户⾃⼰创建的。

⼆、pacman参数详细说明

1. [arch@ghostbb ~]$ pacman -h 2. ⽤法: pacman <操作> [...] 3. 操作:

4. pacman {-h --help} //帮助

5. pacman {-V --version} //查看版本

6. pacman {-D --data base} <选项> <软件包> //pacman管理数据库选项 7. pacman {-Q --query} [选项] [软件包] //查询安装包 8. pacman {-R --remove} [选项] <软件包> //删除安装包 9. pacman {-S --sync} [选项] [软件包] //安装安装包 10. pacman {-U --upgrade} [选项] <⽂件> //更新安装包 11.

12. 使⽤ 'pacman {-h --help}' 及某个操作以查看可得的选项

[arch@ghostbb ~]$ pacman -h⽤法: pacman <操作> [...]操作:

pacman {-h –help} //帮助

pacman {-V –version} //查看版本

pacman {-D –database} <选项> <软件包> //pacman管理数据库选项pacman {-Q –query} [选项] [软件包] //查询安装包pacman {-R –remove} [选项] <软件包> //删除安装包pacman {-S –sync} [选项] [软件包] //安装安装包pacman {-U –upgrade} [选项] <⽂件> //更新安装包使⽤ ‘pacman {-h –help}’ 及某个操作以查看可得的选项

1,pacman -D

1. [arch@ghostbb ~]$ pacman -D --help

2. ⽤法: pacman {-D --database} <选项> <软件包> 3. 选项:

4. --asdeps 标记为⾮单独指定安装的软件包 5. --asexplicit 标记为单独指定安装的软件包 6. --config <路径> 指定另外的配置⽂件 7. --logfile <路径> 指定另外的⽇志⽂件 8. --noconfirm 不询问确认

9. --noprogressbar 下载⽂件时不显⽰进度条 10. --noscriptlet 不执⾏安装⼩脚本 11. -v, --verbose 循环执⾏ 12. -- debug 显⽰除错信息

13. -r, --root <路径> 指定另外的安装根⽬录 14. -b, --dbpath <路径> 指定另外的数据库位置 15. --cachedir <⽬录> 指定另外的软件包缓存位置 16. --arch <架构> 设定另外的架构

[arch@ghostbb ~]$ pacman -D –help

⽤法: pacman {-D –database} <选项> <软件包>选项:

–asdeps 标记为⾮单独指定安装的软件包–asexplicit 标记为单独指定安装的软件包

–config <路径> 指定另外的配置⽂件–logfile <路径> 指定另外的⽇志⽂件–noconfirm 不询问确认

–noprogressbar 下载⽂件时不显⽰进度条–noscriptlet 不执⾏安装⼩脚本-v, –verbose 循环执⾏— debug 显⽰除错信息

-r, –root <路径> 指定另外的安装根⽬录-b, –dbpath <路径> 指定另外的数据库位置–cachedir <⽬录> 指定另外的软件包缓存位置–arch <架构> 设定另外的架构2,pacman -Q

1. [arch@ghostbb ~]$ pacman -Q --help

2. ⽤法: pacman {-Q --query} [选项] [软件包] 3. 选项:

4. -c, --changelog 查看某软件包的更新⽇志

5. -d, --deps 列出所有作为依赖关系安装的软件包 [过滤器] 6. -e, --explicit 列出所有单独指定安装的软件包 [过滤器] 7. -g, --groups 查看某软件包组所属的所有软件包 8. -i, --info 查看软件包信息 (-ii 查看备份⽂件) 9. -k, --check 检查该软件包拥有的⽂件是否存在 10. -l, --list 列出被查询软件包的内容

11. -m, --foreign 列出没有在同步数据库时找到的已安装软件包 [过滤器] 12. -o, --owns <⽂件> 查询哪个软件包拥有 <⽂件> 13. -p, --file <软件包> 从某个软件包⽽不是数据库查询

14. -s, --search 搜寻符合指定字符串的已安装本地的软件包 15. -t, --unrequired 列出所有不被其他软件包要求的软件包 [过滤器] 16. -u, --upgrades 列出所有可升级的软件包 [过滤器] 17. -q, --quiet 在查询或搜索时显⽰较少的信息 18. --config <路径> 指定另外的配置⽂件 19. --logfile <路径> 指定另外的⽇志⽂件 20. --noconfirm 不询问确认

21. --noprogressbar 下载⽂件时不显⽰进度条 22. --noscriptlet 不执⾏安装⼩脚本 23. -v, --verbose 循环执⾏ 24. -- debug 显⽰除错信息

25. -r, --root <路径> 指定另外的安装根⽬录 26. -b, --dbpath <路径> 指定另外的数据库位置 27. --cachedir <⽬录> 指定另外的软件包缓存位置 28. --arch <架构> 设定另外的架构

[arch@ghostbb ~]$ pacman -Q –help⽤法: pacman {-Q –query} [选项] [软件包]选项:

-c, –changelog 查看某软件包的更新⽇志

-d, –deps 列出所有作为依赖关系安装的软件包 [过滤器]-e, –explicit 列出所有单独指定安装的软件包 [过滤器]-g, –groups 查看某软件包组所属的所有软件包-i, –info 查看软件包信息 (-ii 查看备份⽂件)-k, –check 检查该软件包拥有的⽂件是否存在-l, –list 列出被查询软件包的内容

-m, –foreign 列出没有在同步数据库时找到的已安装软件包 [过滤器]-o, –owns <⽂件> 查询哪个软件包拥有 <⽂件>-p, –file <软件包> 从某个软件包⽽不是数据库查询

-s, –search 搜寻符合指定字符串的已安装本地的软件包

-t, –unrequired 列出所有不被其他软件包要求的软件包 [过滤器]-u, –upgrades 列出所有可升级的软件包 [过滤器]-q, –quiet 在查询或搜索时显⽰较少的信息–config <路径> 指定另外的配置⽂件–logfile <路径> 指定另外的⽇志⽂件–noconfirm 不询问确认

–noprogressbar 下载⽂件时不显⽰进度条–noscriptlet 不执⾏安装⼩脚本-v, –verbose 循环执⾏— debug 显⽰除错信息

-r, –root <路径> 指定另外的安装根⽬录-b, –dbpath <路径> 指定另外的数据库位置–cachedir <⽬录> 指定另外的软件包缓存位置–arch <架构> 设定另外的架构3,pacman -R

1. [arch@ghostbb ~]$ pacman -R --help

2. ⽤法: pacman {-R --remove} [选项] <软件包> 3. 选项:

4. -c, --cascade 删除软件包及所有的依赖于此的软件包 5. -d, --nodeps 略过依赖关系检查

6. -k, --dbonly 只删除数据库记录,不删除⽂件 7. -n, --nosave 同时删除配置⽂件

8. -s, --recursive 同时删除 (不会破坏其他软件包的) 依赖关系(-ss·也包括单独指定安装的依赖关系) 9. -u, --unneeded 同时删除不需要的 (且不会破坏其他软件包的) 依赖关系 10. --print 仅打印⽬标⽽不执⾏操作 11. --print-format <字符串>指定如何打印⽬标 12. --config <路径> 指定另外的配置⽂件 13. --logfile <路径> 指定另外的⽇志⽂件 14. --noconfirm 不询问确认

15. --noprogressbar 下载⽂件时不显⽰进度条 16. --noscriptlet 不执⾏安装⼩脚本 17. -v, --verbose 循环执⾏ 18. -- debug 显⽰除错信息

19. -r, --root <路径> 指定另外的安装根⽬录 20. -b, --dbpath <路径> 指定另外的数据库位置 21. --cachedir <⽬录> 指定另外的软件包缓存位置 22. --arch <架构> 设定另外的架构

[arch@ghostbb ~]$ pacman -R –help

⽤法: pacman {-R –remove} [选项] <软件包>选项:

-c, –cascade 删除软件包及所有的依赖于此的软件包-d, –nodeps 略过依赖关系检查

-k, –dbonly 只删除数据库记录,不删除⽂件-n, –nosave 同时删除配置⽂件

-s, –recursive 同时删除 (不会破坏其他软件包的) 依赖关系(-ss·也包括单独指定安装的依赖关系)-u, –unneeded 同时删除不需要的 (且不会破坏其他软件包的) 依赖关系–print 仅打印⽬标⽽不执⾏操作

–print-format <字符串>指定如何打印⽬标–config <路径> 指定另外的配置⽂件–logfile <路径> 指定另外的⽇志⽂件–noconfirm 不询问确认

–noprogressbar 下载⽂件时不显⽰进度条–noscriptlet 不执⾏安装⼩脚本-v, –verbose 循环执⾏— debug 显⽰除错信息

-r, –root <路径> 指定另外的安装根⽬录-b, –dbpath <路径> 指定另外的数据库位置–cachedir <⽬录> 指定另外的软件包缓存位置–arch <架构> 设定另外的架构4,pacman -S

1. [arch@ghostbb ~]$ pacman -S --help

2. ⽤法: pacman {-S --sync} [选项] [软件包] 3. 选项:

4. --asdeps 作为⾮单独指定安装的软件包安装 5. --asexplicit 作为单独指定安装的软件包安装

6. -c, --clean 从缓存⽬录中删除旧软件包 (-cc 清除所有) 7. -d, --nodeps 略过依赖关系检查

8. -f, -force 强制安装,覆盖存在冲突的⽂件 9. -g, --groups 查看某软件包组所属的所有软件包 10. -i, --info 查看软件包信息

11. -l, --list <软件库> 查看在该软件库中的软件包清单

12. -s, --search 按照指定字符串查询远端软件库 13. -u, --sysupgrade 升级所有已安装的软件包 (-uu 可启⽤降级) 14. -w, --downloadonly 下载但不安装/升级软件包 15. -y, --refresh 从服务器下载新的软件包数据库 16. --needed 不重新安装已经为最新的软件包

17. --ignore <软件包> 升级时忽略某个软件包 (可多次使⽤)

18. --ignoregroup <软件包组>升级时忽略某个软件包组 (可多次使⽤) 19. --print 仅打印⽬标⽽不执⾏操作 20. --print-format <字符串>指定如何打印⽬标

21. -q, --quiet 在查询或搜索时显⽰较少的信息 22. --config <路径> 指定另外的配置⽂件 23. --logfile <路径> 指定另外的⽇志⽂件 24. --noconfirm 不询问确认

25. --noprogressbar 下载⽂件时不显⽰进度条 26. --noscriptlet 不执⾏安装⼩脚本 27. -v, --verbose 循环执⾏ 28. -- debug 显⽰除错信息

29. -r, --root <路径> 指定另外的安装根⽬录 30. -b, --dbpath <路径> 指定另外的数据库位置

31. --cachedir <⽬录> 指定另外的软件包缓存位置 32. --arch <架构> 设定另外的架构

[arch@ghostbb ~]$ pacman -S –help⽤法: pacman {-S –sync} [选项] [软件包]选项:

–asdeps 作为⾮单独指定安装的软件包安装–asexplicit 作为单独指定安装的软件包安装

-c, –clean 从缓存⽬录中删除旧软件包 (-cc 清除所有)-d, –nodeps 略过依赖关系检查

-f, -force 强制安装,覆盖存在冲突的⽂件

-g, –groups 查看某软件包组所属的所有软件包-i, –info 查看软件包信息

-l, –list <软件库> 查看在该软件库中的软件包清单-s, –search 按照指定字符串查询远端软件库

-u, –sysupgrade 升级所有已安装的软件包 (-uu 可启⽤降级)-w, –downloadonly 下载但不安装/升级软件包-y, –refresh 从服务器下载新的软件包数据库–needed 不重新安装已经为最新的软件包

–ignore <软件包> 升级时忽略某个软件包 (可多次使⽤)

–ignoregroup <软件包组>升级时忽略某个软件包组 (可多次使⽤)–print 仅打印⽬标⽽不执⾏操作

–print-format <字符串>指定如何打印⽬标-q, –quiet 在查询或搜索时显⽰较少的信息–config <路径> 指定另外的配置⽂件–logfile <路径> 指定另外的⽇志⽂件–noconfirm 不询问确认

–noprogressbar 下载⽂件时不显⽰进度条–noscriptlet 不执⾏安装⼩脚本-v, –verbose 循环执⾏— debug 显⽰除错信息

-r, –root <路径> 指定另外的安装根⽬录-b, –dbpath <路径> 指定另外的数据库位置–cachedir <⽬录> 指定另外的软件包缓存位置–arch <架构> 设定另外的架构5,pacman -U

1. [arch@ghostbb ~]$ pacman -U --help

2. ⽤法: pacman {-U --upgrade} [选项] <⽂件> 3. 选项:

4. --asdeps 作为⾮单独指定安装的软件包安装 5. --asexplicit 作为单独指定安装的软件包安装 6. -d, --nodeps 略过依赖关系检查

7. -f, -force 强制安装,覆盖存在冲突的⽂件

8. -k, --dbonly 添加数据库记录,不安装或保持现存⽂件 9. --print 仅打印⽬标⽽不执⾏操作

10. --print-format <字符串> 指定如何打印⽬标 11. --config <路径> 指定另外的配置⽂件 12. --logfile <路径> 指定另外的⽇志⽂件 13. --noconfirm 不询问确认

14. --noprogressbar 下载⽂件时不显⽰进度条 15. --noscriptlet 不执⾏安装⼩脚本 16. -v, --verbose 循环执⾏ 17. -- debug 显⽰除错信息

18. -r, --root <路径> 指定另外的安装根⽬录 19. -b, --dbpath <路径> 指定另外的数据库位置 20. --cachedir <⽬录> 指定另外的软件包缓存位置 21. --arch <架构> 设定另外的架构

[arch@ghostbb ~]$ pacman -U –help

⽤法: pacman {-U –upgrade} [选项] <⽂件>选项:

–asdeps 作为⾮单独指定安装的软件包安装–asexplicit 作为单独指定安装的软件包安装-d, –nodeps 略过依赖关系检查

-f, -force 强制安装,覆盖存在冲突的⽂件

-k, –dbonly 添加数据库记录,不安装或保持现存⽂件–print 仅打印⽬标⽽不执⾏操作

–print-format <字符串> 指定如何打印⽬标–config <路径> 指定另外的配置⽂件–logfile <路径> 指定另外的⽇志⽂件

–noconfirm 不询问确认

–noprogressbar 下载⽂件时不显⽰进度条–noscriptlet 不执⾏安装⼩脚本-v, –verbose 循环执⾏— debug 显⽰除错信息

-r, –root <路径> 指定另外的安装根⽬录-b, –dbpath <路径> 指定另外的数据库位置–cachedir <⽬录> 指定另外的软件包缓存位置–arch <架构> 设定另外的架构

三,⼀些常規⽤法1,安装包

安装或者升级单个软件包,或者⼀列软件包(包含依赖包),使⽤如下命令:pacman -S mysql

有时候在不同的软件仓库中,⼀个软件包有多个版本(⽐如extra和community)。你可以选择⼀个来安装:pacman -S extra/mysql

pacman -S community/mysql

你也可以在⼀个命令⾥同步包数据库并且安装⼀个软件包:pacman -Sy mysql2,删除包

删除单个软件包,保留其全部已经安装的依赖关系pacman -R mysql

删除指定软件包,及其所有没有被其他已安装软件包使⽤的依赖关系:pacman -Rs mysql3,升级系统pacman -Syu安装⼀个本地包:

pacman -U 后⾯根上已下载的包或者是远程URL

当我们⽤pacman进⾏升级时,经常会遇到下载的包没有,到源⾥看时,要升级的包是有的,但是版本不⼀样,你要下的版本是没有,这种情况下,就可以⽤pacman -u4,查询包查询可⽤安装包pacman -Ss mysql要查询已安装的软件包:pacman -Qs mysql5,其他⽤法

清理当前未被安装软件包的缓存(/var/cache/pacman/pkg):pacman -Sc下载包⽽不安装它:pacman -Sw mysql

来源:http://xiexiejiao.cn/linux/pacman-introduce.html

因篇幅问题不能全部显示,请点此查看更多更全内容