目前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. day 20 约束 异常处理 MD5

    1.类的约束(重点): 写一个父类.  父类中的某个方法要抛出一个异常  NotImplementError # 项目经理 class Base:     # 对子类进行了约束. 必须重写该方法    ...

  2. rails应用中各数据平台的对接

    1.mongo #Gemfile添加如下两个gem包gem 'mongoid', '~> 5.1.0' gem 'mongo', '~> 2.4’ @client = Mongo::Cli ...

  3. 本地域名解析知识hosts

    get(本地域名解析知识点): Domain Name System: 域名系统 目的:互联网通过IP(10.223.146.45)定位浏览器建立连接,但是我们不易区别IP,为了方便用户辨识IP所代表 ...

  4. wordpress网站程序漏洞修复办法

    近日wordpress被爆出高危的网站漏洞,该漏洞可以伪造代码进行远程代码执行,获取管理员的session以及获取cookies值,漏洞的产生是在于wordpress默认开启的文章评论功能,该功能在对 ...

  5. 如何将github项目上传至gitlab

    一.修改远程分支关联 删除远程分支关联 将指向github的远程分支关联关系删除 git remote rm origin 添加新的远程分支关联 新的remote地址指向gitlab相应地址 git ...

  6. Goland的常用快捷键

    文件相关快捷键: CTRL+E,打开最近浏览过的文件. CTRL+SHIFT+E,打开最近更改的文件. CTRL+N,可以快速打开struct结构体. CTRL+SHIFT+N,可以快速打开文件. 代 ...

  7. 深浅拷贝--python(预习中随手写的。因为当时很无聊。。。)

    需要知识准备,pyhton基本常识,python的小数据池概念. 深浅拷贝操作需要模块导入:import copy emmm,对于python中的两种数据类型来说. 1.数字,字符串 2.列表,元祖, ...

  8. mysql 优化笔记

    数据表总共81万条数 SQL explain ); 执行时间超级长,没有等到执行完成就终止了太慢了 explain一下 发现表bb 的select_type 为DEPENDENT SUBQUERY   ...

  9. ThinkDev.Data更新日志

    2013-09-29 10:001.重构Where.And.Or.Having.JoinTable代码,新增条件组合查询QueryGroup2.1.1.2.0 2013-09-04 09:001.修复 ...

  10. 容器云技术:容器化微服务,Istio占C位出道

    在精彩的软件容器世界中,当新项目涌现并解决你认为早已解决的问题时,这感觉就像地面在你的脚下不断地移动.在许多情况下,这些问题很久以前被解决,但现在的云原生架构正在推动着更大规模的应用程序部署,这就需要 ...