tl;dr: Ubuntu是否将库更新到可以更改/删除API元素的版本?
由于Debian缺乏修补内核以支持新硬件,我遇到了一些问题,在我的组织中,新的笔记本电脑太新,无法运行Debian稳定。我雇了一个Debian承包商来创建一个带有支持内核的安装CD,但是一周后,他一直无法生产它。
现在,我不得不考虑将公司迁移到Ubuntu。但我因为以下的噩梦而失眠:
apt upgrade。Y之后,我注意到qt5-default已经从5.9.5增加到5.10.0。对于Debian,我不担心,因为它根本不更新。我们只得到安全补丁。令人心碎的是,新硬件不受支持。由于我没有那种拉与OEM只订购之前生产的笔记本电脑Debian稳定的版本,我需要另一个解决方案。
Ubuntu索赔,他们只执行“点发布”。当我查看16.04内核历史来了解这意味着什么时,我看到他们确实将内核从4.4更新为4.15。这告诉我,Ubuntu可能不愿意增加主要的修订,但他们愿意增加次要的修订。
我不介意从libboost到1.67.0到1.67.1的更新,但我害怕1.68.0的更新。
如果我不能对Ubuntu的稳定性有信心,那么以下是可能的解决办法,尽管建议是受欢迎的:
apt-mark hold <package>将阻止特定包的升级:发布于 2018-08-04 09:34:26
更新Ubuntu不会升级内核版本。只应用安全修补程序。
当前的LTS发行版是仿生。
Ubuntu 18.4.1 (26.4.2018)
LTS发行版中的自动内核更新仅由硬件支持栈启用。
Ubuntu内核释放液
在这里可以看到,除非启用了HWE,否则LTS中的内核升级不会完成。

Ubuntu核支撑棚
在这里,您可以看到只有安全补丁已经实现。

Ubuntu是否将库更新为可以更改/删除API元素的版本?答案是否定的。我能确信Ubuntu不会升级那些不兼容的软件包吗?答案是是的,你可以。
Debian稳定也是如此。
目前稳定的版本是拉伸。
Debian 9.5 ( 14.7.2018版,支持到2022年)
linux的开发
企业环境中软件开发的最佳实践是运行虚拟机,这样您就可以轻松地使用快照来保护您的工作。
示例 Qubes操作系统是一个面向安全的操作系统,它允许您使用XEN hypervisor ( KVM虚拟化的相反,)运行虚拟机(和模板,包括debian)。
如果您使用的是Qt,并且需要阻止其更新,请尝试setUpdatesEnabled(false);并启用setUpdatesEnabled(true);更新。
发布于 2018-08-04 12:19:55
不同。
使用4.13.0-26搜索询问Ubuntu,您将发现2018年1月以来的101个问题和答案。当时发布的Linux版本是用于LTS内核4.14链的。
看看Ubuntu主线内核下载,我们看到4.14.11通过4.14.17 (七个内核更新)于2018年1月由Linux发布。我们还看到2018年1月发布的候选内核是4.15.rc6通过4.15.rc9 (四个内核更新)。
2018年1月,Linux为谱和熔毁预测分支理论内存泄漏做了主要的内核修订。反过来,Ubuntu团队迅速将代码移植到UbuntuKernel4.13.0-xx链中。
从ABI实验室上我们可以看到最近的变化发生在2018年6月4日、5日和6日:

我们可以看到2018年6月修改的Linux内核编号是:
4.14.48,4.9.107和4.4.136所有6年的LTS内核相应的Ubuntu内核版本号可能是:
4.13.0-43标头安装失败:与当前内核匹配的Linux内核头文件4.15.0-23 apt删除脚本中断当新的硬件支持或对现有硬件的错误修复发布时,我们需要升级Linux内核。当涉及ABI/API更改时,Ubuntu内核可能工作,也可能不工作。即使ABI/API没有发生更改,Ubuntu也可能因为其他原因而中断。
对于局外人来说,寻找新的Linux内核版本编号和Ubuntu内核版本编号之间的关联是非常困难的。以Ubuntu 2017年年6月6日最近的时事通讯为例,它比上面的ABI/API更改早一年:
Kernel Versions
====================================================================
precise 3.2.0-126.169
trusty 3.13.0-119.166
vivid 3.19.0-84.92
xenial 4.4.0-78.99
yakkety 4.8.0-53.56
linux-lts-trusty 3.13.0-117.164~precise1
linux-lts-vivid 3.19.0-80.88~14.04.1
linux-lts-xenial 4.4.0-78.99~14.04.1我们看到那个时间段(2017年6月7日)的相应的Linux内核版本号是:3.2.89、3.10.105、3.16.44、3.18.56、4.1.40、4.4.71、4.9.31、4.11.4和4.12-rc4。
您可以考虑使用自动克隆、升级和功能测试,而不是在周一早上昏昏欲睡的时候使用临时sudo apt upgrade:
cron后,将创建一个重新启动脚本来运行sudo apt upgrade并运行您的测试函数。cron重新启动脚本将为无人值守的升级和单元测试运行。grub设置为重新启动为活动环境,然后关闭。https://askubuntu.com/questions/1062198
复制相似问题