Ubuntu是否遵循Linux标准库(LSB)?


12

我正在阅读有关Linux Standard Base的文章,并且想知道Ubuntu中使用的结构是否与LSB中建议的结构相同。我知道有些发行版不会跟进或对LSB进行某些更改,因此我也想知道Ubuntu是否进行了某些更改,以及这些更改是什么。


哪个版本的Ubuntu或只是一般版本?
david6 2011年

1
一般来说。但是自从11.10开始问起,我将从11.10开始。
路易斯·阿尔瓦拉多

Answers:


8

对于11.10和12.04,Linux标准基本版本为4.0,如Launchpad所述。如Linux Foundation所述,LSB是

Linux操作系统的核心标准,鼓励应用程序和平台之间的互操作性。它包括一个书面的二进制接口规范,一组用于分发和应用程序向标准写入的测试套件,以及用于测试目的的示例实现。

LSB规范概述了许多事物的标准,例如文件系统,核心库和关键功能(例如libc系统调用)。它还指定了软件包装标准,即使发行版的默认包装系统未使用rpm系统,发行版也必须支持rpm标准

该规范还包含运行级别和初始化脚本的标准,而Ubuntu中包含的一个相关软件包是lsb-base。根据其自身的描述,该软件包包含

init-functions shell库,其他程序包的初始化脚本可以使用该库来进行控制台日志记录和其他用途。

演示Ubuntu对这些init标准的支持的最简单方法是运行

grep -ri "BEGIN INIT INFO" /etc/init.d

然后检查列出的文件之一。Sudo,例如,在脚本开始处将具有LSB标头规范:

### BEGIN INIT INFO
# Provides:          sudo
# Required-Start:    $local_fs $remote_fs
# Required-Stop:
# X-Start-Before:    rmnologin
# Default-Start:     2 3 4 5
# Default-Stop:
# Short-Description: Provide limited super user privileges to specific users
# Description: Provide limited super user privileges to specific users.
### END INIT INFO

$local_fs这些LSB标头提到的目录如列出/etc/insserv.conf。有关更多信息init,请参见此Ubuntu书的第168页

这是很难发现其中的Ubuntu从LSB标准发散的具体领域,并在LSB的软件包的声明是这些包的存在并

并不意味着Debian完全符合Linux Standard Base,并且不应被解释为Debian符合LSB的声明。

通常,Ubuntu和Debian都希望符合标准,并且它们都包含lsb_release指示发行版基本符合性的命令。但是,在必要时,它们有时会与文件系统层次结构等方面产生分歧,如此处答案所示:


我得说个好答案。得到积分后将+1票。
路易斯·阿尔瓦拉多

1
该答案解释了有关标准LSB的详细信息以及ubuntu官方lsb软件包的链接。但是我在这里没有发现ubuntu vs lsb的官方地位,例如考虑当前的LTS或在遵从性方面的任何进展。我不知道是否在12.04中执行了一些兼容性测试。在LSB网页上,我没有找到任何此类信息。所以我在看ubuntu,什么也没发现。因此,我认为当前的ubuntu开发根本不关注LSB。我对吗?或不?
karolszk 2012年

@karolszk我还在寻找更多信息,如果我发现有关当前LSB状态的更多具体事实,可能会扩大答案。由于Ubuntu是基于Debian的,因此可能值得参考Debain政策并考虑LSB。

3

Ubuntu像Debian一样通过“外星人”计划“努力遵守LSB”,但据信并不完全兼容。


3
与RPM软件包相比,LSB的功能更多。为了完整起见,最好在lsb-base包装上包括一些粗略的信息。
杰德(Jjed)
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.