LSB, Linux Standard Base とは、Linux の各ディストリビューションが備えるべき最低限の機能のセットを定めた標準仕様のことです [1]。以前 LSB について判りやすく取りまとめようと、「〜 はじめに」と称してほんのさわりを書き出したのですが、そのままなかば放置されてしまっていました [2]。
Wikipedia に説明されていることは判るのですが [3]、具体的にまとめていこうと LSB のサイトを眺めても、どこから手を付けていけばよいかアイデアが出てきませんでした [4]。しかし、参考サイト [5] からアプリケーションが LSB に準拠しているかどうかをチェックするツール (lsb-app-checker) がダウンロードできるようになっているので、まずはどんなものか使ってみることにしました。LSB の specification(規格)のドキュメントも同じサイトからダウンロードできますが、おいおい見てみることにしましょう。
使用した環境は以下のとおりです。
- PC: ASUS X200MA-B-BLUE
- CPU: Celeron N2830
- DRAM: 4GB
- HDD: 500GB
- OS: Fedora 24 (x86_64)
まず、参考サイト [5] から、sb-app-checker-local-5.0.0-3.x86_64.tar.gz をダウンロードして、展開します。
$ tar xvf lsb-app-checker-local-5.0.0-3.x86_64.tar.gz
./
./lsb-app-checker/
./lsb-app-checker/dbdata/
./lsb-app-checker/dbdata/IIndex_x86-64.gz
...
...
展開したファイルから lsb-app-checker/README を読むと、このプログラムを実行するには Perl が、RPM パッケージファイルをテストするには rpm2cpio が必要だとあります。dnf search コマンドで調べると、perl-Archive-RPM.noarch がヒットします。RPM パッケージファイルのテストがいつ必要になるかわからないので、とりあえずインストールしておきます。
$ dnf search rpm2cpio
google-chrome 1.5 kB/s | 3.4 kB 00:02
Fedora 24 - x86_64 7.0 MB/s | 47 MB 00:06
Fedora 24 - x86_64 - Updates 6.1 MB/s | 5.3 MB 00:00
メタデータの期限切れの確認は、0:00:04 時間前の Sun Jun 26 16:48:25 2016 に実施しました。
================================ 一致: rpm2cpio ================================
perl-Archive-RPM.noarch : Work with a RPM
root ユーザになってインストールします。
$ su パスワード: # dnf install perl-Archive-RPM.noarch メタデータの期限切れの確認は、0:26:53 時間前の Sun Jun 26 16:23:22 2016 に実施しました。 依存性が解決されました。 ================================================================================ Package アーキテクチャ バージョン リポジトリ 容量 ================================================================================ インストール: perl-Archive-RPM noarch 0.07-12.fc24 fedora 24 k perl-B-Hooks-EndOfScope noarch 0.20-1.fc24 fedora 40 k perl-Carp-Clan noarch 6.04-21.fc24 fedora 30 k ... ... perl-namespace-clean noarch 0.26-2.fc24 fedora 35 k perltidy noarch 20160302-1.fc24 fedora 400 k トランザクションの要約 ================================================================================ インストール 46 パッケージ 総ダウンロード容量: 3.1 M インストールされる容量: 7.5 M これでいいですか? [y/N]: y パッケージをダウンロードしています: (1/46): perl-Archive-RPM-0.07-12.fc24.noarch.rp 232 kB/s | 24 kB 00:00 (2/46): perl-MooseX-AttributeHelpers-0.25-1.fc2 899 kB/s | 131 kB 00:00 ... ... インストール済み: perl-Archive-RPM.noarch 0.07-12.fc24 perl-B-Hooks-EndOfScope.noarch 0.20-1.fc24 ... ... 完了しました! #
ディレクトリを bin へ移し、app-checker-start.pl を実行してみます。このツールは Web アプリケーションで、ポートを指定しないで実行すると使用可能なポートを選択してくれるようです。この例では 8889 が選択されます。
# cd ./lsb-app-checker/bin/ # ls app-checker-start.pl lsbappchk lsbappchk.pl lsbpkgchk app-checker-stop.pl lsbappchk-sh.pl lsbappchk.py # ./app-checker-start.pl The port '8889' will be used by the AppChecker web-UI server. If you want to change this, run ./app-checker-start.plServer started. Log file location: /home/bitwalk/ダウンロード/lsb-app-checker/log/app-checker-server.log.8889 The start page should be opened in a browser shortly. If it doesn't open, you can load it at http://notepc:8889/
デフォルトのインターネットブラウザである Firefox が起動し、http://127.0.0.1:8889/ が表示されます。
Application Check のリンクをクリックします。
例として、Name のエントリに、'Fedora 24 bin' などと入力して、'Select Application Components...' のボタンをクリックします。
例として /opt 選択して 'finish' ボタンをクリックします。
'Run the Test' ボタンをクリックして待つこと…、残念ながら、この環境は貧弱すぎるのか、固まってしまって、更にしばらくどうしようか思案しているとログアウトしてしまいました。
繰り返すこと数回。ようやくこんな画面が出てきました。
この画面から LSB 5.0 に準拠している Linux ディストリビューションはまだ存在しない、ということだけは判りました。
とにかく、テストを実行すると負荷が掛かり過ぎるようです。もう少しパワフルなテスト環境を用意することを検討した方が良さそうです。次回は LSB について、もっと真面目にまとめてみます。
参考サイト
- LSBとは|Linux Standard Base - 意味/定義 : IT用語辞典
- bitWalk's: Linux Standard Base (LSB) とはなにか 〜 はじめに (2016/01/02)
- Linux Standard Base - Wikipedia
- Linux Standard Base (LSB)
- Download
にほんブログ村