debian查询软件包

查询已经安装的软件包:
dpkg-query -l

apt list --installed

查询没有安装的软件包(或者说查询仓库中的软件包):
apt-cache search upnp

查看软件包 包含有哪些文件,有以下3种方式:
1)
dpkg -L miniupnpd

2)
dpkg-deb -c /var/cache/apt/archives/miniupnpd_1.8.20140523-4.1+deb9u2_amd64.deb

3)apt-get install apt-file
apt-file update
apt-file list miniupnpd

安装软件
apt-get install xxx
apt-get install -s xxx 模拟安装 可以查看需要安装哪些依赖

删除软件包
apt-get的卸载相关的命令有remove/purge/autoremove/clean/autoclean等。具体来说:

apt-get purge / apt-get –purge remove
删除已安装包(不保留配置文件)。
如软件包a,依赖软件包b,则执行该命令会删除a,而且不保留配置文件

apt-get autoremove
删除为了满足依赖而安装的,但现在不再需要的软件包(包括已安装包),保留配置文件。

apt-get remove
删除已安装的软件包(保留配置文件),不会删除依赖软件包,且保留配置文件。

apt-get autoclean
APT的底层包是dpkg, 而dpkg 安装Package时, 会将 *.deb 放在 /var/cache/apt/archives/中,apt-get autoclean 只会删除 /var/cache/apt/archives/ 已经过期的deb。

apt-get clean
使用 apt-get clean 会将 /var/cache/apt/archives/ 的 所有 deb 删掉,可以理解为 rm /var/cache/apt/archives/*.deb。

那么如何彻底卸载软件呢?
具体来说可以运行如下命令:

删除软件及其配置文件
apt-get --purge remove
删除没用的依赖包
apt-get autoremove
此时dpkg的列表中有“rc”状态的软件包,可以执行如下命令做最后清理:
dpkg -l |grep ^rc|awk '{print $2}' |sudo xargs dpkg -P
当然如果要删除暂存的软件安装包,也可以再使用clean命令。

dpkg的简略使用 https://blog.csdn.net/yang3572/article/details/80991108

Debian体系下本地安装DEB包的3种命令行工具 https://blog.csdn.net/ieeso/article/details/110920478

posted @ 2020-09-28 19:25  helloweifa  阅读(2731)  评论(0编辑  收藏  举报