東京エリア Debian 勉強会
資料

上川 純一 dancer@debian.org
IRC nick: dancerj

2007 年 3 月 17 日

本日の agenda

仮想化友の会、
Debian 勉強会の紹介

Windows から見える
仮想化世界

事前課題紹介Debian の仮想化技術
紹介

仮想化常識 Quiz

最後に

Debian 勉強会の紹介

東京エリア Debian 勉強会とは？

Debian Developer である 上川 純一 が発起人

東京エリア Debian 勉強会とは？

Debian Developer である 上川 純一 が発起人
2005 年 1 月から開始

東京エリア Debian 勉強会とは？

Debian Developer である 上川 純一 が発起人
2005 年 1 月から開始
月に 1 回コンスタントに勉強会を行っている

東京エリア Debian 勉強会とは？

Debian Developer である 上川 純一 が発起人
2005 年 1 月から開始
月に 1 回コンスタントに勉強会を行っている
場所は荻窪にある公民館（あんさんぶる荻窪）

勉強会 の目的

現状は ML と IRC と WEB だけが情報源、情報交換に限りがある勉強会 の目的

現状は ML と IRC と WEB だけが情報源、情報交換に限りがある
実際に face to face で話し合える場所がない

勉強会 の目的

現状は ML と IRC と WEB だけが情報源、情報交換に限りがある
実際に face to face で話し合える場所がない
情報が断片的で、まとまったドキュメントがない勉強会 の目的

定期的に集まれる場所を作ろう

1

http://tokyodebian.alioth.debian.org

勉強会 の目的

定期的に集まれる場所を作ろう
勉強会を行うときは必ず資料を作成する

1

http://tokyodebian.alioth.debian.org

勉強会 の目的

定期的に集まれる場所を作ろう
勉強会を行うときは必ず資料を作成する
もちろん、資料は DFSG Free、Web サイトで公開 1

1

http://tokyodebian.alioth.debian.org

勉強会 の目的

定期的に集まれる場所を作ろう
勉強会を行うときは必ず資料を作成する
もちろん、資料は DFSG Free、Web サイトで公開 1
最終的にはみんなガリガリパッケージを作れるように1

http://tokyodebian.alioth.debian.org

勉強会 の内容

Debian Weekly News Quiz

勉強会 の内容

Debian Weekly News Quiz
毎回 Debian に関する マニアックなお題
Debian Policy について
dpatch / quilt / dbs の使いかた
Debconf 現地からの報告などなど

勉強会 の内容

Debian Weekly News Quiz
毎回 Debian に関する マニアックなお題
Debian Policy について
dpatch / quilt / dbs の使いかた
Debconf 現地からの報告などなど

もちろん Debian に関するユーザー向けの話題もやってます
Macbook on Debian
Debian sid へいざない
BTS のしかたなどなど

勉強会 の内容

Debian Weekly News Quiz
毎回 Debian に関する マニアックなお題
Debian Policy について
dpatch / quilt / dbs の使いかた
Debconf 現地からの報告などなど

もちろん Debian に関するユーザー向けの話題もやってます
Macbook on Debian
Debian sid へいざない
BTS のしかたなどなど

GPG キーサインパーティ

勉強会 の内容

Debian Weekly News Quiz
毎回 Debian に関する マニアックなお題
Debian Policy について
dpatch / quilt / dbs の使いかた
Debconf 現地からの報告などなど

もちろん Debian に関するユーザー向けの話題もやってます
Macbook on Debian
Debian sid へいざない
BTS のしかたなどなど

GPG キーサインパーティ
宴会という名の交流会

勉強会 を行ってからの結果

Debian Package メンテナーが増えた
小林さん
やまねさん
三塚さん
岩松

勉強会 を行ってからの結果

Debian Package メンテナーが増えた
小林さん
やまねさん
三塚さん
岩松

Debian Developer 予備軍が増えた

勉強会 を行ってからの結果

Debian Package メンテナーが増えた
小林さん
やまねさん
三塚さん
岩松

Debian Developer 予備軍が増えた
Debian に関する資料が増えた

勉強会 を行ってからの結果

Debian Package メンテナーが増えた
小林さん
やまねさん
三塚さん
岩松

Debian Developer 予備軍が増えた
Debian に関する資料が増えた
Debian での日本語の環境がよくなりつつある勉強会 を行ってからの結果

Debian Package メンテナーが増えた
小林さん
やまねさん
三塚さん
岩松

Debian Developer 予備軍が増えた
Debian に関する資料が増えた
Debian での日本語の環境がよくなりつつある
Debian JP Project の正式勉強会になった

勉強会 を行ってからの結果

Debian Package メンテナーが増えた
小林さん
やまねさん
三塚さん
岩松

