目前ubuntu系统主要有dpkg和apt两种软件管理方式
两种区别如下

1、dpkg是用来安装.deb文件,但不会解决模块的依赖关系,且不会关心ubuntu的软件仓库内的软件,可以用于安装本地的deb文件。
2、apt会解决和安装模块的依赖问题,并会咨询软件仓库, 但不会安装本地的deb文件, apt是建立在dpkg之上的软件管理工具。

一、APT命令安装

  APT全称Advanced Packaging Tool,可以自动下载,配置,安装二进制或者源代码格式的软件包,因此简化了Linux系统上管理软件的过程。现在Debian和其衍生发行版(如 Ubuntu)中都包含了APT。APT命令(package 为软件包名称):

  • apt-get install package 安装包
  • apt-get install package –reinstall 重新安装包
  • apt-get -f install 强制安装
  • apt-get remove package 删除包
  • apt-get remove package –purge 删除包,包括删除配置文件等
  • apt-get autoremove 自动删除不需要的包,删除为了满足其他软件包的依赖而安装的,但现在不再需要的软件包
  • apt-get update 更新源
  • apt-get upgrade 更新已安装的包 如果依赖关系发生变化 则不会处理
  • apt-get dist-upgrade 升级系统  自动智能的处理包依赖的关系,根据依赖关系可能会删除或者安装软件包
  • apt-get dselect-upgrade 使用 dselect 升级
  • apt-get build-dep package 安装相关的编译环境,build-dep参数是指建立某个要编译软件的环境,比如现在要手工编译pidgin,那如果想让编译正常通过,你可以执行sudo apt-get build-dep pidgin把编译过程中需要用到的软件包先配置好。
  • apt-get source package 下载该包的源代码
  • apt-get autoclean apt会把已装或已卸的软件都备份在硬盘上,所以如果需要空间 的话,可以让这个命令来删除你已经删掉的软件
  • apt-get clean  这个命令会把安装的软件的备份也删除,不过这样不会影响软件的使用的。当我们通过apt-get安装软件包时,APT会把软件包下载到本地/var/cache/apt/archives/目录。该命令会删除该文件夹内的除锁住外的所有软件包。
  • apt-get check 检查是否有损坏的依赖
  • apt-cache search package 搜索包
  • apt-cache show package 获取包的相关信息,如说明、大小、版本等
  • apt-cache depends package 了解使用依赖
  • apt-cache rdepends package 了解某个具体的依赖

  除了要了解基本的apt指令外,还需要了解下一些与APT相关的文件,具体每个文件作用如下:

  • /etc/apt/sources.list 设置软件包的获取来源
  • /etc/apt/apt.conf apt配置文件
  • /etc/apt/apt.conf.d apt的零碎配置文件
  • /etc/apt/preferences 版本参数
  • /var/cache/apt/archives/partial 存放正在下载的软件包
  • /var/cache/apt/archives 存放已经下载的软件包
  • /var/lib/apt/lists 存放已经下载的软件包详细信息
  • /var/lib/apt/lists/partial 存放正在下载的软件包详细信息

二、DPKG命令安装

  dpkg是Debian软件包管理器的基础,被用于安装、卸载和供给和.deb软件包相关的信息。dpkg本身是一个底层的工具,本身并不能从远程包仓库下载包以及处理包的依赖的关系,需要将包从远程下载后再安装。DPKG常用命令:

  • dpkg -i package.deb 安装包
  • dpkg -r package 删除包
  • dpkg -P package 删除包(包括配置文件)
  • dpkg -L package 列出与该包关联的文件
  • dpkg -l package 显示该包的版本
  • dpkg –unpack package.deb 解开 deb 包的内容
  • dpkg -S file 这个文件属于哪个已安装软件包  与apt-file search file 类似,但是apt-file从源更新数据库并进行查找,可以查找本机没有的文件对应的软件包
  • dpkg -l 列出当前已安装的包
  • dpkg -c package.deb 列出 deb 包的内容
  • dpkg –configure package 配置包

  注意:更多选项可通过 dpkg -h 查询,有些指令需要超级用户权限才能执行。

