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

我正在阅读Linux标准库,并想知道Ubuntu中使用的结构是否与LSB中建议的结构相同。 我知道有些发行版不遵循或对LSB做一些更改,所以我也想知道Ubuntu是否有一些变化,以及这些变化是什么。

对于11.10和12.04, Linux Standard基本版本为4.0,如Launchpad中所述 。 正如Linux基金会所解释的那样,LSB是

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

LSB规范概述了许多内容的标准 ,例如文件系统,核心库和诸如libc系统调用之类的关键function。 它还指定了软件包装标准,即使其默认包系统不使用rpm系统,分发也必须支持rpm标准 。

规范还包含运行级别和init脚本的标准 ,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 

这些LSB头中提到的$local_fs等目录列在/etc/insserv.conf 。 有关init更多信息,请参阅本Ubuntu一书的第168页

很难找到Ubuntu与LSB标准不同的特定区域,而LSB软件包的免责声明是这些软件包的存在确实存在

并不意味着Debian完全符合Linux标准库,不应被视为Debian符合LSB标准的声明。

但是,一般来说,Ubuntu和Debian都打算合规,它们包含命令lsb_release来指示发行版的一般合规性。 但是,它们会在必要时偶尔出现与文件系统层次结构相关的差异,如下面的答案中所述:

  • 如何理解Ubuntu文件系统布局?

像Debian这样的Ubuntu’努力通过“外星人”计划遵守LSB’,但据信并不完全符合。

Interesting Posts