假设我打开更新管理器,而我的软件包列表已经有几天了,或者我apt-get upgrade
没有先做任何操作apt-get update
,这会有什么结果呢?
如果自从我上次在更新管理器中“检查”后已有更新,我是否无法获得最新版本?或者我只是无法获得上次检查时未更新的软件包的更新?
答案1
apt-get update
更新软件目录的本地副本,并apt-get upgrade
安装新的更新。因此,如果您没有更新本地软件目录,您可能无法获得最新更新(您将获得上次更新检查的更新)。
答案2
Ubuntu 有一个很好的社区提供的 HOWTO关于这一点。
存储库会跟踪软件包的最新版本,但您的主机必须获取该信息才能提取最新版本。当您apt-get update
提取所有可用软件包列表的新副本时,而不仅仅是您安装的软件包。运行会apt-get upgrade
使用您本地的列表副本,与您已安装的软件包列表进行比较,以决定从存储库下载哪些软件包。
每当您运行 时apt-get upgrade
,它都会使用当前(即上次下载的)软件包列表的本地副本来做出决定。为确保您的本地副本是最新的,您应该apt-get update
在升级之前以及添加任何新的存储库位置之后运行。
在大多数情况下(参见链接),使用apt-get dist-upgrade
而不是是一个好主意apt-get upgrade
。