从Debian同步的LTS和非LTS版本的软件。

我读到LTS版本是基于Debian testing,而非LTS版本则是基于Debian unstable。鉴于Debian的长期发布周期,是否有可能某些软件在非LTS版本X中比LTS版本X+1更为新?

如果是这样,那么从X到X+1进行升级和全新安装之间会有什么区别吗?

1个回答

由于存档的工作方式,这种情况实际上不会发生。
首先,你应该知道,当发布n+1开始开发时,它是从发布n中派生出来的。大致上,这意味着发布n被复制并重命名为n+1(在它开始开发之前可能会进行一些调整,但这里不重要)。因此,它与发布n具有相同的软件包版本。
现在,为了上传,你必须使用比之前上传的版本更高的版本。这意味着你不能“倒退”。即使存档允许这样做,你系统上的软件包管理器也不会将其视为升级,所以你将保留“更新”的版本。
如果一个软件包从发布n的不稳定分支中取出,并且这个版本从未进入测试分支,那么出于这个原因,我们通常会继续使用不稳定分支中的版本。
说到这一点,有可能通过修改版本号来实现回滚 - 你可能见过以'foo-1.0+really0.5'形式出现的版本号 - 这是一种罕见的方式,用于向存档和软件包管理器假装版本已经增加,而实际上上传的是旧版本。这只是在某个软件的特定版本存在严重问题,回滚是唯一选择时才会使用的最后手段。更好的方法是直接修复问题。此外,这与发布/长期支持系统无关 - 它可以随时发生。
总之,通过使用软件包管理器的技巧可以将软件包还原到先前的版本,但这通常不会被采用。