apt-get vs aptitude

apt-get

T

软件包管理工具

参数

 -h     帮助文件。  

 -q     输出到日志 - 无进展指示  

 -qq     不输出信息,错误除外  

 -d     仅下载 - 不安装或解压归档文件  

 -s     不实际安装。模拟执行命令  

 -y     在需要确认的场景中回应 yes

 -f     尝试修正系统依赖损坏处  

 -m     如果归档无法定位,尝试继续  

 -u     同时显示更新软件包的列表  

 -b     获取源码包后编译  

 -V     显示详细的版本号  

 -c=?     阅读此配置文件  

 -o=?     设置自定的配置选项,如 -o dir::cache=/tmp  


—help

$ apt-get --help

apt 2.0.4 (amd64)
用法: apt-get [选项] 命令
    apt-get [选项] install|remove 软件包1 [软件包2 ...]
    apt-get [选项] source 软件包1 [软件包2 ...]

apt-get 可以从认证软件源下载软件包及相关信息,以便安装和升级软件包,
或者用于移除软件包。在这些过程中,软件包依赖会被妥善处理。

常用命令:
  update - 取回更新的软件包列表信息
  upgrade - 进行一次升级
  install - 安装新的软件包(注:软件包名称应当类似 libc6 而非 libc6.deb)
  reinstall - 重新安装软件包(注:软件包名称应当类似 libc6 而非 libc6.deb)
  remove - 卸载软件包
  purge - 卸载并清除软件包的配置
  autoremove - 卸载所有自动安装且不再使用的软件包
  dist-upgrade - 发行版升级,见 apt-get(8)
  dselect-upgrade - 根据 dselect 的选择来进行升级
  build-dep - 为源码包配置所需的编译依赖关系
  satisfy - 使系统满足依赖关系字符串
  clean - 删除所有已下载的包文件
  autoclean - 删除已下载的旧包文件
  check - 核对以确认系统的依赖关系的完整性
  source - 下载源码包文件
  download - 下载指定的二进制包到当前目录
  changelog - 下载指定软件包,并显示其变更日志(changelog)

参见 apt-get(8) 以获取更多关于可用命令的信息。
程序配置选项及语法都已经在 apt.conf(5) 中阐明。
欲知如何配置软件源,请参阅 sources.list(5)。
软件包及其版本偏好可以通过 apt_preferences(5) 来设置。
关于安全方面的细节可以参考 apt-secure(8).
                                        

查询

dpkg -l                             // 列出已安装的所有软件包

apt-cache search PackageName        // 搜索软件包
apt-cache show PackageName          // 获取软件包的相关信息, 如说明、大小、版本等

apt-cache depends PackageName       // 查看该软件包需要哪些依赖包
apt-cache rdepends PackageName      // 查看该软件包被哪些包依赖

apt-get check                       // 检查是否有损坏的依赖

更新

apt-get update                  // 更新安装源(Source)
apt-get upgrade                 // 更新已安装的软件包
apt-get dist-upgrade            // 更新已安装的软件包(识别并处理依赖关系的改变)

查询

dpkg -l                             // 列出已安装的所有软件包

apt-cache search PackageName        // 搜索软件包
apt-cache show PackageName          // 获取软件包的相关信息, 如说明、大小、版本等

apt-cache depends PackageName       // 查看该软件包需要哪些依赖包
apt-cache rdepends PackageName      // 查看该软件包被哪些包依赖

apt-get check                       // 检查是否有损坏的依赖

如查询ros包

$ apt-cache show ros-melodic-teleop-twist-keyboard 
Package: ros-melodic-teleop-twist-keyboard
Version: 1.0.0-1bionic.20220127.145634
Architecture: amd64
Maintainer: Austin Hendrix <namniart@gmail.com>
Installed-Size: 35
Depends: ros-melodic-geometry-msgs, ros-melodic-rospy
Homepage: http://wiki.ros.org/teleop_twist_keyboard
Priority: optional
Section: misc
Filename: pool/main/r/ros-melodic-teleop-twist-keyboard/ros-melodic-teleop-twist-keyboard_1.0.0-1bionic.20220127.145634_amd64.deb
Size: 7016
SHA256: c1bd06c4551992ded09139e718ac765819242073c044d2cba84f268b072a6909
SHA1: 4038e6259a998c56c80e485bfc89fd2bf7d74a4b
MD5sum: d8a762155993a0e04e3ef6482c917fc2
Description: Generic keyboard teleop for twist robots.
Description-md5: 0b28d26a20ea93c8fad0ecae7a80ce16

aptitude

aptitude 与 apt-get 一样,是 Debian 及其衍生系统中功能极其强大的包管理工具基于大名鼎鼎的APT机制, 整合了 dselect 和 apt-get 的所有功能, 并提供的更多特性,特别是在依赖关系处理上。。与 apt-get 不同的是,aptitude在处理依赖问题上更佳一些。举例来说,aptitude在删除一个包时,会同时删除本身所依赖的包。这样,系统中不会残留无用的包,整个系统更为干净。

我在使用的时候,发现可以用其来判断安装包所依赖的包版本是否准确,从而调整版本,不然会陷入安装包的死循环,如libpcl-dev

使用apt-get vtk版本不对会出现这种情况

The following packages have unmet dependencies:
libpcl-dev : Depends: libvtk6-dev but it is not going to be installed
             Depends: libvtk6-qt-dev but it is not going to be installed
E: Unable to correct problems, you have held broken packages.

使用aptitude会可以选择将vtk的版本改变

sudo apt-get install aptitude
sudo aptitude install libpcl-dev

参数

-h:显示帮助信息
-d:仅下载软件包,不执行安装操作
-P:每一步操作都要求确认
-y:所有问题都回答“yes”
-v:显示附加信息; 
-u:启动时下载新的软件包列表

aptitude update            更新可用的包列表 

aptitude safe-upgrade      执行一次安全的升级 

aptitude full-upgrade      将系统升级到新的发行版 

aptitude install pkgname   安装包 

aptitude remove pkgname    删除包 

aptitude purge pkgname     删除包及其配置文件 

aptitude search string     搜索包 

aptitude show pkgname      显示包的详细信息 

aptitude clean             删除下载的包文件 

aptitude autoclean         仅删除过期的包文件 


参考

https://blog.csdn.net/HelloJinYe/article/details/109105848
https://blog.csdn.net/qi_SJQ_/article/details/121536903
apt-get

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值