Linux标准规范

<image>

Linux标准规范（Linux Standard Base，缩写为LSB）是一个在Linux基金会组织结构下由多个Linux发行版联合参与的项目，其目标是使Linux内核符合软件系统架构（包括文件系统层次结构标准）。LSB基于POSIX，单一UNIX规范和其他一些开放标准，并在某些方面做了扩展。

“LSB的目标是开发并推动一组开放标准，它将增进在Linux发行之间的兼容性，并确使软件应用以二进制形式运行在任何遵循系统之上。此外，LSB将致力帮助协调募集软件厂商，去为Linux操作系统移植和编写产品。”

一个产品的LSB遵循性可以通过一个验证过程来验证。

LSB规范的例子：标准函式库，一系列的命令和工具以扩大POSIX的标准，文件系统架构的layout，运行级别，打印系统，假脱机如CUPS及几个X Window系统的扩展。

## 发布历史

- 1.0：首发于2001年6月。
- 1.1：发布于2002年1月。新增硬件特殊规定（IA32）。
- 1.2：发布2002年6月。新增硬件特殊规定（PowerPC 32-bit）。2002年7月开始认证。
- 1.2.1：发布于2002年10月。新增Itanium。
- 1.3：发布于2002年12月。新增硬件特殊规定（Itanium、Enterprise System Architecture/390、z/Architecture）。
- 2.0：发布于2004年9月。LSB被模块化为LSB-Core、LSB-CXX、LSB-Graphics、LSB-I18n（没有发布）。新增硬件特殊规定（PowerPC 64-bit、AMD64）。LSB同步单一UNIX规范（SUS）版本3。
- 2.0.1：LSB 2.0的ISO版本, 其中包括所有硬件架构（除了LSB-Graphics，其中只有一个通用的版本可用）。
- 2.1：发布于2004年。
- 3.0：发布于2005年7月1日。其它函式库的变化，C++ API变更为gcc 3.4所用的版本。核心规格更新至ISO POSIX（2003），技术更正1: 2005。
- 3.1：发布于2005年10月31日。这个版本提交为ISO/IEC 23360。
- 3.2：发布于2008年1月28日。这个版本提交为ISO/IEC 23360。
- 4.0：发布于2008年11月11日。这个版本有以下的改变：
- glibc 2.4。
- 二进制兼容LSB 3.x。
- 更容易使用SDK。
- 支援新版本的GTK及Cairo图形函式库。
- Java（可选组件）。
- 建立符合LSB兼容的RPM包的更简单方法。
- 加密API的可选模块（通过网络安全服务库）。
- 4.1: 发布于2011年2月16日。
- 移除Java
- 来自LSB 4.0的“试用模块”，涵盖多媒体（ALSA）、安全（NSS）和桌面杂项（xdg-utils）已经被提升为要求的子模块。
- 更新的GTK+、Cairo和CUPS库。
- 增加了3个新的测试套件。
- 5.0：发行于2015年6月2日，这个版本已经被提交为ISO/IEC 23360:2021。
- GNU C库版本2.10（用于psiginfo）。
- 打破后向兼容于早期版本的第一个主要发行（兼容于LSB 3.0，大部分兼容于LSB 3.1和后来版本，具有一些例外）。
- 合并入FHS 3.0所做变更。
- 移除了Qt 3库。
- 进化的模块策略；LSB被模块化为LSB核心、LSB桌面、LSB语言、LSB成像和LSB试用。

## ISO/IEC标准

LSB版本3.1，被注册为官方ISO/IEC国际标准，它的主要部分有：

- ISO/IEC 23360-1:2006 Linux Standard Base (LSB) core specification 3.1 — Part 1: Generic specification
- ISO/IEC 23360-2:2006 Linux Standard Base (LSB) core specification 3.1 — Part 2: Specification for IA-32 architecture
- ISO/IEC 23360-3:2006 Linux Standard Base (LSB) core specification 3.1 — Part 3: Specification for IA-64 architecture
- ISO/IEC 23360-4:2006 Linux Standard Base (LSB) core specification 3.1 — Part 4: Specification for AMD64 architecture
- ISO/IEC 23360-5:2006 Linux Standard Base (LSB) core specification 3.1 — Part 5: Specification for PPC32 architecture
- ISO/IEC 23360-6:2006 Linux Standard Base (LSB) core specification 3.1 — Part 6: Specification for PPC64 architecture
- ISO/IEC 23360-7:2006 Linux Standard Base (LSB) core specification 3.1 — Part 7: Specification for IBM企业系统架构#ESA/390架构 architecture
- ISO/IEC 23360-8:2006 Linux Standard Base (LSB) core specification 3.1 — Part 8: Specification for z/Architecture architecture

