#sudo apt-get update 获得最近的软件包的列表;列表中包含一些包的信息,比如这个包是否更新过
#sudo apt-get dist-upgrade 如果这个包没有发布更新,就不管它;如果发布了更新,就把包下载到电脑上,并安装。

apt-get update 指令会同步使用者端和APT 伺服器的RPM 索引清单(package list),APT 伺服器的RPM 索引清单置于base 资料夹内,使用者端电脑取得base 资料夹内的bz2 RPM 索引清单压缩档后,会将其解压置放于/var/state/apt/lists/,而使用者使用apt-get install 或apt-get dist-upgrade 指令的时候,就会将这个资料夹内的资料和使用者端电脑内的RPM 资料库比对,如此一来就可以知道那些RPM 已安装、未安装、或是可以升级的。

这里提一下apt-get upgrade 与apt-get dist-upgrade的关系
由于包与包之间存在各种依赖关系。upgrade只是简单的更新包,不管这些依赖,它不和添加包,或是删除包。而dist-upgrade可以根据依赖关系的变化,添加包,删除包。

一般在运行upgrade或dist-upgrade之前,要运行update.

但是常常有人会问, upgrade和dist-upgrade有何不同,仔细查查,似乎大家对upgrade和dist-upgrade的解释都有点不同,在此也纪录自己的看法.

我认为apt-get upgrade和dist-upgrade的差别:

upgrade:系统将现有的Package升级,如果有相依性的问题,而此相依性需要安装其它新的Package或影响到其它Package的相依性时,此Package就不会被升级,会保留下来.

dist-upgrade:可以聪明的解决相依性的问题,如果有相依性问题,需要安装/移除新的Package,就会试着去安装/移除它. (所以通常这个会被认为是有点风险的升级)

apt-get upgrade 和 apt-get dist-upgrade 本质上是没有什么不同的。

只不过,dist-upgrade 会识别出当依赖关系改变的情形并作出处理,而upgrade对此情形不处理。

例如软件包 a 原先依赖 b c d,但是在源里面可能已经升级了,现在是 a 依赖 b c e。这种情况下,dist-upgrade 会删除 d 安装 e,并把 a 软件包升级,而 upgrade 会认为依赖关系改变而拒绝升级 a 软件包。

Meth | apt-get update ,upgarde 和dist-upgrade 的区别的更多相关文章

  1. ubuntu sudo apt-get update与sudo apt-get upgrade的作用及区别,以及python pip的安装

    在UBUNTU下,我们维护一个源列表,源列表里面都是一些网址信息,这每一条网址就是一个源,这个地址指向的数据标识着这台源服务器上有哪些软件可以安装使用.编辑源命令: sudo gedit /etc/a ...

  2. apt get update无法正常使用解决方案(转载)

    apt get update无法正常使用 解决方法参考博客 [问题描述] 前几天执行apt相关命令(如apt-get update),都会长时间停在``等待报头'',超时后,显示连接超时. 换了快速指 ...

  3. Ubuntu上的apt/apt-get等命令的实质意义和区别

    Ubuntu上的apt/apt-get等命令的实质意义和区别 一.前言 在使用apt和apt-get命令的时候我们常常会疑惑这两者有什么区别,因为大多数时间这两个命令能做很多相同的事情. 二.APT/ ...

  4. mysql ON DUPLICATE KEY UPDATE ; 以及 同replace to 的区别.

    需求: 1)如果admin表中没有数据, 插入一条 2)如果admin表中有数据, 不插入. 一般做法: if($result = mysql_query("select * from ad ...

  5. apt-get update 与 apt-get upgrade 的区别

    总而言之,update是更新软件列表,upgrade是更新软件:所以,这两命令都是一块用,update后再upgrade. update 是更新 /etc/apt/sources.list 和 /et ...

  6. Linux中的update和upgrade的区别

    update是更新源里的软件列表 upgrade顾名思义是升级,升级你系统里的软件

  7. Centos下yum update与yum upgrade的区别

    转载来源于:http://www.cnblogs.com/EasonJim/p/9026357.html 说明:生产环境对软件版本和内核版本要求非常精确,别没事有事随便的进行yum update操作! ...

  8. 【linux】记录一个yum update和upgrade的区别

    yum update 更新软件包和系统软件.系统内核 yum upgrade只更新软件包,不更新系统软件和系统内核 查看版本号 [root@localhost ~]# uname -r 3.10.0- ...

  9. Ubuntu 出现 Invalid operation update 或 Invalid operation upgrade的解决办法

    输入 sudo apt update && sudo apt full-upgrade

  10. apt-get update 和 upgrade 的区别

    http://blog.csdn.net/duyiwuer2009/article/details/26983267

随机推荐

  1. expdp 备份数据库-附带报错信息

    操作系统层面创建目录 [root@Oracle11g ~]# mkdir -p /home/oracle/db_back/ 修改目录的所属用户.所属组 [root@Oracle11g ~]# chow ...

  2. [转]mysql 的日志的启动与查看

    mysql有以下几种日志:错误日志:  -log-err查询日志:  -log慢查询日志: -log-slow-queries更新日志:    -log-update二进制日志:-log-bin 日志 ...

  3. 将对象保存至文件——CArchive

    CArchive允许以一个二进制的形式保存一个对象的复杂网络,也可以再次装载它们,在内存中重新构造,这一过程叫作串行化/序列化(Serialization),简单的说,CArchive与CFile配合 ...

  4. 【USACO 1.3.2】修理牛棚

    [描述] 在一个夜黑风高,下着暴风雨的夜晚,farmer John的牛棚的屋顶.门被吹飞了. 好在许多牛正在度假,所以牛棚没有住满. 牛棚一个紧挨着另一个被排成一行,牛就住在里面过夜. 有些牛棚里有牛 ...

  5. Configuration ReportNG with TestNG

    下载 Reporter.jar,velocity-dep-1.4.jar 和 Guice.jar: 配置项目属性:Properties ->TestNG ->Disable Default ...

  6. PHP图的绘制1

    最近在学习php图的绘制,写的代码放上来,供自己以后学习查看: <?php //*函数说明: //这个函数返回的是 // resource imagecreate ( int $x_size , ...

  7. 嵌入式学习笔记(虚拟机共享文件夹配置-Ubuntu系统中)

    最近在学习Linux的操作系统,使用的是虚拟机.由于一些文件需要在主机和虚拟机中都要编辑,如果可以使得文件共享,可以极大的提高工作效率! 配置共享文件的步骤如下: [第一步] 在虚拟机软件中设置 [第 ...

  8. (转)总结PLSQL的快捷键以及使用技巧

    最近在开发过程中,遇到一些麻烦,就是开发效率问题,有时候其他同事使用PLSQL 编程效率明显高于自己,观察了好久,才发现他使用PLSQL 已经很长时间了而且,他自己也在其中添加了好多快捷方式,     ...

  9. Instruments 使用指南

    Instruments 用户指南 http://cdn.cocimg.com/bbs/attachment/Fid_6/6_24457_90eabb4ed5b3863.pdf 原著:Apple Inc ...

  10. 利用github for windows 工具将本地的内容同步到github上

    1 利用github for windows工具来创建一个Repository,名字叫weixin,具体步骤 请参考这篇文章 根据default storage directory的设置 我知道我所创 ...