Debian-linux软件管理器-dpkg+apt


Debian-linux软件管理器-dpkg+apt
 
1.1dpkg简介
“dpkg ”是“Debian Package ”的简写。
为 “Debian” 专门开发的套件管理系统,方便软件的安装、更新及移除。
dpkg是Debian软件包管理器的基础,它被伊恩·默多克创建于1993年。
dpkg与RPM十分相似,同样被用于安装、卸载和供给.deb软件包相关的信息。
dpkg本身是一个底层的工具。
上层的工具,如APT被用于从远程获取软件包以及处理复杂的软件包关系。 
---------------------------------------------------------------------------------------------------
1.2dpkg命令
1)安装软件
命令行:dpkg -i <.deb file name>
示例:dpkg -i avg71flm_r28-1_i386.deb
2)安装一个目录下面所有的软件包
命令行:dpkg -R
示例:dpkg -R /usr/local/src
3)释放软件包,但是不进行配置
命令行:dpkg –-unpack package_file 如果和-R一起使用,参数可以是一个目录
示例:dpkg –-unpack avg71flm_r28-1_i386.deb
4)重新配置和释放软件包
命令行:dpkg –configure package_file
如果和-a一起使用,将配置所有没有配置的软件包
示例:dpkg –configure avg71flm_r28-1_i386.deb
5)删除软件包(保留其配置信息)
命令行:dpkg -r
示例:dpkg -r avg71flm
6)替代软件包的信息
命令行:dpkg –update-avail <Packages-file>
7)合并软件包信息
dpkg –merge-avail <Packages-file>
8)从软件包里面读取软件的信息
命令行:dpkg -A package_file
9)删除一个包(包括配置信息)
命令行:dpkg -P
10)丢失所有的Uninstall的软件包信息
命令行:dpkg –forget-old-unavail
11)删除软件包的Avaliable信息
命令行:dpkg –clear-avail
12)查找只有部分安装的软件包信息
命令行:dpkg -C
13)比较同一个包的不同版本之间的差别
命令行:dpkg –compare-versions ver1 op ver2
14)显示帮助信息
命令行:dpkg –help
15)显示dpkg的Licence
命令行:dpkg –licence (or) dpkg –license
16)显示dpkg的版本号
命令行:dpkg –version
17)建立一个deb文件
命令行:dpkg -b directory [filename]
18)显示一个Deb文件的目录
命令行:dpkg -c filename
19)显示一个Deb的说明
命令行:dpkg -I filename [control-file]
20)搜索Deb包
命令行:dpkg -l package-name-pattern
示例:dpkg -I vim
21)显示所有已经安装的Deb包,同时显示版本号以及简短说明
命令行:dpkg -l
22)报告指定包的状态信息
命令行:dpkg -s package-name
示例:dpkg -s ssh
23)显示一个包安装到系统里面的文件目录信息
命令行:dpkg -L package-Name
示例:dpkg -L apache2
24)搜索指定包里面的文件(模糊查询)
命令行:dpkg -S filename-search-pattern
25)显示包的具体信息
命令行:dpkg -p package-name
示例:dpkg -p cacti
---------------------------------------------------------------------------------------------------
1.3apt命令
APT(the Advanced Packaging Tool)是Ubuntu 软件包管理系统的高级界面,
Ubuntu 是基于Debian的,APT由几个名字以“apt-”打头的程序组成。
apt-get、apt-cache 和apt-cdrom是处理软件包的命令行工具。
 
APT简介
APT(the Advanced Packaging Tool)是Ubuntu 软件包管理系统的高级界面,
Ubuntu 是基于Debian的,APT由几个名字以“apt-”打头的程序组成。
apt-get、apt-cache 和apt-cdrom是处理软件包的命令行工具。
Linux命令—apt,也是其它用户前台程序的後端,如dselect 和aptitude。作为操作的一部分,
APT使用一个文件列出可获得软件包的镜像站点地址,这个文件就是/etc/apt/sources.list。
 
APT工作原理
APT是一个客户/服务器系统。
在服务器上先复制所有DEB包(DEB是Debian软件包格式的文件扩展名),
然后用APT的分析工具(genbasedir)根据每个DEB 包的包头(Header)信息对所有的DEB包进行分析,
并将该分析结果记录在一个文件中,这个文件称为DEB 索引清单,APT服务器的DEB索引清单置于base文件夹内。
一旦APT 服务器内的DEB有所变动,一定要使用genbasedir产生新的DEB索引清单。
客户端在进行安装或升级时先要查询DEB索引清单,从而可以获知所有具有依赖关系的软件包,并一同下载到客户端以便安装。
当客户端需要安装、升级或删除某个软件包时,客户端计算机取得DEB索引清单压缩文件后,
会将其解压置放于/var/state/apt/lists/,而客户端使用apt-getinstall或apt-getupgrade命令的时候,
就会将这个文件夹内的数据和客户端计算机内的DEB数据库比对,知道哪些DEB已安装、未安装或是可以升级的。
 
APT常用命令
apt-cache search # ——(package 搜索包)
apt-cache show #——(package 获取包的相关信息,如说明、大小、版本等)
sudoapt-getinstall # ——(package 安装包)
sudoapt-getreinstall # —–(package - - reinstall 重新安装包)
sudoapt-get-f install # —–(强制安装?#”-f = –fix-missing”当是修复安装吧…)
sudoapt-getremove #—–(package 删除包)
sudoapt-getremove - - purge # ——(package 删除包,包括删除配置文件等)
sudoapt-getautoremove --purge # —-(package 删除包及其依赖的软件包配置文件等(只对6.10有效,强烈推荐))
sudoapt-getupdate #——更新源
sudoapt-getupgrade #——更新已安装的包
sudoapt-getdist-upgrade # ———升级系统
sudoapt-getdselect-upgrade #——使用 dselect 升级
apt-cache depends #——-(package 了解使用依赖)
apt-cache rdepends # ——(package 了解某个具体的依赖?#当是查看该包被哪些包依赖吧…)
sudoapt-getbuild-dep # ——(package 安装相关的编译环境)
apt-getsource #——(package 下载该包的源代码)
sudoapt-getclean && sudo apt-get autoclean # ——–清理下载文件的存档 && 只清理过时的包
sudoapt-getcheck #——-检查是否有损坏的依赖
apt-get install# ——(下载 以及所有倚赖的包裹,同时进行包裹的安装或升级。
apt-get remove [--purge]# ——(移除 以及任何倚赖这个包裹的其它包裹。)
apt-get update# ——(升级来自 Debian 镜像的包裹列表,如果你想安装当天的任何软件,至少每天运行一次,
而且每次修改了/etc/apt/sources.list 后,必须执行。)
apt-get upgrade [-u]# ——(升级所有已经安装的包裹为最新可用版本。不会安装新的或移除老的包裹。

相关内容

    暂无相关文章