说明:由于图形化界面方法(如Add/Remove… 和Synaptic Package Manageer)比较简单,所以这里主要总结在终端通过命令行方式进行的软件包安装、卸载和删除的方法。
一、Ubuntu中软件安装方法
- APT方式
1. 普通安装:apt-get install softname1 softname2 …;
2. 修复安装:apt-get -f install softname1 softname2... ;
(-f Atemp to correct broken dependencies)
3. 重新安装:apt-get --reinstall install softname1 softname2...;
Dpkg方式
普通安装:dpkg -i package_name.deb源码安装(.tar、tar.gz、tar.bz2、tar.Z)
首先解压缩源码压缩包然后通过tar命令来完成
1. 解xx.tar.gz: tar zxf xx.tar.gz
2. 解xx.tar.Z: tar zxf xx.tar.Z
3. 解xx.tgz: tar zxf xx.tgz
4. 解xx.bz2: bunzip2 xx.bz2
5. 解xx.tar: tar xf xx.tar
然后进入到解压出的目录中,建议先读一下README之类的说明文件, 因为此时不同源代码包或者预编译包可能存在差异,然后建议使用ls -F –color或者ls -F命令(实际上我的只需要 l 命令即可)查看一下可执行文件,可执行文件会以*号的尾部标志。
一般依次执行
./configure
make
sudo make install
即可完成安装。
二、Ubuntu中软件包的卸载方法
- APT方式
```
1. 移除式卸载:apt-get remove softname1 softname2 …;(移除软件包,当包尾部有+时,意为安装)
2. 清除式卸载 :apt-get --purge remove softname1 softname2...;(同时清除配置)
3. 清除式卸载:apt-get purge sofname1 softname2...;(同上,也清除配置文件)
```
- Dpkg方式
```
1. 移除式卸载:dpkg -r pkg1 pkg2 ...;
2. 清除式卸载:dpkg -P pkg1 pkg2...;
####三、Ubuntu中软件包的查询方法
>Dpkg 使用文本文件来作为数据库.通常在 /var/lib/dpkg目录下. 通常在 status 文件中存储软件状态,和控制信息. 在 info/ 目录下备份控制文件, 并在其下的 .list 文件中记录安装文件清单, 其下的 .mdasums 保存文件的 MD5 编码.
体验使用数据库的时刻到了:
![Paste_Image.png](http://upload-images.jianshu.io/upload_images/3156106-20ea87630c8e71f8.png?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240)
> 每条记录对应一个软件包, 注意每条记录的第一, 二, 三个字符. 这就是软件包的状态标识, 后边依此是软件包名称, 版本号, 和简单描述.
1. 第一列(第一字符)为期望值,它包括:
u 状态未知,这意味着软件包未安装,并且用户也未发出安装请求.
i 用户请求安装软件包.
r 用户请求卸载软件包.
p 用户请求清除软件包.
h 用户请求保持软件包版本锁定.
2. 第二列,是软件包的当前状态.此列包括软件包的六种状态.
n 软件包未安装.
i 软件包安装并完成配置.
c 软件包以前安装过,现在删除了,但是它的配置文件还留在系统中.
u 软件包被解包,但还未配置.
f 试图配置软件包,但是失败了.
h 软件包安装,但是但是没有成功.
3. 第三列标识错误状态,可以总结为四种状态.
第一种状态标识没有问题,为空.
其它三种符号则标识相应问题.
h 软件包被强制保持,因为有其它软件包依赖需求,无法升级.
r 软件包被破坏,可能需要重新安装才能正常使用(包括删除).
x 软包件被破坏,并且被强制保持.
>如果觉得 dpkg 的参数过多, 不利于记忆的话, 完全可以使用 dpkg-query 进行 dpkg 数据库查询.
#####应用范例:
查询系统中属于nano的文件:
$ dpkg –listfiles nano 或者 $ dpkg-query -L nano查看软件nano的详细信息:
$ dpkg -s nano 或者 $ dpkg-query -s nano查看系统中软件包状态, 支持模糊查询:
$ dpkg -l 或者 $ dpkg-query -l查看某个文件的归属包:
$ dpkg-query -S nano 或者 $ dpkg -S nano
#####普通 Dpkg用法
$ dpkg -i
安装一个 Debian 包文件,如你手动下载的文件。
$ dpkg -c
列出 的内容。
$ dpkg -I
从 中提取包信息。
$ dpkg -r
移除一个已安装的包。
$ dpkg -P
完全清除一个已安装的包。和 remove 不同的是,remove 只是删掉数据和可执行文件,purge 另外还删除所有的配制文件。
$ dpkg -L
列出 安装的所有文件清单。同时请看
$ dpkg -c
来检查一个 .deb 文件的内容。
$ dpkg -s
显示已安装包的信息。同时请看 apt-cache 显示 Debian 存档中的包信息,以及 dpkg -I 来显示从一个 .deb 文件中提取的包信息。
$ dpkg-reconfigure
重 新配制一个已经安装的包,如果它使用的是 debconf (debconf 为包安装提供了一个统一的配制界面)。你能够重新配制 debconf 它本身,如你想改变它的前端或提问的优先权。例如,重新配制 debconf,使用一个 dialog 前端,简单运行:
$ dpkg-reconfigure –frontend=dialog debconf (如果你安装时选错了,这里可以改回来哟:)