玩式草子─ソフトウェアとたわむれる日々

第53回 近日公開 Plamo-5.2

この記事を読むのに必要な時間:およそ 5 分

12月に入るとあれこれ雑用も多くなり,あっと言う間に時間が経って,今年もあと一週間弱を残すのみとなりました。ここ数年,年末に合わせてPlamo Linuxの新版をリリースするのが恒例になっていて,今年も,ちょうど今,Plamo Linux 5.2のリリース前の追い込み作業にかかっています。

Plamo-5.2はバージョン番号が示すように,Plamo Linux 5.x系の2度目のメンテナンスリリースです。Plamo-5.1のリリースは5月末でしたので,そこから約半年の間に加えられた変更をまとめています。もっとも,5.0から5.1への更新は比較的小規模だったのに対し,5.1から5.2へは,X Window System回りの入れ替えを含む,かなり大規模な更新となりました。今回は,リリース間近のPlamo-5.2について簡単に紹介してみましょう。

Plamo-5.2の特徴

カーネル

Plamo-5.2ではLinux 3.12.5に,コンソールで日本語を出すためのuniconパッチ,ファイルシステムを重ね合わせてマウントできるaufsパッチ,サスペンド/ハイバネート機能を強化するTuxOnIceパッチなどを適用して採用しています。

$ uname -a
Linux corei3 3.12.5-plamo64 #1 SMP PREEMPT Wed Dec 18 02:26:07 JST 2013 x86_64 GNU/Linux

最近のLinuxでは,長期間メンテナンスされるlongtermカーネル(最近では3.10の系列)と,2度ほどバージョンアップが進めばメンテナンスが終了する通常版カーネルの2種があります。Plamo-5.2で採用した3.12系列のカーネルは通常版カーネルなので,3.14の系列がリリースされるとメンテナンスが終了することになります。

longtermカーネルを使うか通常版カーネルを使うかは悩ましいところですが,後述する「仮想化」に関連した新機能などは,まず通常版カーネルに取りこまれ,ある程度洗練された上でlongtermカーネルに移植される形になるので,Plamo Linuxでは,寿命はあまり長くないものの,新しい機能をあれこれ試せる通常版カーネルを採用しています。

X Window System

Plamo-5.2では,X Window Systemを全面的に更新し,Xorgサーバは1.14.2を採用しています。合わせて,前回までの記事で紹介したように,3Dアクセラレーション機能を担当するMesaLibも9.2.3に更新し,RADEON系のグラフィックカードではLLVMをバックエンドに持つ,Gallium3Dフレームワークを採用したドライバが動作するようになりました。

PC用のグラフィックカードの分野では,かってはATIやMatrox,Cirrus Logicなど多数のメーカーが群雄割拠していましたが,最近ではAMD,NVIDIA,Intelの3社にほぼ収束してきました。それに伴ない,XやMesaLibでもこれら3社のグラフィックカード用のドライバは活発に開発されているものの,それら以外のドライバでは開発が停滞,終了するものが増えてきました。

手元でも,AMD RADEONとIntelのCPU統合型ビデオチップ,VirtualBox等の仮想環境で利用するVESAの3種のドライバは実際に使っているものの,これら以外のドライバはテストできていません。古い世代のグラフィックカードを利用中の方がいれば,ぜひ動作テストをしてみてください。

MATEデスクトップ環境

無理やりメンテナに巻き込んだ(苦笑)⁠植竹さんのご尽力で,以前この連載でも紹介したMATEデスクトップ環境が,1つのカテゴリとしてインストール時に選択できるようになりました。

図1 インストーラのパッケージ選択画面

図1 インストーラのパッケージ選択画面

MATEは,GNOMEプロジェクトが放棄したGNOME2のコードを元に開発されたデスクトップ環境で,ユーザインターフェイスの設計思想から大きく変ったGNOME3とは異なり,GNOME2当時のルック&フィールを保ちつつ,現在のデスクトップ環境に標準的なDBusやudisk等の技術にも対応しています。

図2 MATEデスクトップ環境

図2 MATEデスクトップ環境

GNOME2当時のシンプルな操作性やルック&フィールを懐かしく思う人には,MATEデスクトップ環境はいい選択肢になることでしょう。

KDEデスクトップ環境

比較的小規模にまとまっているXfceやMATEとは異なり,多数のアプリケーションを同梱した大規模なデスクトップ環境であるKDEもPlamo Linuxには含まれており,Plamo-5.2ではKDE-4.11.3を採用しています。

XfceやMATEでは,自前で開発するのはファイルマネージャやテキストエディタといった基幹的なソフトウェアに限定しているの対し,KDEではメーラ(KMail)やWebブラウザ(Konqueror)⁠フィードリーダ(Akregator)などに加え,天体観測や数式処理,化学計算といったアプリケーションソフトウェアを多数開発しており,さながらソフトウェアの展覧会のような様を呈しています。

