Czy Ubuntu jest zgodne z Linux Standard Base (LSB)?

12

Czytałem o Linux Standard Base i zastanawiałem się, czy struktura używana w Ubuntu jest taka sama, jak sugerowana w LSB. Wiem, że niektóre dystrybucje nie śledzą lub nie wprowadzają zmian w LSB, więc chcę również wiedzieć, czy Ubuntu ma jakieś zmiany i jakie to są zmiany.

Luis Alvarado
źródło
Która wersja Ubuntu , czy po prostu ogólnie?
david6,
1
Ogólnie. Ale odkąd zaczynam pytać od 11.10, zacznę od 11.10.
Luis Alvarado,

Odpowiedzi:

8

W wersjach 11.10 i 12.04 podstawową wersją Linux Standard jest 4.0, jak zaznaczono na Launchpadzie . Jak wyjaśniono w Linux Foundation , LSB jest

podstawowy standard systemu operacyjnego Linux, który zachęca do współpracy między aplikacjami a platformą. Zawiera pisemną specyfikację interfejsu binarnego, zestaw pakietów testowych zarówno dla dystrybucji, jak i aplikacji zapisujących do standardu, a także przykładową implementację do celów testowych.

Specyfikacja LSB określa standardy wielu rzeczy, takich jak system plików, biblioteki podstawowe i kluczowe funkcje, takie jak libcwywołania systemowe. Określa również standardy pakowania oprogramowania oraz fakt, że dystrybucja musi obsługiwać standard rpm, nawet jeśli domyślny system pakietów nie używa systemu rpm.

Specyfikacja zawiera również standard poziomów uruchamiania i skryptów inicjujących, a pokrewny pakiet zawarty w Ubuntu to lsb-base. Ten pakiet, zgodnie z własnym opisem, zawiera

biblioteka powłoki init-functions, która może być używana przez skrypty inicjujące inne pakiety do logowania do konsoli i innych celów.

Najłatwiejszym sposobem zademonstrowania obsługi tych initstandardów przez Ubuntu jest uruchomienie

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

a następnie sprawdź jeden z wymienionych plików. Sudo, na przykład, będzie miał specyfikację nagłówka LSB na początku skryptu:

### 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

Katalogi takie jak $local_fswymienione w tych nagłówkach LSB są wymienione w /etc/insserv.conf. Więcej informacji na temat znajduje się na initstronie 168 tej książki o Ubuntu

Trudno jest znaleźć konkretne obszary, w których Ubuntu odbiega od standardów LSB, a zastrzeżeniem dotyczącym pakietów LSB jest to, że istnienie tych pakietów

nie oznacza, że ​​Debian jest w pełni zgodny ze Standardową Podstawą Linuksa i nie należy go interpretować jako stwierdzenia, że ​​Debian jest zgodny z LSB.

Ogólnie jednak zarówno Ubuntu, jak i Debian zamierzają być zgodne i zawierają polecenie lsb_releasewskazujące ogólną zgodność dystrybucji. W razie potrzeby będą jednak powodować rozbieżności w odniesieniu do takich rzeczy, jak hierarchia systemu plików, jak zauważono w odpowiedziach tutaj:

Społeczność
źródło
Muszę powiedzieć doskonałą odpowiedź. Daje +1 głosowaniu, gdy otrzymam za to punkty.
Luis Alvarado,
1
Ta odpowiedź wyjaśnia szczegóły dotyczące standardowego LSB i linki do oficjalnego pakietu ubuntu lsb. Ale nie znalazłem tutaj oficjalnego statusu ubuntu vs lsb, biorąc pod uwagę na przykład obecny LTS lub jakiekolwiek postępy w kierunku zgodności. Nie wiem, czy wykonano jakieś testy zgodności przeprowadzone w 12.04. Na stronie LSB nie znalazłem żadnych takich informacji. Więc patrzę na ubuntu i nic nie znalazłem. Przypuszczam więc, że obecny rozwój Ubuntu wcale nie koncentruje się na LSB. Czy mam rację? Albo nie?
karolszk
@karolszk Nadal szukam więcej informacji i mogę rozszerzyć odpowiedź, jeśli znajdę bardziej szczegółowe fakty na temat obecnego statusu LSB. Ponieważ Ubuntu opiera się na Debianie, warto przyjrzeć się polityce Debaina i zastanowić się nad LSB.
3

Ubuntu, takie jak Debian, stara się przestrzegać LSB poprzez program „obcych”, ale nie uważa się go za w pełni zgodny.

Wilbert
źródło
3
Pakiety LSB to więcej niż RPM. Dla kompletności lepiej byłoby dołączyć pobieżne informacje na lsb-baseopakowaniu.
Jjed