我需要升级服务器上的 Ubuntu 版本,但我不想升级已安装的软件包。可以吗?
答案1
您的问题表明您对 Ubuntu 发行版本的实际含义存在误解方法。
“21.04” 不是一个随机数,它是一个保证:
- 该 Ubuntu 版本发布时可用的软件包仍然可供该 Ubuntu 版本的用户使用。
- 该版本的 Ubuntu 中这些软件包的任何新发布的版本都将保持与该版本的 Ubuntu 原始发布中提供的软件包版本的二进制兼容性。
换句话说,您已安装并可用的软件包集定义您使用的 Ubuntu 版本是什么。这就是版本号的全部意义所在,它简明扼要地定义了平台的状态,以便用户和开发人员可以快速验证兼容性。
这与 Windows、macOS、FreeBSD 或几乎任何不使用滚动发布模式的 Linux 发行版没有什么不同。它与任何其他类型软件的版本也没有什么不同。
答案2
不,这是不可能的。如果您不更新软件包,您就没有新版本。
答案3
没有软件包就没有“Ubuntu 版本”。事实上,没有软件包就没有 Ubuntu。
Ubuntu 只是一个庞大的软件包集合,每个 Ubuntu 版本都包含特定版本的软件包。要真正更新 Ubuntu,您需要更新它们。
你总是可以确定某个软件包的版本,但要预料到事情会变得很奇怪。
如果你想在旧版 Ubuntu 上使用一些全新的软件包,你可以考虑使用 Backports。
答案4
Linux 发行版是软件包的集合。Linux 发行版的特定版本是特定版本软件包的集合。
“升级发行版而不升级软件包”的想法是荒谬的:发行版是包裹,包裹是发行版。发行版的版本是发行版中所有软件包的版本。
“Linux 发行版”一词源于万维网刚刚发明的时代,互联网接入很少见,除了大学、政府机构和极少数大型公司之外,几乎没有宽带互联网接入,没有像 SourceForge、BitBucket 或 GitHub 这样的项目托管中心,也没有像 Freshmeat.net、Freecode、freshcode.club 或 Fresh FOSS 这样的软件聚合网站。
如果您想安装 Linux 系统,您必须通过单独的方式(有时是 FTP,有时是 rcp,有时是 Usenet,有时甚至是通过蜗牛邮件的物理软盘)直接从每个开发人员那里获取每个单独的组件,自己编译所有组件,弄清楚软件包 A 的哪些版本与软件包 B 的哪些版本兼容,等等。
Linux 发行版所做的就是从各个开发人员那里收集所有这些软件包,确保它们能够很好地协同工作,然后将它们全部放在一组软盘、一张 CD-ROM 或一个 FTP 站点上,这样它们就可以轻松地作为一个整体从一个地方“分发”,而不必到处寻找它们。
这就是“Linux 发行版”一词的本质含义:一组旨在协同工作的软件包,可从单一位置获取。随着时间的推移,Linux 发行版为其产品添加了越来越多的功能:软件包管理器可轻松安装和卸载软件包,安装程序可轻松在新系统上安装发行版,有时,当发行商觉得选项特别缺乏时,他们会开发自己的软件。他们开始开发跨应用程序的一致外观,等等。
但从本质上讲,它们仍然是一些包的集合。