「オープンソース」を使ってみよう (第20回 openSUSE編) 日本 openSUSE ユーザ会

No Comments
このエントリーをはてなブックマークに追加

————————————-
日本 openSUSE ユーザ会
武山 文信
————————————-

OSCでブースにいると、まず最初に読み方を聞かれることがよくあります。
openSUSEは「オープンスーゼ」(ドイツ語なので「スーセ」(米)など他の呼
ばれ方もあり)と読み、Linuxディストリビューションの1つです。マスコットの
カメレオン、ギーコ(Geeko)で有名?です。

▼OSCではギーコを盛っています。写真撮影歓迎です!!

さて、今回はopenSUSEの一般的な紹介だけではなく、OSSプロダクトのコミュニ
ティの方向けのopenSUSEの内容を中心としました。後半ではSUSE Studioを使っ
たWebアプリケーションのデモLive DVDの作成方法を紹介します。


■openSUSEはデスクトップ向け?
現在のopenSUSEの最新版は2011年11月にリリースされた12.1で、Webサイトから
インストールイメージをダウンロードして、インストールすることができます。
次のバージョンは12.2で2012年7月に公開される予定です。リリースサイクルは
8ヶ月で、12.1以降のバージョン番号は12.2→ 12.3→13.1…と増えていきます。

インストール方法については今回は省略しますが、VirtualBoxを用意すると、
今動いているWindowsなどを壊すことなく簡単にインストールできます。

▼KDE4デスクトップとYaST

openSUSEの大きな特徴は様々なデスクトップ環境をサポートしていることです。
インストール時に「次へ」を押し続けるとKDE4がインストールされますが、
GNOME,XFCE,LXDEの全てをサポートしています。

図はKDE 4のデスクトップ環境です。ウィジェットをデスクトップや画面下のパ
ネルに自由に配置して、カスタマイズすることができます。4になった直後は不
具合が多く、使い物になりませんでしたが、4年以上経った今では十分に安定し
ています。openSUSEのコミュニティ内にはKDEユーザーが比較的多く、リポジト
リを追加して常に最新のKDE環境を使い続けている人もいます。

デスクトップ環境をたくさんサポートしていて、最新のパッケージを取り込んで
いたりするとサーバーには向かないのかと思われるかもしれません。背景に商用
のSUSE Linux Enterprise Server(SLES)の存在があります。SLESはopenSUSEの
開発成果を元に作られており、サーバー用としての役割はSLESが持っています。
RedHatとFedoraの関係に近いでしょう。

openSUSEをサーバーとして使うメリットもあります。SUSE独自のツールは
openSUSE/SLESで共通で、ファイルを直接変更せずにGUIやTUIから各種設定
をできるYaSTや、BtrfsのスナップショットにアクセスするツールSnapperなど
を無償のopenSUSEでも使うことができます。最近はEvergreenプロジェクトに
よる長期サポート(LTS)も行われています。

■SUSE Studio
SUSE StudioはopenSUSEとパッケージをインストールした状態のディスクを
作れるウェブサービスです。通常のインストールメディアだと、DVDから起動
して、必要なパッケージを選んでインストールしますが、インストール済であ
ればすぐに使用することができます。複製すれば同じ構成の環境を同時に構築
できます。作成できるフォーマットとしては次のものがあります。

LiveCD/DVD,USBメモリー
これらのメディアから直接OSを起動します。デモの配布や、一時的にLinux環境
が必要なときに便利です。HDDにインストールすることもできます。

HDDイメージ
仮想マシンに接続して使用できます。特にVPSやクラウドサービスで、使いにく
いブラウザ上のコンソールで発狂しそうになりながらインストーラーを実行しな
くて済みます。Amazon EC2ではサポートされていますが、残念ながら国内のVPS
サービスにはディスクイメージのアップロードに対応していないところもあるよ
うです。

作成したディスクをオンラインで公開することもできます。
http://susestudio.com/browse

■ウェブアプリケーションのデモDVDを作ろう!
簡単なWebアプリケーションのデモDVDを作ってみましょう。
Live DVDを起動すると、ローカルマシン上でApacheを動かし、Rubyで書かれた
Hello World!を実行します。デスクトップ環境も入れておき、Firefoxでアプリ
ケーションを実際に使うことができます。CMSなどに応用すれば、デモDVDの
ユーザーはCMSの設定や投稿も体験することができます。

大まかな手順は、まず必要なパッケージとウェブアプリケーションを含むカスタ
マイズされたopenSUSE(アプライアンス)を作ります。これをオンライン上で
ビルドしてディスクイメージを作成しダウンロードして配布します。

では早速始めましょう。SUSE Studioは以下のURLにアクセスすることで利用でき
ます。最初にアカウントを作成する必要がありますが、OpenID等の認証サービス
に対応しているので、最低限の項目の入力だけでアカウントを作成できます。
SUSE Studio→ http://susestudio.com/

ログインしたら、「Actions」メニューから「Create new appliance」を選択し
ます。作成する目的に応じてテンプレートが用意されています。今回はWebサー
バーでもありますが、デモ用のブラウザが動かなければいけないので「Minimal
X」を選択します。「Architechture」は32bit名前は「Hello World! Demo」とし
ました。「Create appliance」をクリックするとテンプレートそのままのアプラ
イアンスが作成されます。

▼ソフトウェアの設定

