`
lzquan
  • 浏览: 197273 次
  • 性别: Icon_minigender_1
  • 来自: 东莞
社区版块
存档分类
最新评论

dpkg命令解析

阅读更多

linux /javasky 

dpkg是Debian的中级软件包管理器,类似RPM.
dpkg是Debian软件包管理系统的中流砥柱,负责安全卸载软件包,配置,以及维护已安装的软件包.也是Debian系统中众多软件包管理工具的后端.有关dpkg的更多介绍参阅:http://www.dpkg.org
系统中所有packages的信息都在/var/lib/dpkg/目录下,其中子目录”/var/lib/dpkg/info”用于保存各个软件包的配置文件列表.
.conffiles 记录了软件包的配置文件列表
.list 保存软件包中的文件列表,用户可以从.list的信息中找到软件包中文件的具体安装位置.
.md5sums 记录了软件包的md5信息,这个信息是用来进行包验证的.
.prerm 脚本在Debian报解包之前运行,主要作用是停止作用于即将升级的软件包的服务,直到软件包安装或升级完成.
.postinst脚本是完成Debian包解开之后的配置工作,通常用于执行所安装软件包相关命令和服务重新启动.
/var/lib/dpkg/available文件的内容是软件包的描述信息,该软件包括当前系统所使用的Debian安装源中的所有软件包,其中包括当前系统中已安装的和未安装的软件包.
dpkg
询以安装的信息
查询当前系统所有已安装的deb包
dpkg –l 命令用于查询当前系统所有以安装的deb包的信息.,通过less和grep可以执行更复杂的查询工作.
例如查找跟vim有关的软件包,dpkg –l |grep –ivim
(如发现iU 表示软件包未安装成功,ii表示安装成功)
查看已安装软件包的详细情况
dpkg –s 命令查看软件包的详细情况,包括版本,依赖之类的
查询系统中所安装软件包所安装的文件
dpkg –L 命令用于查询系统中所安装软件包的安装的文件安装到系统的位置和安装了那些.
小提示: 如何可以看软件包装到哪个地方?
用apt-get install *
如何可以看软件包装到哪个地方?
dpkg -L package-name|more


查询系统中某个文件属于那个软件包
dpkg –S 命令用于了解当前的软件属于那个软件包
查询未安装的信息
查询未安装软件包详细信息
dpkg –I 命令用于查看未安装软件包的详细信息,以便了解该软件包是否需要安装.
查询deb包文件中所包含的文件
dpkg –c 显示未安装deb软件包所包含的文件列表,以及安装位置
安装软件包
安装deb软件包
dpkg –i 手工安装deb包到系统中,不过有时会存在Dpends关系,建议使用apt-get 来安装.
如果通过dpkg –i安装软件后由于Dpends关系没有安装成功,可通 过apt-get –f install解决
解决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:
ftp 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软件包
卸载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
用于配置语言
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
分享到:
评论

相关推荐

    linux的dpkg命令的使用

    本文档介绍了dpkg命令的参数和使用方法

    用dpkg命令制作deb包1

    用dpkg命令制作deb包1

    dpkg命令安装包,查看系统架构类型信息

    dpkg命令安装包,查看系统架构类型命令: dpkg --print-architecture

    dpkg-deb命令 Debian包管理器

    可以通过dpkg命令调用dpkg-deb命令的功能,dpkg命令的任何选项将被传递给dpkg-deb命令去执行。 语法格式: dpkg-deb [参数] [文件] 常用参数: -c 显示软件包中的文件列表 -e 将主控信息解压 -f 把字段内容...

    dpkg-query命令 在dpkg数据库中查询软件包

    dpkg-query命令是Debian linux中软件包的查询工具,它从dpkg软件包数据库中查询并显示软件包的信息。 查询软件包时,软件包的名称支持通配符,如“gcc*”将查询所有以“gcc”开头的软件包。 语法格式: dpkg-query ...

    dpkg命令 管理deb包

    dpkg命令的英文全称是“Debian package”,故名意思是Debian Linux系统用来安装、创建和管理软件包的实用工具。 语法格式:dpkg [参数] 常用参数: -i 安装软件包 -r 删除软件包 -l 显示已安装软件包...

    dpkg-divert命令 将文件安装到转移目录

    dpkg-divert命令是用于将引起冲突的文件安装到转移目录而非默认目录。 语法格式: dpkg-divert [参数] [文件] 常用参数: — -add 添加一个转移文件 — -remove 删除一个转移文件 — -list 列出匹配的转移 ...

    dpkg-trigger命令 软件包触发器

    dpkg-trigger命令是Debian linux下的软件包触发器。 dpkg-trigger命令只能应用在维护者脚本中,或者必须使用“- — by-package”参数。 语法格式 : dpkg-trigger [参数] [触发器] 常用参数: — -check-...

    dpkg_1.16压缩包

    dpkg_1.16压缩包

    ubuntu20.04离线dpkg安装libtool

    ubuntu20.04离线dpkg安装libtool

    dpkg-split命令 分割软件包

    dpkg-split命令用来将Debian linux中的大软件包分割成小软件包,它还能够将已分割的文件进行合并。 dpkg-split命令只能在Debian系统上使用,因为他需要调用dpkg-deb命令分析软件包的组成。 语法格式: dpkg-split ...

    dpkg-preconfigure命令 软件包安装之前询问问题

    dpkg-preconfigure命令用于在Debian linux中软件包安装之前询问问题。如果软件包不需要进行配置,则不会询问任何问题。 在非交互式环境下安装支持debconf的软件时,用户无法在线提供软件的配置项。因此用户需要通过...

    dpkg sudo 1.9.12p1安装包

    dpkg sudo 1.9.12p1安装包,适用于Ubuntu 20.0.4

    dpkg-statoverride命令 改写所有权和模式

    dpkg-statoverride命令是Debian linux下改写软件包状态的实用工具,dpkg-statoverride命令有3个基本功能即添加、删除、和显示改写列表。 使用dpkg-statoverride命令删除改写后,如果希望恢复旧的权限,需要手工设置...

    dpkg-reconfigure命令 重新配置已安装的软件包

    dpkg-reconfigure命令是Debian linux中重新配置已经安装过的软件包,可以将一个或者多个已安装的软件包传递给此指令,它将询问软件初次安装后的配置问题。 当用户需要再次对软件包配置的时候,可以使用dpkg-...

    ubuntu下用dpkg命令行运行deb安装包的方法

    答案是:使用dpkg命令。 deb是Debian Linux的安装格式,跟Red Hat的rpm非常相似,最基本的安装命令是:dpkg -i file.deb dpkg 是Debian Package的简写,是为Debian 专门开发的套件管理系统,方便软件的安装、更新及...

    dpkg_1.17.5ubuntu5.8.tar

    此版本解决dpkg报错dpkg-deb: error: archive 'device-tree-compiler_1.4.5-3_amd64.deb' has premature member 'control.tar.xz' before 'control.tar.gz' bug

    dpkg-pacman:dpkgapt-cache 命令的更好输出,例如 arch 的 pacman

    Ubuntu 中用于包管理的 dpkg 命令有一个非常丑陋的输出,尤其是与 Arch 的pacman或 Gentoo 的emerge 。 所以我想写一个小脚本来美化它的输出,像这样: 目前,我只完成了几个命令,还有很多工作要做。 欢迎任何...

    chmod命令..

    chmod命令

    ubuntu20.04无网dpkg安装nginx.zip

    ubuntu20.04无网dpkg安装nginx

Global site tag (gtag.js) - Google Analytics