如果在滚动发布中实际上仍然可以进行重新安装,那么什么时候会发生?

如果在滚动发布中实际上仍然可以进行重新安装,那么什么时候会发生?

滚动发布与非滚动发布的不同之处在于,仅对系统和软件包进行增量更改,理论上不需要重新安装?如果在滚动发布中实际上仍然可以进行重新安装,那么什么时候会发生?

同样,在更新/升级内核和软件包时,滚动版本是否比非滚动版本需要更少的重新启动?滚动发布何时需要在更新/升级后重新启动? (更新和升级有什么区别?)

如果我是正确的,NixOS 遵循滚动发布模式。

答案1

理论上不需要重装吗?如果在滚动发布中实际上仍然可以进行重新安装,那么什么时候会发生?

重新安装的“需要”与滚动发行版或“标准”发行版无关。非滚动发行版(通常)支持升级到新版本而无需重新安装。例如在 Fedora 中你可以使用 DNF 升级到下一个版本。因此,如果您获得新硬件或只是严重破坏某些东西而需要重新开始,您通常会重新安装:)

同样,在更新/升级内核和软件包时,滚动版本是否比非滚动版本需要更少的重新启动?

不,这与滚动或非滚动无关,您需要在每次内核更新后重新启动(实时内核补丁存在但并不普遍)。某些发行版建议每次更新时重新启动或在最小环境中运行软件包更新以避免潜在问题(需要重新启动),但同样,这不是滚动/非滚动之间的区别。

更新和升级有什么区别?

更新和升级有时可以互换使用,有时升级意味着升级到发行版的新版本。在基于 Debian 的发行版上,您可以用来apt update同步存储库元数据并apt upgrade获取新软件包,而不是实际升级到新版本。在 Fedora 上,dnf update它是 的别名dnf upgradednf system-upgrade用于升级到较新的版本,所以我想说这取决于上下文。

更新:Linux 发行版中的滚动版本与标准版本:

最大的区别不在于系统如何工作,而在于交付什么类型的更新以及何时交付。使用 Fedora(但 Ubuntu 和其他发行版的工作方式相同),您安装特定版本(例如 34)并且仍然可以获得更新。当 Mozilla 发布时,你会得到新的内核、新版本的 Firefox 等。但是你不会得到重大的改变,特别是不会有向后不兼容的改变和库的 API 改变。例如,python3Fedora 34 上的软件包始终是 Python 3.9,并且不会升级到 3.10,如果您想获得 Python 3.10,则需要升级到 Fedora 35。但 3.9 Fedora 软件包将更新为新版本(我们目前只有 3.9.7),其中包括错误修复和安全更新。你可以检查Fedora 35 的变化要了解仅通过升级到新发行版才能获得的更改类型,这些更改不会向后移植到 Fedora 34。

对于滚动发布发行版,像 Python 3.10 这样的重大变化只会在它们准备好时才会发生,而没有基于主要版本的固定时间表。

相关内容