RedHat 和 CentOS 是二进制兼容的。因此,适用于其中一个的所有内容很可能也适用于另一个(相同的 RPM、相同的库、相同的版本、相同的依赖项)...
将 Ubuntu LTS 与 Debian 进行比较时是否也是如此?当尝试为 Ubuntu LTS 构建镜像时,我注意到这些软件包来自 Debian 存储库......
一切是否会像 RH/CO 一样以同样的方式工作,或者这是昼夜差异(就像 OpenSuSE 与 SLES 相比)?
答案1
它们不一定是二进制兼容的。话虽如此,大多数软件包可能都能正常工作。我偶尔这样做过,但从来没有遇到过问题。
不过,不建议在单个系统上混合使用 Debian 和 Ubuntu 软件包。如果你打算这样做,请尽量将其保持在最低限度。如果你过多地吸引对方,那么也许你真的只是想要对方。我想说,当您觉得需要添加外部源时,您可能运行了错误的源。
两个版本的冻结时间越接近(即 Ubuntu LTS 和 Debian 版本的冻结),您的兼容性就越好。
如果它是一个 deb 格式的第三方软件包,表明它适用于其中一个,那么它几乎肯定可以在另一个上工作,几乎没有问题。
请记住,这是轶事这只是我的经验。确实有不保证甚至暗示交叉兼容性。如果出现问题,不要指望 Debian 或 Ubuntu 社区会给您太多同情。在那种情况下,你基本上只能靠自己了。只要您对此感到满意,就可以尝试一下。
答案2
不,Debian 和 Ubuntu 不兼容二进制。 Debian 和 Ubuntu 可能使用不同的编译器ABI、不同的内核版本、不同的库、不同的软件包/版本等。由于并非所有 Ubuntu 软件包都在 Debian 中(反之亦然)deb 软件包也可能依赖于可卸载的版本。
RedHat和CentOS是一样的,CentOS基本上都是从RedHat获取所有源码包并编译。但Ubuntu确实如此多得多例如提供自己的软件包、打包自己的软件、使用旧版本或新版本的上游软件、修复错误等。
所以从技术上来说它们不兼容二进制。
我可能让它听起来比现实更糟糕。但重要的是要了解 Ubuntu 和 Debian 之间的关系不是rhel 和 CentOS 之间的任何东西
答案3
Ubuntu/Debian 兼容性
太长了;博士
不是技术上,但很多包都是。
如何获得最好的机会
使用 Ubuntu LTS 和 Debian Stable,或 Ubuntu 和 Debian Sid/Testing。
差异
- Ubuntu 和 Debian 使用不同的编译器。 AFAIK Ubuntu 是在之前的 Ubuntu 上编译的,而 Debian 是在之前的 Stable 上编译的。
- Ubuntu 和 Debian 在不同的地方有一些库。
- Ubuntu LTS 使用 upstart,而 Debian 使用 systemd。
- Ubuntu 和 Debian 有不同的软件包名称。
如何让它发挥作用
做
- 仅安装隔离的软件包。
- 仅将它们安装在非关键计算机上。
不
- 添加国外资源。
- 从其他发行版安装太多软件包。
- 从其他发行版安装关键库。例如,添加其他系统的浏览器就可以了。添加 libc6 则不然。
答案4
Ubuntu 源自 Sid,Debian 的不稳定滚动发布版本,每个 Ubuntu 主要版本只不过是冻结在某个时间点的 Sid,并丰富了将 Debian 转变为 Ubuntu 发行版的所有内容。
你的问题的答案是否定的。
有些库还放置在具有不同命名约定的目录中。 Ubuntu 内核甚至还没有接近普通版本,并且充满了补丁。