次に「Software」タブを開きましょう。まず「Recommended」を選択し、右上
の「Always install recommended software」をチェックします。これでフォント
やUIの翻訳など、最低限としては不要だけれども入れておいた方が良いパッケー
ジを自動でインストールしてくれます。このようにすると手軽にアプライアンス
を作れますが、容量が大きくなってしまう問題もあります。

RubyとApacheをアプライアンスに追加してみましょう。検索ボックスにapacheと
入力して検索すると「apache2」が見つかりますので、左側の「+add」をクリック
します。Rubyも同様に検索して「ruby」を追加します。

Firefoxは「MozillaFirefox」と「MozillaFirefox-branding-openSUSE」の両方が必要
です。後者は初期状態のFirefoxの設定を提供しています。

VirtualBoxやVMWareで実行してもらうことを想定するのであれば以下のパッケー
ジを入れておくと良いでしょう:
– virtualbox-guest-kmp-default
– virtualbox-guest-x11
– virtualbox-guest-tools
– vmware-guest-kmp-default

また、容量を減らすためにいくつかのパッケージをBan(インストール禁止)にして
みました。(容量の大きなパッケージのほとんどは次のステップで言語を変えると
自動的に追加されます)

▼ロケールの設定

ソフトウェアを選択したら次は「Configuration」タブに移動します。
サブカテゴリの「General」では「Language」「Keyboard Layout」「Region」
「Time Zone」を「Japanese」「Asia」「Japan」にそれぞれ設定します。この
ページの一番下ではユーザーアカウントを設定できます。ユーザー名の初期値は
「tux」ですが、openSUSE ユーザー会ではユーザー名を「geeko」にするのが慣
例です。(趣味の問題です)

「Server」サブカテゴリでは、データベースのデータのアップロードを行えます。
CMSであればデモ用のデータをアップロードすると良いでしょう。
今回はデータベースを使用しません。

▼スタートアップの設定

「Desktop」では自動ログインを有効にします。
Firefoxを自動的に起動するために、「Autostart desktop programs」に

firefox http://localhost/cgi-bin/helloworld.cgi

を追加します。

▼Apache サービスの自動起動

最後の設定はApacheの起動です。
「Scripts」タブで「Run script whenever the appliance boots」にチェックを入れ、
echo “Running SUSE Studio first bootscript…”の下に

systemctl enable apache2.service
systemctl start apache2.service

を書き加えます。1行目ではApacheの自動起動を有効にして、2行目でApacheを起
動します。Live DVDでは毎回すべてリセットされるので2行目だけでも構いません。

▼デモアプリケーションのアップロード

「Files」に移動しましょう。デモアプリケーションをアップロードします。
tar.gzやzipなどのアーカイブはアップロードすると自動的に展開してくれます。
helloworld.tar.gzをアップロードし「Move/Rename」で「/srv/www/cgi-bin/」に
設定しました。アーカイブの中身はこのディレクトリの下に展開されます。

実際のアプリケーションではApacheの設定ファイルなどのアップロードも必要に
なるでしょう。

▼アプライアンスのビルド

お疲れ様でした。ついにビルドです。「Default format」は「USB stick/hard
disk image」にしておき、「Additional formats」で必要なものを選びましょう。
「Build」ボタンを押すとビルドが始まります。ビルドにはしばらく時間がかか
ります。

▼サーバー上でテスト実行

ビルドが終わったらビルド結果の横にある「Testdrive」をクリックしてみましょう。
SUSE Studioサーバー上で作成したアプライアンスを実行してテストすることができ
ます。デスクトップ環境のテストは厳しい場合があります。画面左の「Ctrl+Alt+F1」
でコンソールに切り替え、デバッグすると良いでしょう。

▼Firefoxでデモアプリケーションにアクセス

イメージをダウンロードしてVirtualBoxで実行してみました。デスクトップ環境が
IceWMなのと、Firefoxの確認ダイアログがイマイチですが、Rubyで書いたCGIが
実行され、Hello World!が表示されています。デスクトップ環境をKDEやGNOME、
LXDEにすると、見た目はリッチになりますが、パッケージの組合せや容量の削減
が難しくなります。ぜひ挑戦してみて下さい。

■コミュニティに参加しよう!
最近ではopenSUSE ユーザーのためのオンラインイベントが色々と行われていま
す。ユーザ会主催の勉強会ではUstream配信を行い、会場に来られない人はIRCや
Twitter,Skypeで参加できます。また、毎週土曜日の夜にはIRCでのチャット会、
通称「定例」が行われています。日常のTwitterでのやりとりも盛んです。
(一応ユーザ会のアカウント @opensusejaもあります。)興味がある方は是非
ご参加下さい。

openSUSEではビルドの知識があれば、誰でもが開発に参加することもできます。
Open Build Serviceというウェブアプリケーションを使用して開発されており、
開発もオープンになっています。アカウントを作れば既存のパッケージをフォーク
して、変更点を取り込んでもらえるようリクエストすることができます。
一番典型的な作業は、パッケージを最新のものに更新することです。

■最後に
駆け足でしたが、openSUSEとSUSE Studioを紹介しました。
SUSE Studioは少し難しいかもしれませんが、実際に試して頂ければ幸いです。
質問等がある方はメーリングリストやTwitterで聞いて頂ければお答えできると
思います。また、オープンソースカンファレンスにご来場の際は、Geekoが積ん
であるブースにお立ち寄り下さい。

openSUSE 日本語メーリングリスト: http://lists.opensuse.org/opensuse-ja/

Comments are closed.