Debian/Ubuntu 系统软件包管理系统有丰富的历史,有许多可供选择的前端用户程序和后端访问方式。现在,我们推荐下列的这些。
apt
命令行软件包管理器 apt 提供软件包搜索,管理和信息查询等功能。它提供的功能与其他APT 工具相同(像 apt-get 和 apt-cache),但是默认情况下被设置得更适合交互。在安装软件包的过程中,apt会解决和安装模块的依赖问题,并会咨询软件仓库, 但不会安装本地的deb文件。
用法:apt [<选项> …] <命令>
常用命令:
list – 根据名称列出软件包
search – 搜索软件包描述
show – 显示软件包细节
install – 安装软件包
remove – 移除软件包
autoremove – 卸载所有自动安装且不再使用的软件包
update – 更新可用软件包列表
upgrade – 通过 安装/升级 软件来更新系统
full-upgrade – 通过 卸载/安装/升级 来更新系统
apt-get
apt-get 可以从认证软件源下载软件包及相关信息,以便安装和升级软件包,或者用于移除软件包。在这些过程中,软件包依赖会被妥善处理。
用法:apt-get [<选项> …] <命令>
常用命令:
update – 取回更新的软件包列表信息
upgrade – 进行一次升级
install – 安装新的软件包(注:软件包名称是 libc6 而非 libc6.deb)
remove – 卸载软件包
purge – 卸载并清除软件包的配置
autoremove – 卸载所有自动安装且不再使用的软件包
dist-upgrade – 发行版升级,见 apt-get(8)
dselect-upgrade – 根据 dselect 的选择来进行升级
build-dep – 为源码包配置所需的编译依赖关系
clean – 删除所有已下载的包文件
autoclean – 删除已下载的旧包文件
check – 核对以确认系统的依赖关系的完整性
source – 下载源码包文件
download – 下载指定的二进制包到当前目录
changelog – 下载指定软件包,并显示其变更日志(changelog)
apt-cache
apt-cache 可以查询和显示已安装和可安装软件包的可用信息。它专门工作在本地的数据缓存上,而这些缓存可以通过比如apt-get 的 ‘update’ 命令来更新。如果距离上一次更新的时间太久,那么它显示的信息可能就会过时。不过作为交换,apt-cache 不依赖当前软件源的可用性(比如:离线状态)。
用法:apt-cache [<选项> …] <命令>
常用命令:
showsrc – 显示源文件的各项记录
search – 根据正则表达式搜索软件包列表
depends – 显示该软件包的依赖关系信息
rdepends – 显示所有依赖于该软件包的软件包名字
show – 以便于阅读的格式介绍该软件包
pkgnames – 列出所有软件包的名字
policy – 显示软件包的安装设置状态
apt-config
apt-config 是所有 APT 工具的配置接口,主要用于Debug和编写Shell脚本。
用法:apt-config [<选项> …] <命令>
常用命令:
shell – 通过shell求值来获取设置值
dump – 显示活动的设置选项
apt-mark
apt-mark 可以对软件包进行 手动/自动 安装标记,也可以用来处理软件包的 dpkg选中状态,以及列出或过滤拥有某个标记的软件包。
用法:apt-mark [<选项> …] <命令>
常用命令:
auto – 标记指定软件包为自动安装
manual – 标记指定软件包为手动安装
hold – 标记指定软件包为保留(held back)
unhold – 取消指定软件包的保留(held back)标记
showauto – 列出所有自动安装的软件包
showmanual – 列出所有手动安装的软件包
showhold – 列出设为保留的软件包
aptitude
aptitude与 apt-get 一样,是 Debian 及其衍生系统***能极其强大的包管理工具。与 apt-get 不同的是,aptitude在处理依赖问题上更佳一些。举例来说,aptitude在删除一个包时,会同时删除本身所依赖的包。这样,系统中不会残留无用的包,整个系统更为干净。
用法:aptitude [<选项> …] <命令>
如果无指定选项及命令,那么aptitude会进入交互模式。
常用命令:
install 安装/升级软件包。
remove 卸载软件包。
purge 卸载软件包及其配置文件。
hold 将软件包置于保持状态。
unhold 取消对一个软件包的保持命令。
markauto 将软件包标记为已经自动安装。
unmarkauto 将软件包标记为已经手动安装。
forbid-version 禁止 aptitude 升级到某一特定版本的软件包。
update 下载新/可升级软件包列表。
safe-upgrade 执行一次安全的升级。
full-upgrade 执行升级,可能会安装和卸载软件包。
build-dep 安装软件包的构建依赖。
forget-new 忘记哪些软件包是“新”的。
search 按名称和/或表达式搜索软件包。
show 显示一个软件包的详细信息。
showsrc 显示源码包的详细信息(作为 apt 命令的封装)
versions 显示指定软件包的版本信息。
clean 清除已下载的软件包文件。
autoclean 删除旧的已下载软件包文件。
changelog 查看一个软件包的变更日志。
download – 下载软件包的 .deb 文件。(作为 apt 命令的封装)
source 下载源代码包(作为 apt 命令的封装)。
reinstall 重新安装一个当前已安装的软件包。
why 解释为什么某个特定的软件包应当被安装。
why-not 解释为什么某个特定的软件包不能被安装。
add-user-tag 将用户标签添加到软件包/模式。
remove-user-tag 从软件包/模式删除用户标签。
dpkg
dpkg是用来安装.deb文件,但不会解决模块的依赖关系,且不会关心软件仓库内的软件,主要用于安装本地的deb文件。dpkg绕过apt包管理数据库对软件包进行操作,所以你用dpkg安装过的软件包用apt可以再安装一遍,系统不知道之前安装过了,将会覆盖之前dpkg的安装。
用法:dpkg [<选项> …] <命令>
命令:
-i|–install <.deb 文件名> … | -R|–recursive <目录> …
–unpack <.deb 文件名> … | -R|–recursive <目录> …
-A|–record-avail <.deb 文件名> … | -R|–recursive <目录> …
–configure <软件包名> … | -a|–pending
–triggers-only <软件包名> … | -a|–pending
-r|–remove <软件包名> … | -a|–pending
-P|–purge <软件包名> … | -a|–pending
-V|–verify <软件包名> … 检查包的完整性。
–get-selections [<表达式> …] 把已选中的软件包列表打印到标准输出。
–set-selections 从标准输入里读出要选择的软件。
–clear-selections 取消选中所有不必要的软件包。
–update-avail <软件包文件> 替换现有可安装的软件包信息。
–merge-avail <软件包文件> 把文件中的信息合并到系统中。
–clear-avail 清除现有的软件包信息。
–forget-old-unavail 忘却已被卸载的不可安装的软件包。
-s|–status <软件包名> … 显示指定软件包的详细状态。
-p|–print-avail <软件包名> … 显示可供安装的软件版本。
-L|–listfiles <软件包名> … 列出属于指定软件包的文件。
-l|–list [<表达式> …] 简明地列出软件包的状态。
-S|–search <表达式> … 搜索含有指定文件的软件包。
-C|–audit [<表达式> …] 检查是否有软件包残损。
–yet-to-unpack 列出标记为待解压的软件包。
–predep-package 列出待解压的预依赖。
–add-architecture <体系结构> 添加 <体系结构> 到体系结构列表。
–remove-architecture <体系结构> 从架构列表中移除 <体系结构>。
–print-architecture 显示 dpkg 体系结构。
–print-foreign-architectures 显示已启用的异质体系结构。
–assert-<特性> 对指定特性启用断言支持。
–validate-<属性> <字符串> 验证一个 <属性>的 <字符串>。
–compare-vesions <a> <关系> <b> 比较版本 – 见下。
–force-help 显示本强制选项的帮助信息。
-Dh|–debug=help 显示有关出错调试的帮助信息。
-?, –help 显示本帮助信息。
–version 显示版本信息。
‘apt’ 和 ‘aptitude’ 提供了更为便利的软件包管理。
声明:本站部分文章及图片源自用户投稿,如本站任何资料有侵权请您尽早请联系jinwei@zod.com.cn进行处理,非常感谢!