1 .快速使用
功能
命令
安装软件
apt-getinstallsoftname1softname2softname 3……
卸载软件
apt-getremovesoftname1softname2softname 3……
卸载并清除配置
apt-get remove --purge softname1
更新软件信息数据库
获取更新
进行系统升级
获取升级
搜索包
apt-cachesearchsoftname1softname2softname 3……
修复(依赖关系)安装
apt-get-f安装
安装deb软件包
dpkg -i xxx.deb
删除软件包
dpkg -r xxx.deb
与配置文件一起删除
dkg-r----purgeXXX.deb
查看包信息
dpkg -info xxx.deb
显示文件复制的详细信息
dpkg -L xxx.deb
查看系统中安装的软件包信息
dpkg -l
重新配置包
dpkg-reconfigure xx
卸载软件包及其配置式,但无法解决依赖关系
dpkg -p package_name
卸载软件包及其配置文件和依赖关系软件包!
aptitude purge pkgname
清除已删除软件包的所有剩馀配置文件
dkg-l|grep ^ RC ' { print $2} '|sudoxargsdpkg-p
2 .使用详情:
2.1 dpkg介绍和命令使用:
个人资料
dkg是Debian的中级软件包管理器,类似于RPM。
dpkg是Debian软件包管理系统的中心,负责安全卸载软件包、配置软件包和维护已安装的软件包。 它也是Debian系统中许多软件包管理工具的后端。
有关dpkg的详细信息,请访问:http://www.dpkg.org
系统中所有包的信息都位于/var/lib/dpkg/目录中。 其中子目录“/var/lib/dpkg/info”用于存储每个软件包的配置文件列表。
. conffiles记录软件包的配置文件列表
. list可以保存软件包中文件的列表,并从. list信息中找到软件包中文件的特定安装位置。
. md5sums记录软件包的md5信息,该信息用于验证软件包。
. prerm脚本在Debian解压缩包之前运行。 主要作用是停止作用于要升级的软件包的服务,直到软件包安装或升级完成。
. postinst脚本是Debian软件包解包完成后的配置任务,通常用于执行与已安装软件包相关的命令和服务的重新启动。
/var/lib/dpkg/available文件的内容是软件包的说明性信息,其中包含当前系统上使用的Debian安装源中的所有软件包。 这包括当前系统上安装的软件包和未安装的软件包。
2.2 dpkg联系当前系统上安装的所有deb软件包
查询当前系统上安装的所有deb软件包的信息:
dkgl
less和grep允许执行更复杂的查询工作来搜索与vim相关的软件包:
dpkgl|grepivim
显示已安装软件包的详细信息
dpkgs #命令显示软件包的详细信息,包括版本和相关性
查询系统上安装的软件包中安装的文件
dkgl #命令可查询系统上安装的软件包的安装和安装文件的位置。
提示:怎么看软件包装在哪里?
apt-get install *
你怎么能看到软件包装在哪里?
dpkg-l包- name
查询系统中的文件属于该包
dkgs #命令用于告知当前软件属于该软件包
查询未安装的信息
查询未安装的软件包的详细信息
使用dkg-I#命令可以查看有关尚未安装的软件包的详细信息,并确定是否需要安装软件包。
查询deb包文件中包含的文件
dpkgc #显示未安装deb软件包的文件的列表和安装位置
安装软件包
安装deb软件包
dkgI #会在系统上手动安装deb软件包,但可能与Dpends有关,因此建议使用apt-get进行安装。
如果在dpkgI中安装软件后,由于Dpends关系而安装失败,则可以使用apt-getfins tal
l解决解决dpkg –i 安装deb包出现Dpends问题
apt-get –f install #解决Dpends问题.
例如:
dpkg –i lftp_3.1.3-1_i386.deb
Selecting previously deselected package lftp.
(Reading database … 20654 files and directories currently installed.)
unpacking lftp (from lftp_3.1.3-1_i386.deb)…
dpkg:dependency problems prevent configuration of lftp:
lftp depends on libexpat1 (<=1.95.8);however
dpkg : error processing lftp (--install)
dependency problems –leaving unconfigured
Errors were encountered while processing:
lftp
//lftp软件包安装失败
dpkg –l |grep lftp
iU lftp 3.1.3-1 Sophisticated
command-line FTP/HTTP client p
//”dpkg -l” 查询信息表示lftp软件包未安装成功
(iU表示未安装成功,ii表示安装成功)
使用apt-get –f install解决
卸载deb软件包
dpkg –r
用于卸载指定的软件包,该命令只卸载软件包安装到系统中的文件,而不去删除软件包的配置文件,因此不是完全意义上的卸载.但是软件包保存在系统中,可以提供给以后在安装软件包时使用.
例如:dpkg –r prozilla 移除后再用dpkg –l |grep prozilla 查看
会看到rc proc 1.3.6-3woody3 multi-thraded download accelerator
表示软件包已经被卸载,但配置文件仍在“rc”带表配置文件仍在.
卸载软件包并清除配置文件
dpkg –P 用于卸载软件包同时也删除配置文件,dpkg –P 不能解决Dpends问题,建议卸载时使用apt-get操作
重新配置软件包
对于Debian系统中的众多软件包(尤其是系统和服务器软件包)来说,在第一次安装该软件包时候会显示对话框窗口,提示用户输入必要的配置信息.当用户需要再次对软件包配置的时候,可以使用dpkg-reconfigure来对指定的软件包进行配置.
比如dpkg-reconfigure locales
2.2 alien包转换工具
如果我们有很喜欢的RPM包,而又没有deb版本.怎么办~?可以同过alien来转换或者直接安装,这个小家伙可是个很方便的东西!
基本命令如下:
首先通过apt-get install alien来安装.
然后
alien -i name-of-the-pakage.rpm /用来直接安装rpm包
alien -d , --to-deb /Make debian packages,This is the default
例:alien –d package.rpm
alien –r , --to-rpm /*Make rpm packages
例:alien –r package.deb
alien –p , --to-pkg /Make Solaris pkg packages
alien –-to-slp /Make slp packages
alien –t , --to-tgz /*Make tgz packages
alien –T 检测
alien –-patch=patch 设置patch
常用apt命令
apt-cache search # ------(package 搜索包)
apt-cache show #------(package 获取包的相关信息,如说明、大小、版本等)
sudo apt-get install # ------(package 安装包)
sudo apt-get install # -----(package - - reinstall 重新安装包)
sudo apt-get -f install # -----(强制安装?#"-f = --fix-missing"当是修复安装吧...)
sudo apt-get remove #-----(package 删除包)
sudo apt-get remove - - purge # ------(package 删除包,包括删除配置文件等)
sudo apt-get autoremove --purge # ----(package 删除包及其依赖的软件包+配置文件等(只对6.10有效,强烈推荐))
sudo apt-get update #------更新源
sudo apt-get upgrade #------更新已安装的包
sudo apt-get dist-upgrade # ---------升级系统
sudo apt-get dselect-upgrade #------使用 dselect 升级
apt-cache depends #-------(package 了解使用依赖)
apt-cache rdepends # ------(package 了解某个具体的依赖?#当是查看该包被哪些包依赖吧...)
sudo apt-get build-dep # ------(package 安装相关的编译环境)
apt-get source #------(package 下载该包的源代码)
sudo apt-get clean && sudo apt-get autoclean # --------清理下载文件的存档 && 只清理过时的包
sudo apt-get check #-------检查是否有损坏的依赖
2.3 aptitude
与 apt-get 一样,是 Debian 及其衍生系统中功能极其强大的包管理工具。与 apt-get 不同的是,aptitude 在处理依赖问题上更佳一些。举例来说,aptitude 在删除一个包时,会同时删除本身所依赖的包。这样,系统中不会残留无用的包,整个系统更为干净。以下是笔者总结的一些常用 aptitude 命令,仅供参考。
命令 作用
aptitude update 更新可用的包列表
aptitude upgrade 升级可用的包
aptitude dist-upgrade 将系统升级到新的发行版
aptitude install pkgname 安装包
aptitude remove pkgname 删除包
aptitude purge pkgname 删除包及其配置文件
aptitude search string 搜索包
aptitude show pkgname 显示包的详细信息
aptitude clean 删除下载的包文件
aptitude autoclean 仅删除过期的包文件