Debian Developer 予備軍が増えた
Debian に関する資料が増えた
Debian での日本語の環境がよくなりつつある
Debian JP Project の正式勉強会になった
出張 Debian 勉強会を行うようになった
北海道大阪

メンバーのメンテナンスしているパッケージ例

山根さん: eclipse-nls, jd, ttf-vlgothic
岩松さん: flash, tinywm, ttf-mona
小林さん: serf, skkdic, skksearch
みつかさん: canna
えとーさん: qwik

今後の予定しているお題

darcs, quilt, git を Debian パッケージに活用する
Debian インストールから実戦投入まで
Debconf 7 報告会

今後の開催予定

2007 年 4 月 21 日
18:00 から 荻窪にて開催予定
2007 年 5 月 19 日
場所未定。

Web サイト

東京エリア Debian 勉強会 Web サイト
http://tokyodebian.alioth.debian.org

仮想化友の会の紹介

事前課題の声「仮想化を実際にこういう利用方法で活用しています」
事前課題内容紹介

都内在住前田さん (2X 歳・独身 (仮)) の場合

Windows でしか使えないハードウェア (プリンタ・スキャナ・コピー複合機) を使うため北側の部屋 (サーバルーム兼図書室) に置いているミニタワー型
PC の VMware 上の Windows を使うのに、SSH で X をポートフォワーディングさせて、和室のノート PC で使ってます。(北側の部屋は寒いので。) ちょうど今は、VMware 上の Windows をリモー
トで表示させて、確定申告の用紙を印刷するのにフル活用中。(年末は年賀状) 普通にリモートデスクトップを使えば？というツッコミはなしでおねがいします。結局、プリンター ((EpsonCC-700)) が Windows でしか使えないからなのですが…

某社の暗号化ツール対応のため秘文で暗号化したファイルは Windows の exe 形式のため、Linux上では複号できないため、VMWare か KVM 上の Windows に一度ファイルを持っていって復号した後、復号済みのファイルをLinux に持っていく、という使いかたをしていますLet’s note の無線 LAN ドライバを抽出するため

今使っている、Let’s note R3 は購入直後にきれいさっぱりWindows を消しており、ndiswrapper で Windows のドライバを使用するのに、Windows が必要だったので
1

Panasonic のサイトからドライバを VMware 上の Windows にダウンロード

2

普通に展開しようとすると、ハードウェアのチェックが入る
ので、lhaplus で解凍、tarball に圧縮

3tarball を Linux に持っていき、展開して ndiswrapper で使用ipw2200 がダメだったので、ndiswrapper に逃げた結果なのですが・・・

別のディストロを試すため。

自宅の PC や鯖にはネイティブには Debian を入れており、別のディストロを試すために、毎回入れ直すのが面倒になったので（前はテスト専用機で１ヶ月に一度くらいの頻度でいろんなディストロを入れ直してましたが）仮想化友の会会員 Yoshihiro Yoshida さんの場合の仮想化利用方法

システムバックアップ

通常のサーバの場合、ＯＳを含めたシステムバックアップの取得には、 ＣＤブートやシングルユーザでのブートが必要となり、サーバの台数が多いと 時間のかかる作業となってしまいま
すが、仮想化ソフトを使用していれば、 イメージファイルのバックアップだけですむため、バックアップ作業の時間が 大幅に短縮できますサーバリプレース

古い資産を使い続けたいのに、古い OS に対応するハードウェアが見つからない というケースが最近みられるのですが、そういった場合には無理にハード ウェアを探すのではなく、スペックに余裕のあるマシンに仮想化環境を構築 し、そこで古い資産を動作させることが可能ですvmotion livemigration によるノンストップ切り替え

どんなクラスタソフトでも運用機と待機機が切り替わる際にはサーバの停止が 必要となってしまいます。しかし、VMotion やLive Migration といった機能を 使用することにより、サーバをノンストップで切り替えることが可能となりますサーバの配布に使用

東京でサーバのセッティングを行い、全国の各支店に送付するようなケース がまれにあるのですが、そのような場合にも仮想化ソフトを使用すれば筐体を 東京に集める必要はなく、イメージを送付するだけでサーバの配布が可能と なります

インストーラの試験に使用

通常インストーラの試験を実施するためには、インストール、アンインストールを繰り返し実施する必要がありますが、仮想化ソフトの スナップショット機能を使用すると簡単にインストール前の状態に戻すことが できるため、効率的に試験を実施することが可能になりますアプリの異常系試験

通常の環境では躊躇してしまうような大胆な異常系の試験もス
ナップショット で簡単に環境を戻せることを考えれば、気軽に実施することが可能になりす岡山県在住 芝さんの場合

