2.4.1. 命令行中的高级软件包管理操作

下面列出了一些其它的软件包管理操作,这些操作对于 aptitude 过于高级或缺失所需的功能。

表 2.13. 高级软件包管理操作

命令操作
COLUMNS=120 dpkg -l <packagename_pattern>列出已安装软件包的列表用于错误报告
dpkg -L <package_name>显示一个已安装软件包的内容
dpkg -L <package_name> | egrep ‘/usr/share/man/man.*/.+’列出一个已安装软件包的 man 手册页
dpkg -S <file_name_pattern>列出匹配文件名的已安装软件包
apt-file search <file_name_pattern>列出档案库中匹配文件名的软件包
apt-file list <package_name_pattern>列出档案库中匹配的软件包的内容
dpkg-reconfigure <package_name>重新配置软件包
dpkg-reconfigure -p=low <package_name>通过最详细的方式来重新配置软件包
configure-debian以全屏菜单的形式重新配置软件包
dpkg —audit部分安装软件包的审计系统
dpkg —configure -a配置所有部分安装的软件包
apt-cache policy <binary_package_name>显示一个二进制软件包的可用版本、优先级和档案库信息
apt-cache madison <package_name>显示一个软件包的可用版本和档案库信息
apt-cache showsrc <binary_package_name>显示一个二进制软件包的源代码软件包信息
apt-get build-dep <package_name>安装构建软件包所需要的软件包
aptitude build-dep <package_name>安装构建软件包所需要的软件包
apt-get source <package_name>(从标准档案库)下载源代码
dget <URL for dsc file>(从其它档案库)下载源代码软件包
dpkg-source -x <package_name><version>-<debianversion>.dsc从源代码软件包集合(“.orig.tar.gz” 和 “.debian.tar.gz“/“*.diff.gz”)中构建代码树
debuild binary从本地的源代码树中构建软件包
make-kpkg kernel_image从内核源代码树中构建一个内核软件包
make-kpkg —initrd kernel_image从启用了 initramfs 的内核代码树中构建一个内核软件包
dpkg -i <package_name><version>-<debianversion><arch>.deb安装一个本地的软件包到系统中
apt install /path/to/<packagefilename>.deb安装本地软件包到系统中,同时尝试自动解决依赖
debi <package_name><version>-<debianversion><arch>.dsc安装本地软件包到系统中
dpkg —get-selections ‘*’ >selection.txt保存 dpkg 级别的软件包选择状态信息
dpkg —set-selections <selection.txt使用 dpkg 设置软件包选择状态
echo <package_name> hold | dpkg —set-selections使用 dpkg 将一个软件包的包选择状态设置为 hold(相当于 “aptitude hold < 包名> “)
[注意]注意

对于一个支持多架构的软件包,你可能需要为一些命令指定架构名称。例如,使用 “dpkg -L libglib2.0-0:amd64” 来列出 amd64 架构的 libglib2.0-0 软件包的内容。

[小心]小心

系统管理员应该小心使用低级的软件包工具(例如 “dpkg -i …” 和 “debi …”),它们不会自动处理所需的软件包依赖。 dpkg 的命令行选项 “—force-all” 和类似的选项(参见 dpkg(1))只适用于高手。没有完全理解它们的效果却使用它们会破坏你的整个系统。

请注意以下几点。

  • 所有的系统配置和安装命令都需要以 root 运行。

  • apt-file(1) 由 apt-file 软件包提供,并且需要先运行 “apt-file update”。

  • configure-debian(8) 由 configure-debian 软件包提供,它运行 dpkg-reconfigure(8) 作为后端。

  • dpkg-reconfigure(8) 使用 debconf(1) 作为后端来运行软件包脚本。

  • apt-get build-dep“ 、”apt-get source“ 和 “apt-cache showsrc“ 命令需要 “/etc/apt/sources.list“ 中存在 “deb-src“ 条目。

  • dget(1) 、debuild(1) 和 debi(1) 需要 devscripts 软件包。

  • 参见 第 2.7.13 节 “移植一个软件包到 stable 系统” 里使用 “apt-get source“ 的打包(重打包)过程。

  • make-kpkg 命令需要 kernel-package 软件包(参见 第 9.9 节 “内核”)。

  • 通用打包参见 第 12.11 节 “制作 Debian 包”.