6.5. dpkg

简介:

6.5.1. -i|--install 安装.deb包

$ sudo dpkg -i netkiller-1.0.deb
			

6.5.2. -r|--remove 卸载.deb包

$ sudo dpkg -r netkiller
			

6.5.3. -L|--listfiles <package> ... List files `owned' by package(s). 列出包中的文件

$ dpkg -L netkiller|more
/.
/opt
/opt/neo
/opt/neo/netkiller-1.0
/opt/neo/netkiller-1.0/linux
/opt/neo/netkiller-1.0/linux/docbook.css
/opt/neo/netkiller-1.0/linux/apas03.html
/opt/neo/netkiller-1.0/linux/shell
			

6.5.4. -l|--list [<pattern> ...] List packages concisely. 列出.deb包

			
$ sudo dpkg -l netkiller
$ dpkg -l netkiller
Desired=Unknown/Install/Remove/Purge/Hold
| Status=Not/Inst/Conf-files/Unpacked/halF-conf/Half-inst/trig-aWait/Trig-pend
|/ Err?=(none)/Reinst-required (Status,Err: uppercase=bad)
||/ Name           Version        Description
+++-==============-==============-============================================
un  netkiller      <none>         (no description available)
			
			

6.5.5. Status

系统上装了哪些软件包

要查看 Debian 系统上安装的所有软件包的状态, 运行

     dpkg --list

输出每个软件包的一行简单介绍, 2字符的状态标志, 包名, 所安装版本, 和简要描述.

查看以 "foo" 开头的软件包的状态, 执行:

     dpkg --list 'foo*'

要得到某个软件包的更详细信息, 执行:

     dpkg --status packagename
			

List of installed software packages

$ dpkg-query -W
			

Description of installed software packages

$ dpkg -l
			

找出一个文件的归属包

dpkg --search cachemgr
squid3-cgi: /usr/lib/cgi-bin/cachemgr3.cgi
squid3-cgi: /usr/share/man/man8/cachemgr3.cgi.8.gz
squid3-cgi: /etc/squid3/cachemgr.conf
			

6.5.6. dpkg-deb - Debian package archive (.deb) manipulation tool

6.5.6.1. -X, --vextract archive directory Extract and display the filenames contained by a package

$ dpkg -X dmd_2.057-0_amd64.deb dmd_2.057-0_amd64
				

6.5.6.2. -e, --control archive [directory] Extracts the control information files from a package archive into the specified directory.

$ dpkg -e dmd_2.057-0_amd64.deb

$ find DEBIAN/
DEBIAN/
DEBIAN/conffiles
DEBIAN/md5sum
DEBIAN/control
				

6.5.6.3. -b, --build directory [archive|directory]

在你的目录下创建DEBIAN目录与control文件

				
mkdir DEBIAN/

cat >> DEBIAN/control <<EOF
Package: netkiller
Version: 1.0-0
Architecture: amd64
Maintainer: Neo Chen <netkiller@msn.com>
Installed-Size: 51196
Depends: libc6-dev, gcc, gcc-multilib, libc6 (>= 2.11), libgcc1 (>= 1:4.1.1), libstdc++6 (>= 4.1.1)
Section: devel
Priority: optional
Description: Netkiller ebook
 .
 Main designer: Neo Chen
 .
 Homepage: http://netkiller.github.com/
 .
EOF
				
				
				
$ dpkg -b dlang dlang.deb
dpkg-deb: building package `netkiller' in `dlang.deb'.		

$ dpkg --info dlang.deb
 new debian package, version 2.0.
 size 263266 bytes: control archive= 371 bytes.
     354 bytes,    14 lines      control              
 Package: netkiller
 Version: 1.0-0
 Architecture: amd64
 Maintainer: Neo Chen <netkiller@msn.com>
 Installed-Size: 51196
 Depends: libc6-dev, gcc, gcc-multilib, libc6 (>= 2.11), libgcc1 (>= 1:4.1.1), libstdc++6 (>= 4.1.1)
 Section: devel
 Priority: optional
 Description: Netkiller ebook
  .
  Main designer: Neo Chen
  .
  Homepage: http://netkiller.github.com/
  .

$ dpkg --contents dlang.deb
drwxr-xr-x neo/neo           0 2012-02-06 11:22 ./
-rw-r--r-- neo/neo         144 2012-02-01 16:35 ./hello.lst
-rwxr-xr-x neo/neo         321 2012-01-08 21:25 ./test.d
-rw-r--r-- neo/neo         207 2012-02-01 15:57 ./d4py.d
-rwxr-xr-x neo/neo      919366 2012-02-01 16:28 ./hello
-rw-r--r-- neo/neo        6452 2012-02-01 16:28 ./hello.o
-rwxr--r-- neo/neo          80 2012-01-08 21:28 ./hello.d

				
				

6.5.7. dpkg-reconfigure

$ sudo dpkg-reconfigure package
			

所有未完成的配置步骤,主要是你在安装过程中出现中断后,可以使用下面命令补救。

$ sudo dpkg --configure -a			
	





原文出处:Netkiller 系列 手札
本文作者:陈景峯
转载请与作者联系,同时请务必标明文章原始出处和作者信息及本声明。

目录
相关文章
|
Ubuntu
Ubuntu安装aptitude
Ubuntu安装aptitude
140 0
|
1月前
|
存储 算法 Linux
DNF和Yum
DNF和Yum
150 3
|
1月前
|
缓存 算法 Linux
dnf命令
dnf命令
50 2
|
6月前
|
Ubuntu Linux
DPKG与RPM
【5月更文挑战第13天】DPKG与RPM。
60 0
|
存储 Linux 索引
apt & apt-get命令
apt & apt-get命令
163 0
|
Linux
apt
使用apt-get install 安装软件 使用apt-cache search 查询软件 使用dpkg -i 安装ded软件包, 类似于CentOS中的rpm包 -L 查询软件安装的位置 -l 显示包版本 使用apt-get remove 删除软件 使用apt-get update 更新 dpkg dpkg -i package.deb:安装一个 Debian 软件包,如你手动下载的文件。
1200 0
|
Linux
aptitude 与 apt-get 的区别与联系
起初GNU/Linux系统中只有.tar.gz。用户 必须自己编译他们想使用的每一个程序。在Debian出现后,人们认为有必要在系统 中添加一种机 制用来管理 安装在计算机上的软件包。人们将这套系统称为 dpkg。
1704 0