有人可以帮我弄清楚Ubuntu(Debian)发行版升级吗?


35

我有一个Ubuntu 8.04 LTS服务器。当我执行时,有几个程序包被“保留”(“以下更新已保留”apt-get upgrade。据我了解,我可以apt-get dist-upgrade升级这些软件包,但是我有一些担忧:

  1. 如果我执行dist-upgrade,我会从8.04升级到更高版本(我猜是8.10)吗?如果是这样,那么8.04作为“长期支持”(LTS)有什么意义?

  2. 这是一个“危险的”过程吗?我假设这些软件包会保留下来,因为它们依赖于新的软件包。是dist-upgrade简单地提取新软件包并进行相当简单的升级,还是需要注意一些注意事项?

Answers:


57

apt-get upgrade命令将不会添加或删除软件包。 apt-get dist-upgrade将根据需要添加或删除软件包。

除非您还更新了源代码(/etc/apt/sources.list)以指向较新的版本,否则命令apt-get dist-upgrade不会自动将您从一个版本升级到另一个版本。

男子apt-get的

upgrade
    upgrade is used to install the newest versions of all packages 
    currently installed on the system from the sources enumerated 
    in /etc/apt/sources.list.

dist-upgrade
    dist-upgrade, in addition to performing the function of upgrade, 
    also intelligently handles changing dependencies with new versions 
    of packages;

在进行远程升级与升级时是否需要特别注意?

在大多数情况下,我总是倾向于dist-upgrade将更新应用于系统。当然,要注意确切地添加或删除了哪些新软件包。通常,当添加诸如与较早版本不兼容的较新内核之类的东西时,就会发生这种情况,并且您将不得不重新编译模块。如果您必须自己构建一些内核模块,则可能需要确保针对新内核重新编译它。我有几个系统具有股票内核不支持的网络接口,每次内核更新后我都必须重新编译网络驱动程序。


谢谢,这就是我所希望的。在进行远程升级与升级时是否需要特别注意?(不是一个可以替代另一个,我只是想知道是否还有其他我应该知道的东西)
Boden

当您运行dist-upgrade时,将获得有关其功能的摘要(要升级的软件包,新软件包,要删除的软件包)。只要看看它正在删除什么,如果有的话。如果您尚未更改/etc/apt/sources.list文件,则该文件应该不太重要。
brad.lane

2
仅出于完成的目的。要在下一个LTS版本可用时迁移到该版本,您需要在确保8.04安装为最新版本之后运行以下命令。sudo apt-get install update-manager-core,然后sudo do-release-upgrade。
3dinfluence

2

升级与dist-升级确实是debian术语。在debian中,您将使用upgrade来获得稳定版本中的更改(不会涉及任何如此严重的删除操作),并使用dist-upgrade在各个版本之间进行更改。假设不需要删除,dist-upgrade应该具有与升级相同的结果。

在发行版之间进行切换将需要更改您的sources.list以指向新发行版。

Ubuntu没有相同的超保守版本模型,因此这些术语并不能清晰地映射-您通常只想使用dist-upgrade,除非要在两个版本之间进行切换,在这种情况下,请使用其自己的升级程序do-release -升级。


you'd generally just want to use dist-upgrade unless you're going between releases, in which case you use the upgrade script. 我认为,Segfault船长的意思是相反的:-通常,您只想使用升级,除非您要在两个发行版之间进行转换,在这种情况下,请使用dist-upgrade脚本。

2
Ubuntu有一个单独的程序来进行升级。您可以使用这些(而不是apt-get)在两个发行版之间切换。
Segfault上尉,2011年

我在哪里可以找到这个单独的程序?
starbeamrainbowlabs 2014年

@starbeamrainbowlabs,它称为do-release-upgrade,请检查man do-release-upgrade以获取详细信息
isync 2015年

@isync对。我知道这一点-评论不明确,所以我认为还有另一个我未曾接触过的命令。谢谢!
starbeamrainbowlabs 2015年
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.