pacman 实在msys2 下的包管理器
常用命令
pacman -Ss xxx 包搜索
pacman -S xxx 包安装
用法
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}' 及某个操作以查看可得的选项
[zhangy@BlackGhost ~]$ pacman -D --help
用法
pacman {-D --database}
选项
--asdeps 标记为非单独指定安装的软件包
--asexplicit 标记为单独指定安装的软件包
--config 指定另外的配置文件
--logfile 指定另外的日志文件
--noconfirm 不询问确认
--noprogressbar 下载文件时不显示进度条
--noscriptlet 不执行安装小脚本
-v, --verbose 循环执行
-- debug 显示除错信息
-r, --root 指定另外的安装根目录
-b, --dbpath 指定另外的数据库位置
--cachedir 指定另外的软件包缓存位置
--arch 设定另外的架构
[zhangy@BlackGhost ~]$ 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 设定另外的架
[zhangy@BlackGhost ~]$ 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 设定另外的架构
[zhangy@BlackGhost ~]$ 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 设定另外的架构
[zhangy@BlackGhost ~]$ 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
安装包
1,安装或者升级单个软件包
pacman -S mysql
2,有时候在不同的软件仓库中,一个软件包有多个版本(比如extra和community)。你可以选择一个来安装
pacman -S extra/mysql
3,步包数据库并且安装一个软件包
pacman -Sy mysql
实例2
删除包
1,删除单个软件包,保留其全部已经安装的依赖关系
pacman -R mysql
2,删除指定软件包,及其所有没有被其他已安装软件包使用的依赖关系:
pacman -Rs mysql
实例3
升级系统
pacman -Syu
实例4
查询包
1,查询可用安装包
pacman -Ss mysql
2,要查询已安装的软件包:
pacman -Qs mysql
实例5
其他用法
1,清理当前未被安装软件包的缓存
pacman -Sc
2,下载包而不安装
pacman -Sw mysql
实例6
# pacman -Rsc package_name #要删除软件包和所有依赖这个软件包的程序
# pacman -Rdd package_name #要删除软件包,但是不删除依赖这个软件包的其他程序:
# pacman 删除某些程序时会备份重要配置文件,在其后面加上*.pacsave扩展名。-n 选项可 以删除这些文件
# pacman -Rn package_name
# pacman -Rsn package_name
# pacman -Si package_name #显示软件包的详尽的信息
# pacman -Qi package_name #查询本地安装包的详细信息
# pacman -Qii package_name #使用两个 -i 将同时显示备份文件和修改状态
# pacman -Ql package_name #要获取已安装软件包所包含文件的列表
# pacman -Qk package_name #检查软件包安装的文件是否都存在
# pacman -Qo /path/to/file_name #查询数据库获取某个文件属于哪个软件包
# pacman -Qdt #要罗列所有不再作为依赖的软件包(孤立orphans)
# pacman -Qet #要罗列所有明确安装而且不被其它包依赖的软件包
# pactree package_name #要显示软件包的依赖树
# pactree -r package_name #检查一个安装的软件包被那些包依赖