図3 KDEデスクトップ環境

図3 KDEデスクトップ環境

Plamo-5.1で採用していたKDE-4.9.5ではパッケージ数は147だったのに対し,KDE-4.11.3ではパッケージ数は214にまで増えています。もっとも,これらの中には4.9.5当時は1つのパッケージにまとめられていたkdegamesが,それぞれのゲームごとに分割されて増加した分なども含まれているので,実際に増えたソフトウェアの数はそれほど多くはなさそうです。

Plamo-5.2を全てインストールすると,Xfce,MATE,KDEの3種のデスクトップ環境が利用できるようになります。どのデスクトップ環境を利用するかはadduserコマンドで新規ユーザを登録する際に指定できますし,ユーザのホームディレクトリにある.xinitrcファイルを修正することで随時変更することが可能です。

仮想化機能

最近,開発が急速に進展している仮想化技術関連のパッケージを contrib/Virtualization/以下に収録しました。これらのパッケージをインストールすると,Plamo Linux上でも簡単に仮想化技術を試してみることができます。

特にLXC(LinuX Container)と呼ばれるコンテナタイプの仮想化ツールは,Plamo Linuxメンテナの加藤さんがLXCの開発にも参加されていることもあって,あらかじめPlamo用のテンプレートが用意されており,簡単に最新のPlamo Linux環境のコンテナを構築することができます。

# lxc-create --name plamo-container -t plamo
Checking cache download in /var/cache/lxc/cache-plamo-5.x-x86...
Downloading Plamo-5.x minimal...
Download complete.
Installing packages to /var/cache/lxc/rootfs-plamo-5.x-x86...
aaa_base-5.0-noarch-P2 のインストール中 
PACKAGE DESCRIPTION:
aaa_base-5.0-noarch-P2 のインストールスクリプトを実行中

acl-2.2.51-i586-P1 のインストール中 
PACKAGE DESCRIPTION:
acl-2.2.51-i586-P1 のインストールスクリプトを実行中
...

Copy /var/cache/lxc/rootfs-plamo-5.x-x86 to /var/lib/lxc/plamo-container/rootfs...
Copying /var/cache/lxc/rootfs-plamo-5.x-x86 to /var/lib/lxc/plamo-container/rootfs...
patching file /var/lib/lxc/plamo-container/rootfs/etc/inittab
Setting root password to 'root'...
Please change root password!

コンテナ環境を構築するlxc-createは,必要なパッケージをインターネット経由でダウンロードするため,実行には多少時間がかかるものの,常に最新のパッケージを利用することができます。作成したコンテナ環境はlxc-startコマンドで起動します。

# lxc-start -n plamo-container
INIT: version 2.88 booting
mknod: '/dev/null': File exists
mount: can't find / in /etc/fstab
mount: none mounted on /proc.
..
Welcome to Linux 3.12.5-plamoSMP.

plamo-container login: root
Password: 
Last login: Wed Dec 25 11:28:21 JST 2013 on console
root@plamo-container:~# ps axw
 PID TTY      STAT   TIME COMMAND
   1 ?        Ss     0:00 init [3]
  15 ?        Sl     0:00 /sbin/rsyslogd -m 0 -f /bootlog.conf
  71 console  Ss     0:00 /bin/login --
  72 tty1     Ss+    0:00 /sbin/agetty 38400 tty1 linux
  73 tty2     Ss+    0:00 /sbin/agetty 38400 tty2 linux
  74 tty3     Ss+    0:00 /sbin/agetty 38400 tty3 linux
  75 tty4     Ss+    0:00 /sbin/agetty 38400 tty4 linux
  76 console  S      0:00 -bash
  87 console  R+     0:00 ps axw

このようにコンテナ環境はホストとは隔離され,複数のコンテナ環境を1つのホスト内で運用することができます。

Plamo用のコンテナにはPlamo Linuxの基本環境を構成する00_baseと01_minimumの両カテゴリのパッケージがあらかじめインストールされているので,特定用途向けの仮想サーバを構築することは容易でしょう。

# ls /var/log/packages/
FDclone       etc               less           mlocate          screen
aaa_base      ethtool           libassuan      mpc              sed
acl           expect            libc           mpfr             setserial
...
eject         kmod              microcode_ctl  ruby

contrib/Virtualizaion/以下には,こうやって作った仮想環境をGUI経由で管理するためのvirt-managerパッケージも含まれているので,仮想環境をあれこれ試してみたい人には便利です。

著者プロフィール

こじまみつひろ

Plamo Linuxとりまとめ役。もともとは人類学的にハッカー文化を研究しようとしていたものの,いつの間にかミイラ取りがミイラになってOSSの世界にどっぷりと漬かってしまいました。最近は田舎に隠棲して半農半自営な生活をしながらソフトウェアと戯れています。

URLhttp://www.linet.gr.jp/~kojima/Plamo/index.html

コメント

コメントの記入