ubuntu软件管理apt与dpkg的更多相关文章

  1. ubuntu软件管理工具的使用——dpkg和apt

    deb.rpm.tar.gz三种Linux软件包的区别在哪里呢,这种区别可能使安装进行不下去,那么我们应该下载什么格式的包呢?下面具体讲解一下. rpm包是在Redhat.Suse和Fedora可以直 ...

  2. 列出ubuntu软件管理工具apt的一些用法(自由总结)

    安装软件包 [root@CentOS7 ~]#apt install tree 删除软件包 [root@CentOS7 ~]# apt remove tree 列出仓库软件包 [root@CentOS ...

  3. ubuntu软件管理

    https://www.cnblogs.com/forward/archive/2012/01/10/2318483.html 一.Ubuntu中软件安装方法1.APT方式(联网安装, 需要联网下载软 ...

  4. ubuntu 软件管理

    软件安装管理 安装软件 sudo apt-get install **** 检索软件 sudo apt-cache search **** 更新源 sudo apt-get update   **** ...

  5. ubuntu实用命令--软件管理

    近期重新拿起linux的书看了下,整理了一下linux的命令. ubuntu预装了APT和dpkg ,“APT”是 “Advanced Package Tool”的简写,“dpkg ”是“Debian ...

  6. 《完美应用ubuntu》之全面管理ubuntu软件源

    2.全面管理ubuntu软件包 2.1 DEB软件包之间的基本关系: (1)软件仓库:由ubuntu软件包的维护者维护并公开发布的DEB软件包的集合:可位于网络,服务器,硬盘等各种存储介质. (2)软 ...

  7. linux:使用apt、dpkg工具安装软件

    先总结一下安装软件常用命令: % apt sudo apt install xxxx sudo apt list xxxx % dpkg安装deb文件 sudo dpkg -i xxxx.deb 学习 ...

  8. 软件管理——rpm&dpkg、yum&apt-get

    一般来说著名的linux系统基本上分两大类: 1. RedHat系列:Redhat.Centos.Fedora等 2. Debian系列:Debian.Ubuntu等 一.RedHat 系列     ...

  9. ubuntu 软件包管理工具 dpkg,apt-get,aptitude 区别

    ubuntu 软件包管理工具 dpkg,apt-get,aptitude 区别 一:dpkg dpkg 是一种比较低层的软件包安装管理工具,在安装时,不会安装软件包的依赖关系:只能安装所要求的软件包: ...

随机推荐

  1. html 页面中的 base href 和 target

    它只能应用于标记<head>与</head>之间 href:网页上的所有相对路径在链接时都将在前面加上基链接指向的地址. target:—设定文件显示的窗口,同a标记中的tar ...

  2. HyperLedger Fabric 1.4 简介(6.1)

    Fabric是一个提供模块化分布式账本解决方案的平台,并具备保密性.可伸缩性.灵活性和可扩展性等特性.Fabric具有可直接拔插启用和相互独立不同功能的模块,并能适应在经济社会中错综复杂的各种场景. ...

  3. telnet 批处理

    **** 需要确认多台服务器端口是否打开,如果一个一个telnet会非常麻烦,通过百度,写了两个BAT,基本能做工作需要. ***start.bat start "" " ...

  4. filebeat5与filebeat6配置index的差异

    filebeat6配置index需要添加setup对应项,不然启动会报错. 6.0以后版本具体设置在filebeat.yml如下: setup.template.name: "myname- ...

  5. EL/JSTL-jsp页面更简单的输出方式

    1.EL(Expression Language):表达式语言,用于页面输出 格式:${表达式} EL支持四则运算,关系运算[常用eq来比较字符串或判断相等],逻辑运算 EL访问空间内对象,[类.对象 ...

  6. CakePHP Model中( 获取Session)使用Component的方法

    有时候我们需要在Model中使用Session,大家知道CakePHP把操作Session的方法封装为了一个Component, 在Model中正常读取Session的方法: 在 "app_ ...

  7. lunix安装

    https://www.cnblogs.com/wcwen1990/p/7630545.html

  8. 「国庆训练」ArcSoft's Office Rearrangement(HDU-5933)

    题目与分析 题解见https://blog.csdn.net/cmershen/article/details/53200922. 训练赛场上我们写出来了--在4小时50分钟的时候...激情补题啊.. ...

  9. unity中虚拟摇杆的实现

    实现效果: 实现: 使用NGUI添加虚拟摇杆背景和其子物体按钮,为按钮Attach  boxcollider和ButtionScript.为按钮添加如下脚本: 注意:其中的静态属性可以在控制物体移动的 ...

  10. 从零开始的Python学习Episode 4——列表

    一.列表 列表与数组相似,定义一个列表 a=[1,2,3,4,5] 1.基本操作 a=[1,2,3,4] #切片 范围取值时,包括第一项但不包括最后一项,顾头不顾尾 print(a[0:]) #从头到 ...