还有ISO/IEC TR 24715:2006标准，它标识出在ISO/IEC 23360（the Linux Standard Base 3.1 specification）和ISO/IEC 9945:2003（POSIX）国际标准之间的冲突区域。

LSB版本5.0，也被注册为官方ISO/IEC国际标准：

- ISO/IEC 23360-1-1:2021 Linux Standard Base (LSB) — Part 1-1: Common definitions
- ISO/IEC 23360-1-2:2021 Linux Standard Base (LSB) — Part 1-2: Core specification generic part
- ISO/IEC 23360-1-3:2021 Linux Standard Base (LSB) — Part 1-3: Desktop specification generic part
- ISO/IEC 23360-1-4:2021 Linux Standard Base (LSB) — Part 1-4: Languages specification
- ISO/IEC 23360-1-5:2021 Linux Standard Base (LSB) — Part 1-5: Imaging specification
- ISO/IEC TS 23360-1-6:2021 Linux Standard Base (LSB) — Part 1-6: Graphics and Gtk3 specification
- ISO/IEC 23360-2-2:2021 Linux Standard Base (LSB) — Part 2-2: Core specification for X86-32 architecture
- ISO/IEC 23360-2-3:2021 Linux Standard Base (LSB) — Part 2-3: Desktop specification for X86-32 architecture
- ISO/IEC 23360-3-2:2021 Linux Standard Base (LSB) — Part 3-2: Core specification for IA64 (Itanium™) architecture
- ISO/IEC 23360-3-3:2021 Linux Standard Base (LSB) — Part 3-3: Desktop specification for IA64 (Itanium TM) architecture
- ISO/IEC 23360-4-2:2021 Linux Standard Base (LSB) — Part 4-2: Core specification for AMD64 (X86-64) architecture
- ISO/IEC 23360-4-3:2021 Linux Standard Base (LSB) — Part 4-3: Desktop specification for AMD64 (X86-64) architecture
- ISO/IEC 23360-5-2:2021 Linux Standard Base (LSB) — Part 5-2: Core specification for PowerPC 32 architecture
- ISO/IEC 23360-5-3:2021 Linux Standard Base (LSB) — Part 5-3: Desktop specification for PowerPC 32 architecture
- ISO/IEC 23360-6-2:2021 Linux Standard Base (LSB) — Part 6-2: Core specification for PowerPC 64 architecture
- ISO/IEC 23360-6-3:2021 Linux Standard Base (LSB) — Part 6-3: Desktop specification for PowerPC 64 architecture
- ISO/IEC 23360-7-2:2021 Linux Standard Base (LSB) — Part 7-2: Core specification for S390 architecture
- ISO/IEC 23360-7-3:2021 Linux Standard Base (LSB) — Part 7-3: Desktop specification for S390 architecture
- ISO/IEC 23360-8-2:2021 Linux Standard Base (LSB) — Part 8-2: Core specification for S390X architecture
- ISO/IEC 23360-8-3:2021 Linux Standard Base (LSB) — Part 8-3: Desktop specification for S390X architecture

ISO/IEC 23360和ISO/IEC TR 24715可从ISO网站上自由下载。

## 外部链接

- Linux Standard Base Specifications Archive , linuxfoundation.org
- Linux Standard Base (LSB) , wiki.linuxfoundation.org
- Open Linux VERification (OLVER) Project , linuxtesting.org
- search for lsb packages, pkgs.org
- lsb, pkgs.org
- lsb in Launchpad , launchpad.net - bug reports

媒体：

- Additional Vendors Participate in Growing LSB Effort , 1998, debian.org - describes the breakdown of teams (at the time) and who was involved, of historical interest
- Four Linux Vendors Agree On An LSB Implementation, 2004, slashdot.org
- Yes, the LSB Has Value , 2005, licquia.org – response to Drepper by Jeff Licquia

## 基本资料

- 头衔：Linux Standard Base
- 缩写：LSB
- 状态：已出版
- 首次出版：2001年6月29日
- 版本：5.0
- version_date：2015年6月2日
- 委员会：ISO/IEC JTC 1/SC 22
- 系列：ISO/IEC 23360
- 基础标准：POSIX, SUS
- 领域：软件兼容性