旧環境の保存

旧バージョンのブラウザやフォント環境で css のテストやアプリケーションの動作チェック、Visual Studio 6.0 環境の保存ができるネットワーク環境のテスト

１マシン上で複数 OS のクライアントサーバ環境がテスト出来る、開発時は高負荷かけないのでノート PC でも十分なときが多い一時利用サーバ

常時使うわけではないので専用機を準備するのは勿体ない PXE
サーバ等に活用

1CDLinux で遊ぶ

Windows 上の仮想環境から knoppix 立ち上げることが多いような感じです仮想環境ですと焼かなくて済むのとディスクアクセスが速いので遊びやすいです実用例ですとドイツのネットカフェでqemu から knoppix 立ち上げて日本語打ってました。
もう少し軽快になると USB メモリで HDD イメージ持ち歩くのが普通になるかもしれません。メール環境やブラウザのクッキー持
ち歩くとか考えるよりシンプルですよね東京都在住 Debian 勉強会 岩松さん (2X 歳 独身) の場合

Debian installer のテスト

qemu を使って、Debian-installer のテストをしています。

別アーキテクチャ上のテスト

qemu を 実機を持っていない アーキテクチャのテストに使っています。Debian のパッケージメンテナンスを行う時に非常にありがたい存在です。

CPU のシミュレーションとして実機がない場合でも、Linux カーネルの開発が行えるように、qemu を使っています。基板の設計と Linux カーネルの開発が同時に進行できるので、便利です。

他ディストリビューションを使う

複数のディストリビューションを使う時に Xen を使っています。
コンパイラをチェックするときに、ディストリビューション毎にPC があっては管理が面倒くさいので、Xen 上で 複数のディストリビューションを動かし、テストに使っています。

Debian 勉強会 上川の場合

goodbye-microsoft.com を試す

Windows から Debian がインストールできるらしいんですけど、Debian 上で動いている kvm で動いている Windows で Debian をインストールしてみました。
動いた動いたlinux-vserver を試す

気軽に試すために、linux-vserver を kvm 上でインストールして試してみました
仮想 OS として動いている Debian でインストールするとすぐに試せます
apt-get install linux-image-vserver-686 util-vserver

PaSoRi を使う

PaSoRi を使うために利用仮想化常識クイズ

仮想化は最近流行しています。ただ、猫も杓子も仮想化といっている現状、本当に常識をただしく理解してますか？OSC の会場に到達できるみなさまであれば問題ないとは思いますが、念のため確認テストをさせていただきます。

問題 1. 仮想化での paravirtualization とはなにか

A 仮想用に OS が変更されている

B パラパラで仮装する

C 並列で仮想化する

問題 1. 仮想化での paravirtualization とはなにか

答えは:

A 仮想用に OS が変更されている

B パラパラで仮装する

A
C 並列で仮想化する

問題 2. Intel の VTって何?

A 「バレーボール取ってきて」

B 真空管 (vacuum tube)

C Intel 社が提唱する CPU の仮想化支援の仕組

問題 2. Intel の VTって何?
答えは:

A 「バレーボール取ってきて」

B 真空管 (vacuum tube)CC Intel 社が提唱する CPU の仮想化支援の仕組

問題 3. Windows を仮想化環境で実行することによる利点は何か

A Windows VISTA ではライセンスを考えくてすむようになる

B Windows がフリーソフトウェアになる

C Windows が Linux 上で動く

問題 3. Windows を仮想化環境で実行することによる利点は何か
答えは:A Windows VISTA ではライセンスを考えくてすむようになる

B Windows がフリーソフトウェアになるC
C Windows が Linux 上で動く

問題 4. 別途カーネルが独立して必要では無い仮想化実
装はどれか

A user-mode-linux

B xen

C openvz

問題 4. 別途カーネルが独立して必要では無い仮想化実
装はどれか
答えは:

A user-mode-linux

B xen

C openvz

C問題 5. kvm はなぜカーネルのメインラインにマージされたか?

A 作者がイケメンだった

B 政治力

C 影響範囲のコードが小さい

問題 5. kvm はなぜカーネルのメインラインにマージされたか?
答えは:

A 作者がイケメンだった

B 政治力CC 影響範囲のコードが小さい

問題 6. kvm は paravirtualization をどういう方式で実現しているか

A 仮想環境で実行される Linux カー
ネルが paravirt ops 機構を利用し、VMCALL 命令を発行することでホスト OS に連絡する

B 根性・気合いC 愛情

問題 6. kvm は paravirtualization をどういう方式で実現
しているか
答えは:

A 仮想環境で実行される Linux カー
ネルが paravirt ops 機構を利用し、VMCALL 命令を発行することでホスト OS に連絡する

