arch 安装准备--包管理的使用pacman
-------
https://wiki.archlinux.org/index.php/Pacman/Tips_and_tricks#List_of_installed_packages
https://wiki.archlinux.org/index.php/Pacman#Installation_reason
已安装的软件包列表
保留所有显式安装的软件包的列表可能很有用,例如备份系统或加快新系统上的安装:
$ pacman -Qqe > pkglist.txt
注意:
使用选项-t,未提及其他显式安装的软件包已经需要的软件包。如果从此列表重新安装,则将安装它们,但仅作为依赖项。
使用选项-n,列表中将省略外部包(例如来自AUR)。
使用 comm -13 <(pacman -Qqdt | sort) <(pacman -Qqdtt | sort) > optdeplist.txt
创建可以重新安装的已安装可选依赖项的列表 --asdeps。
使用 pacman -Qqem > foreignpkglist.txt 创建AUR和已经显式安装等国外包的列表。
最后,要确保系统的已安装软件包与列表匹配,并删除其中未提及的所有软件包:
# pacman -Rsu $(comm -23 <(pacman -Qq | sort) <(sort pkglist.txt))
列出包中所有已更改的文件
如果您怀疑文件损坏(例如,软件/硬件故障),但不确定文件是否已损坏,您可能希望与软件包中的哈希值进行比较。这可以通过pacutils来完成:
# paccheck --md5sum --quiet
重新安装所有包
要重新安装所有本机程序包,请使用:
# pacman -Qqn | pacman -S -
外国(AUR)包裹必须单独重新安装; 你可以列出它们pacman -Qqm。
Pacman默认保留安装原因。
https://wiki.archlinux.org/index.php/Pacman#Installation_reason
列出包
您可能希望获得已安装软件包及其版本的列表,这在报告错误或讨论已安装的软件包时很有用。
列出所有显式安装的包:pacman -Qe。
列出名为的组中的所有包group:pacman -Sg group
列出所有显式安装本地程序包(即存在于同步数据库)不是直接或可选的依赖:pacman -Qent。
列出所有外包(通常是手动下载并安装或包裹从仓库取出)pacman -Qm。
列出所有本地软件包(从同步数据库(一个或多个)安装): pacman -Qn。
按正则表达式列出包:。pacman -Qs regex
使用自定义输出格式的regex列出包:( 需要expac)。expac -s "%-30n %v" regex
仅显示本地已安装软件包的树,请使用pacman -Qi
以下命令将列出所有已安装的软件包及其各自的大小:
$ pacman -Qi | awk '/^Name/{name=$3} /^Installed Size/{print $4$5, name}' | sort -h
要列出所有开发/不稳定包,请运行:
$ pacman -Qq | grep -Ee '-(bzr|cvs|darcs|git|hg|svn)$'
识别不属于任何包的文件
如果您的系统具有不属于任何软件包的杂散文件(如果您不使用软件包管理器安装软件,则常见情况),您可能需要查找此类文件以进行清理。
一种方法是使用# pacreport --unowned-files从pacutils这将列出其他细节之中无主文件。
另一个是列出所有感兴趣的文件并检查pacman:
# find /etc /usr /opt /var | LC_ALL=C pacman -Qqo - 2>&1 > /dev/null | cut -d ' ' -f 5-
删除未使用的包(孤儿)
用于递归删除孤立及其配置文件:
#pacman -Rns $(pacman -Qtdq)
删除基本组以外的所有内容
如果有必要删除除基本组之外的所有包,请尝试这种单行(需要pacman-contrib):
# pacman -R $(comm -23 <(pacman -Qq | sort) <((for i in $(pacman -Qqg base); do pactree -ul "$i"; done) | sort -u))
备份pacman数据库
$ tar -cjf pacman_database.tar.bz2 /var/lib/pacman/local
通过将pacman_database.tar.bz2文件移动到/目录并执行以下命令,可以恢复数据库:
# tar -xjvf pacman_database.tar.bz2
arch 安装准备--包管理的使用pacman的更多相关文章
- 转: CentOS 6.4安装pip,CentOS安装python包管理安装工具pip的方法
from: http://www.linuxde.net/2014/05/15576.html CentOS 6.4安装pip,CentOS安装python包管理安装工具pip的方法 2014/05/ ...
- CentOS 6.4安装pip,CentOS安装python包管理安装工具pip的方法
CentOS 6.4安装pip,CentOS安装python包管理安装工具pip的方法如下: 截至包子写本文的时候,pip最新为 1.5.5 wget --no-check-certificate h ...
- Linux centosVMware 自动化运维Ansible介绍、Ansible安装、远程执行命令、拷贝文件或者目录、远程执行脚本、管理任务计划、安装rpm包/管理服务、 playbook的使用、 playbook中的循环、 playbook中的条件判断、 playbook中的handlers、playbook实战-nginx安装、管理配置文件
一.Ansible介绍 不需要安装客户端,通过sshd去通信 基于模块工作,模块可以由任何语言开发 不仅支持命令行使用模块,也支持编写yaml格式的playbook,易于编写和阅读 安装十分简单,ce ...
- linux程序安装及包管理
程序包的封装类型: RPM软件包:扩展名为“.rpm”,使用rpm命令安装. DEB软件包:扩展名为“.deb”,使用DPKG包管理器. 源代码软件安装:程序员开发完成的原始代码,一般制作成“.tar ...
- 安装一些包管理的记录 win10
我大php的composer 国内镜像包http://pkg.phpcomposer.com/ 还是全局的爽些: omposer config -g repo.packagist composer ...
- Mac上安装brew 包管理工具
Mac 上的包管理工具对于开发者来说是一件非常方便的工具,能够有效的对包进行管理. 所以这篇博客就来简单的讲一下brew 的安装和一些基础命令. brew 全称叫做Homebrew . 1. 首先来说 ...
- Linux服务器中安装python包管理工具pip
pip是python的包管理工具,python的强大之处除了在于语法的简练,还有就是对众多的库支持了. 1.下载pip包管理工具 链接地址:https://pypi.python.org/pypi/p ...
- XCode 7.1 安装 Alcatraz包管理器失败的处理
按照官方的文档(https://github.com/supermarin/Alcatraz),先卸载再重新安装即可.步骤如下: 1. 退出Xcode 2. rm -rf ~/Library/Appl ...
- XCode 安装 Alcatraz包管理器失败的处理
按照官方的文档(https://github.com/supermarin/Alcatraz),先卸载再重新安装即可.步骤如下: 1. 退出Xcode 2. rm -rf ~/Library/Appl ...
随机推荐
- 如何在基于Bytom开发过程中集成IPFS
本文介绍了基于Bytom开发过程中集成IPFS. step1: 搭建bytom节点 比原相关资料:https://github.com/Bytom-Community/Bytom_Docs 搭建byt ...
- msvc命令行cl编译c程序问题及解决
1.cmd命令行cl提示没有这玩意儿 装上Visual Studio之类 2.cl main.c提示缺dll everything搜dll所在路径,在环境配置PATH增加对应bin.IDE 3.cl ...
- Linux 命令行下导入导出 .sql 文件
一.导出数据库用的是 mysqldump 命令 1.导出数据和表结构 /usr/bin/mysqldump -u 用户名 -p 数据库名 > 数据库名.sql 敲回车键后会提示输入密码 注意 m ...
- 文件编码检测.ZC一些资料(包含java的)
1.IMultiLanguage3 或者 IMultiLanguage2 1.1.怎么判断XML 的编码格式(UTF-8或GB2312等)-CSDN论坛.html(https://bbs.csdn.n ...
- SpringMVC使用Swagger
Swagger 是一个规范和完整的框架,用于生成.描述.调用和可视化 RESTful 风格的 Web 服务.总体目标是使客户端和文件系统作为服务器以同样的速度来更新.文件的方法,参数和模型紧密集成到服 ...
- vue的组件之间传值方法
父组件 <template> <div> 这是父组件 <children v-bind:parentToChild="toChild" v-on:sh ...
- 解决table宽度设置不起作用,由于内容问题被撑开 亲测 完美解决
1.在table 标签添加样式 table-layout: fixed; 必须设置width的值:<table style="table-layout: fixed"> ...
- JS--reload 重新加载 true参数
location.reload() 作用是用来重新加载当前显示的页面. 如果调用reload()时不传递参数,页面就会以最有效的方式重新加载. 也就是说,如果页面自上次请求以来并没有改变过,页面就会从 ...
- 转载:VC++6.0注释快捷键设置,略有修改
在Qt Creator,eclipse等编辑器中,都默认有注释代码的快捷键:Ctrl + /. 注释快捷键在程序编程当中的作用相当明显,提高了编程效率.我在网上找到了一个在VC++6.0工具中添加注释 ...
- MapServer Tutorial——MapServer7.2.1教程学习——第一节用例实践:Example1.2 Static Map with Two Layers
MapServer Tutorial——MapServer7.2.1教程学习——第一节用例实践:Example1.2 Static Map with Two Layers 一.前言 上一篇博客< ...