TenForward

技術ブログ。はてなダイアリーから移転しました

lxc 的 Plamo Linux のススメ

連休中なので技術的要素のあまりないお話を :)

私が Linux を使い始めた頃といえば,Distribution は Slackware Linux で,そこに JE という日本語環境を整えるパッケージを集めたものを追加でインストールするのが主流でした.そこに現れたのが? Plamo Linux という,Slackware に JE 入れるんやったら,最初から JE 適用したような Distribution にすればええやん,というものでした.Plamo も一時期は Software Design に付録で付いたり,シーラカンス本 (PostgreSQL) に付録で付いたりと,日本ではかなりメジャーな Distribution だったと思います.

時代は進み,Red Hat が自身の Distribution を商用化し,サポートも充実させた結果,お仕事では RHEL/CentOS が使われる事が多くなり,また Ubuntu などの登場により,Plamo Linux が使われる場も減り,もしかしたらもう消滅してると思っている方も多いのではないでしょうか

ところが,Plamo Linux は着実に進化をとげ,今でも十分趣味にも仕事にも使える Distribution として生きています.今の最新バージョンである 5.x 系は,かなりの完成度ではないかと思います.私は仕事の Desktop 環境として常用していますし,各種ソフトウェア環境も結構新しく,リリース当初の古いバージョンで固定されている RHEL よりは,最新の Linux 環境を体験できる場としても使えるのではないかと思います.このブログの Linux kernel のコンテナ関係のお試しもかなりの部分は Plamo Linux 上で行っています.

さて,この新しい環境を生かして,Plamo では仮想化関連のパッケージも充実しており,contrib 扱いのパッケージですが,kvm だけでなく lxc もメンテナ自身が常用するほぼ標準パッケージ相当の完成度で品揃えされています.Plamo の lxc パッケージはほぼ Ubuntu 的な構成で作成されており (パクリともいうw),世の中の Ubuntu の lxc を前提とした仕組みとほぼ同等の環境なので vagrant-lxc も docker も,インストールすれば普通に使える状態です.あと,もちろん vagrantkvm で使いたいという場合にも libvirt のパッケージも整備されていますので vagrant-kvm を使って使用可能です (VirtualBox 入れれば普通に使えるのは当然として :p)

Plamo メンテナの私が lxc 推しな所もあって,lxc で使える Plamo Linux テンプレート (lxc-plamo) も私が作成して使える状態でメンテナンスされて,パッケージが作成されていました.数年前から Plamo コンテナ on Plamo は使える状態だったのです.

最近になって,メンテナの田向さんによる lxc-plamo テンプレート改良の結果,完成度が上がり,lxc のリポジトリ最新でも動作するものになり,どうせだったら lxc に取り入れてもらったらいいのでは,ということで Pull Request を投げた所,すんなりマージしてもらえました (パチパチ!).

さらに,これは私からすると目から鱗の改良でしたが,Slackware 由来の pkgtool がシンプルなパッケージ管理システムであることを生かして,pkgtool が入っていない環境でも,簡単にパッケージを扱う環境が作成できるので,Plamo/Slackware 以外の環境でも Plamo コンテナが作成可能なようにする改良され,この改良も即マージされ,Distribution を問わず Plamo コンテナが使えるようになりました!!

lxc-plamo で生成される設定ファイルが 1.0 でしか動かない設定ファイルなのですが,これで簡単にコンテナで Plamo を試せる環境が整ったわけです./proc, /sys をマウントしている設定部分さえいじれば,0.9.0 でも 0.8.0 でも動くはずです.

あと,docker 好きなみなさんのために Plamo x86_64 docker イメージも作成済みです.

これで docker pull して Plamo を docker でも試せますね!!

lxc 的には Plamo を試す敷居はすごく低くなりましたので,ここらで一つ Plamo Linux で,シンプルで見通しのよい Linux 環境を体験してみてはいかがでしょうか!