B 根性・気合いC 愛情

A問題 7. x86 CPU において VMEXIT を発行する命令として、代表例である CPUID 命令の OPCODE は下記のうちどれか。

A 0x55

B 0x0f 0xa2

C 0x5d問題 7. x86 CPU において VMEXIT を発行する命令として、代表例である CPUID 命令の OPCODE は下記のう
ちどれか。
答えは:

A 0x55

B 0x0f 0xa2

C 0x5dB

問題 8. AMD-V と Intel-VT の一番大きな違いは次のどれか

A 会社が違う

B 命令が違う

C 思い入れが違う

問題 8. AMD-V と Intel-VT の一番大きな違いは次のどれか
答えは:A 会社が違う

B 命令が違うA
C 思い入れが違う

問題 9. Xen の Domain-U の U は何か

A Unprivileged

B UserC Unix問題 9. Xen の Domain-U の U は何か

答えは:

A Unprivileged

B UserA
C Unix問題 10. Xen という名前は何から由来したかA XenoB 作者の娘の名前

C 禅寺

問題 10. Xen という名前は何から由来したか

答えは:

A XenoB 作者の娘の名前

AC 禅寺

問題 11. KVM はなんの略か

A Keyboard Video Mouse

B Kernel-based Virtual Machine

C 「これ持ってる?」「こんなビデオ持ってるぜ」

問題 11. KVM はなんの略か
答えは:A Keyboard Video Mouse

B Kernel-based Virtual MachineB
C 「これ持ってる?」「こんなビデオ持ってるぜ」

問題 12. i386 の場合の Domain-U の ring level は何?

A1

B2

C3

問題 12. i386 の場合の Domain-U の ring level は何?

答えは:

A1

B2

C3

A

問題 13. Debian Project で推奨する仮想化の技術は？

A xen

B kvm

C DFSG に合致するものならなんでもよい問題 13. Debian Project で推奨する仮想化の技術は？

答えは:

A xen

B kvm

C DFSG に合致するものならなんでもよいCWindows から見える仮想化世界

山根さん

KVM

前田さん

濃い話 1

平さん:私はこれで○○を辞めました。

KVM 活用例

上川goodbye-microsoft.com を試すgoodbye-microsoft.com を試すgoodbye-microsoft.com を試すgoodbye-microsoft.com を試すgoodbye-microsoft.com を試すgoodbye-microsoft.com を試すgoodbye-microsoft.com を試すgoodbye-microsoft.com を試す

無事 goodbye-microsoft.com が稼働することを確認できました。

PaSoRi を試す

qemu でホスト OS の USB デバイスをゲスト OS の USB デバイスとして見せることができ、KVM でも同様。PaSoRi できるじゃん！
qemu-img create -f qcow -b winxp.cow winxp.cow-work
kvm -localtime \-hda winxp.cow -m 400 \-redir tcp:3389::3389 \-usb -usbdevice host:054c:01bb
注 1： kvm を実行する場合には /dev/kvm と /proc/bus/usb にアクセス権限が必要
注 2： 054c:01bb は PaSoRi の USB デバイスとしてのベンダーとID 番号PaSoRi を試す: PiTaPaPaSoRi を試す: Edy チャージ

KVM の詳細の濃い話

QEMU 三段活用
qemu
kqemu
kvm

qemu

qemu

実行対象のコード解析、コードを生
parse
code

generate return成して実行

通常のエミュレータといわれるアプリケーション
基本的傾向として、ネイティブに対してオーバヘッドがあり、遅い
類似事例：aranym, bochs, Java VMなど

generated codekqemu
実行対象のコードをユーザ空間で実行してしまい、実行できない命令が/dev/kqemu
発行されたら発生する exception をトラップすることで実装
kqemu.ko
exception
仮想モードにフルバーチャライゼー
ションモードと通常のモードがあexecute
り、’- kernel-kqemu’ オプションで指定。通常のモードだとユーザ空間のcode
み直接実行でカーネル空間についてはエミュレーション。フルバーチャ
ライゼーションモードだとゲスト OSのカーネル空間もユーザ空間で直接実行するそうだ
類似事例：VMWare 等
qemu

kvm
qemu
/dev/kvm
kvm.kovmexitexecutecode

実行対象のコードを CPU の仮想化機能を活用して実行する
類似事例：Xen 等

濃い話 2

平さん：KVM ソースネタ

最後にブースを出しています。詳しく濃い話がしたいかたはブースにて。
勉強会を開催しています。
Debian 勉強会の月例会、次回は 2007 年 4 月 21 日 (土曜日)
18:00-21:00 予定です。
仮想化友の会の次回は未定？