Emulating the XO/lang-ja

From OLPC
< Emulating the XO
Revision as of 06:04, 22 August 2007 by Abee (talk | contribs) (remove link from anchor)
Jump to navigation Jump to search
  翻訳された Emulating the XO 原文  
  english | español日本語한국어portuguêsрусский   +/- 変更  
This is an on-going translation


ラップトップの中にラップトップが


クイックスタート - LiveCD

多くの人にとっては、LiveCDを使う方法がSugarを試してみるのに最も簡単な方法です。最も簡単なのですが、リブートするとあなたが行った作業が消えてしまいます。

2007年7月の段階では、Live CDは3ヶ月以上も更新されていませんでした。その間ソフトウェアは大幅に進歩してしまったので、果たしてLive CDが更新されるまで役立つものかどうか定かではありません。

For many, the LiveCD is the easiest way to try Sugar. It's easy to do, but your work is lost when you reboot.

As of July 2007, the Live CD hasn't been updated in more than 3 months. The software has advanced greatly during that time, so it's not clear the Live CD is of much use until it gets updated.

クイックスタート - エミュレーション

エミュレーションSugarを試すもう一つの方法です。セットアップがやっかいですが、しかし作業の内容が維持されます。

現在、TamTamのサウンドがうまく機能しないみたいです。MitchellNCharity 13:16, 5 June 2007 (EDT)

Emulation is the other way to try Sugar. It can be harder to set up,, but work is preserved.

Sound in TamTam may not be working at the moment. MitchellNCharity 13:16, 5 June 2007 (EDT)

クイックスタート(開発者向け)

エミュレーションでの開発はソフトウェア開発のための一つの代替手段です。

ここから最新イメージを入手してください。(add link to tinderbox) XOをエミュレーションで動かす/クイックスタートに書かれているようにQEMUとカーネルアクセラレーションをインストールしてください。/Help_and_tipsの"Development"の項も参照のこと。

505が現在動作確認済みの最新版です。541以降のビルドも動きますが、しかしコラボレーション機能が壊れています(他のラップトップをブラウズすることができません)。
541と505の間の多くのビルド、例えば531, 529, そして525はブートしません。しかしながら50x以降のいくつかは動くみたいです。

Developing on emulation is one alternative for developing software.

Get the latest image from here. (add link to tinderbox) Install QEMU and kernel acceleration as described in Emulating the XO/Quick Start. See the /Help_and_tips "Development" section.

505 is the most recent build known to work. Builds after 541 run, but collaboration is broken (you can't see other laptops).
Many builds between 541 and 505, including 531, 529, and 525, didn't boot. However, some of the later 50x may work.

概要

OLPCのソフトウェアを走らせる一つの方法はあなたのPCでエミュレータ(と呼ばれる種類のソフト)を使うことです。その他の方法についてはプログラミングを始めようをご覧下さい。

ノート:Category:Emulation and Help and tips

遊ぶだけなら、LiveCdを使うのもいいですし、クイックスタートも参考になります。

開発をするには、LiveCdやQEMU(クイックスタートにありますが、別のイメージを使います)、あるいはLiveDC以外の開発用イメージの一つを使うのも良いでしょう。その他の方法については、 Sugarをインストールするを試してみてください。プログラミングを始めようにそのあたりの比較が書いてあります。


一般的な開発手法はkqemuアクセラレータと共にQEMUを使うことです。基本的な事柄についてはクイックスタートをご覧下さい。 ちなみに私たちが開発をするときは、2,3のユーティリティプログラムと共に異なる.imgを用います。最新安定版が書かれているOS imagesのページをご覧下さい。


qemuの替わりに、VMwareを走らせることもできますし、Macではその他のやり方もあります。


イメージについてのユーザフィードバックにあなたの体験談をお寄せください。そこに一般的な仮想化に関する部屋というのがあります。


XOディスクイメージにおける制限があります。


LATEST-STABLE-BUILD(最新案定版)と最新のビルドとの違いは本物のXOを走らせている人々にとってしばしば話題の中心となります。エミュレーションでは、開発者は普通LATEST-STABLE-BUILDを使います。そして安定化版が古くなると、開発者以外もおそらくそれを使うべきでしょう。

One way to run oplc software is using an emulator on your pc. See Getting started programming for other options.

Note Category:Emulation and Help and tips.

For play, you can use LiveCd or Quick Start.

For development, you can use LiveCd, or qemu (as in quick start, but with a different image), or perhaps one of the Developer Images other than the LiveCd. An alternate approach is to attempt installing sugar. See Getting started programming for a comparison.

A common development approach is to use QEMU with kqemu acceleration. See Quick Start for the basics. Though for development, we will use a different .img, one with a few extra utility programs. See OS images, including latest stable build.

Instead of qemu, you can run VMware, and there are additional options on a Mac.

Please report your experiences in User Feedback on Images. There is a Virtualization Common Room.

There are limitations with XO disk images.

The LATEST-STABLE-BUILD versus LATEST build distinction is mostly of interest to people running on actual XO's. In emulation, developers should usually use LATEST. And when STABLE is old, non-developers probably should too.

XOと代替環境との比較

OLPCラップトップ(XOのことです)は特殊なハードウェアで、Sugarの走るスリム化されたRed Hat linuxを走らせます。しかしもしあなたがXOを持ってなかったら?その場合は2~3の方法と共に使える、いくつかの方法があります。

An OLPC laptop is custom hardware, running a stripped-down Red Hat linux, running Sugar. But what if you don't have a real olpc laptop? There are a several options, which can each be used in a couple of ways.

おすすめ

プラットフォーム 目的 お勧め
Windows 開発 emulated xo disk image; or emulated Ubuntu with sugar-jhbuild; (or develoepr CD or LiveCD)?. (need your reports)
Mac 開発 emulated xo disk image; or emulated Ubuntu with sugar-jhbuild; (or developer CD or LiveCD)?. (need your reports)
Mac with Parallels 開発 Ubuntu 32-bitをインストールし, そしてUbuntu Linuxの上でSugarを動かす。/Macを参照のこと.
Ubuntu 32-bit 開発 Sugar with sugar-jhbuildUbuntu Linuxの上でSugar
32-bit linux 開発 Sugar with sugar-jhbuild
64-bit linux 開発 qemu下でxoディスクイメージ; もしくはLiveCd once it gets updated (currently it's April)
Windows/Macの開発者の選択肢としてのlive CDというのは私は懐疑的です。実際それが開発に使われいているというのをいまだ聞いたことがありません。それらのCDはすでに数ヶ月も前(4月から)のものです。しかしMcfletchが(5月に)言ってますが、それも一つの選択肢だ、ということなのでとりあえず追加しています。MitchellNCharity 09:19, 23 June 2007 (EDT)

Mcfletch おそらくLive CDはもはや選択肢ではないでしょう。Red Hatはリリースを停止しているようですし。開発者CDですら、すでに古くなりすぎています。

{

背景

選択肢 更新状況 サウンド機能? カメラ? ライブラリ? Etoys? 読み/書き? 開発ソフトウェアの有無? ネット? その他
Sugarをインストールする 継続的 yes yes? yes? yes yes your own yes いくつかのプラットフォームでは、この選択肢は時間とスペースを食います。(数時間と~3GBくらい), しかし一応"動きます"。その他については、非常にインストールが難しいです。
Sugarをインストールする, エミュレータ(qemu, parallels, もしくはvmware)で走っている32-bit Ubuntuの仮想環境上に。
LiveCd 4月 yes(boot) yes?(qemu) yes?(boot) no(qemu) no yes no toolchain, Gnome yes? クイックスタートのもう一つの方法。 qemuからのブートと利用が両方とも可能です。問題:A
XOディスクイメージ:
最新安定板 http://olpc.download.redhat.com/olpc/streams/development/LATEST-STABLE-BUILD/
...development-ext3.img ~毎月 yes/B no yes yes yes no after config Sugarを試してみるためのクイックスタート用
...development-devel_ext3.img ~毎月 yes/B no no yes yes a little after config
最新版 http://olpc.download.redhat.com/olpc/streams/development/LATEST/
...development-ext3.img ~毎日 yes/B no yes yes yes no after config
...development-devel_ext3.img ~毎日 yes/B no no yes yes a little after config 新参の開発者向け。(多少コマンドラインでの作業を気にしない人向け).
その他
FC6+Sugar April yes? ? ? no yes Full Fedora Softare Dev. yes 6GB (4月のバージョン: etoysが入ってません)

凡例:

ライブラリ: サンプルコンテンツのライブラリ(ただし英語版)が含まれている。例えばネットワークにつながってないときにwebブラウザでいることのできるナイスなテキストが含まれているか、とか。
読み/書き (書き込み可): .imgを使った場合に、セッションの間あなたが作業状況を保存できるかどうか。.isoイメージを使った場合、毎回スタートするたびに同じ状態から始まります。
開発ソフトウェア: 開発ソフトウェアが含まれているかどうか?
ネット(ネットワーク): ネットワーク機能が"あるべき姿でちゃんと動く"か、それとも"手動で"動かす手続きが必要か?

問題:

A: fc6 x86_64上のLiveCD(4月版)では、kqemu下でカーネルパニックを起こします。A squashfs problem
B: Tam Tamが鳴りません。(EToysはノイズは出力するのですが。。。)原因不明

ノート:

  • 改めて"sugar-jhbuildはカメラ/マイクをサポートしてるんですか?": "はい、カメラでv412で640x480を使えば。多分それでいけると思います" これについてどなたか確認してもらえませんか? (#olpc, now) MitchellNCharity 00:16, 2 June 2007 (EDT)

Doables:

  • 上記LiveCdの"?"を削除する
  • Tam Tamのサウンド関係で何がおきているのか究明する。XOディスクイメージを使う分には全てサウンドはOKなんですが。
  • マイクのカラムを追加する?サウンド/カメラ/マイクの項目をH/Wの項目としたほうがいいか?
{

ステップ-バイ-ステップでインストールする

ここには、あなたがXOのエミュレーション環境を動かせるようにするための情報が集められています。あなたはすでにLinuxを走らせ、そしてqemuとkqemuをインストール済みであることを想定しています。

仮想のxo環境ではサウンドとカメラが動きません。一番目の理由は、いったいなぜ動かないのかいまだに誰も解明できてないからです[1]。二番目の理由として、qemuがまだそれらをサポートしていないからです。

http://olpc.download.redhat.com/olpc/streams/development/LATEST/devel_ext3/ に行って、-devel_ext3.img.bz2という番号の付いているイメージとそのmd5を入手してください。ここの例ではビルド485を使っています。

md5sum -c olpc-redhat-stream-development-build-485-20070703_0249-devel_ext3.img.bz2.md5

bzcat olpc-redhat-stream-development-build-485-20070703_0249-devel_ext3.img.bz2 > xo-485a.img

これで1GBほどのファイルができます。

export PORT=2221
qemu-system-x86_64  -soundhw es1370 -serial `tty` -kernel-kqemu -redir tcp:$PORT::22 -hda xo-485a.img

x86_64 cpuを持っていないならば、qemu-system-x86_64の代わりにqemuを使ってください。

スクリーンがすぐに真っ暗になるでしょう。そして青い"GNU GRUB"スクリーンが表示されます。もし暗いままならば、qemuのバグです。qemuをキルして再度立ち上げてください。

ブートメッセージがスクロールして行き、そして最終的にXOの最初のログイン画面が現れるはずです。これはとりあえずそのままにしておきます。

qemuをスタートさせたウィンドウで、ログインプロンプトが表示されているはずです。

  1. rootになります。
  2. そして:
/etc/rc5.d/S98NetworkManager stop
mv /etc/rc3.d/S98NetworkManager /etc/rc3.d/DISABLED-S98NetworkManager
mv /etc/rc5.d/S98NetworkManager /etc/rc5.d/DISABLED-S98NetworkManager
echo ifup eth0 >> /etc/rc.local

ifup eth0 
killall X

Xをキルすることでsugarを再スタートさせます。

大文字小文字を区別せずに名前を入力したいときは、Xがリスタートするのを待たねばなりません。その後以下を実行:

su olpc -c"DISPLAY=:0 xmodmap -e 'keycode  77 = Multi_key'"

これによってNum_lockキーをMulti_keyとして使えるようになります。しかし残念なことに、次回Xをリスタートするとこの設定は失われます。もっといい方法があればよいですが。

この時点で、新しいXOを使いはじめることができるかもしれません。しかしながら、スクリーンの解像度が正しくありません(1024x768)。そこで開発のために、あるいはより実際に近いXOを体感するために、あともう少し作業を続ける必要があります。


いったんsugarのメイン画面にたどり着いたら、Neighborhoodビュー(近所を見渡す)(F1)。もし他の人が見えなければ、現在稼動中のサーバに問題があるか(ひょっとすると小うるさいファイアウォールの内側にあなたはいるのかもしれません)、あるいはあなたの使っているqemuでのネットワーク機能が壊れているかのいずれかです。(qemuの中ではpingが機能しないので注意が必要です)

次のステップは厳密には必須ではありませんが、sshとscpを使えるようになります。これらはあなたのホストOSとXOとの間でファイルなどのいろんなものを送ったり受け取ったりするのに非常に便利です。

XO上で、rootのまま以下を実行します。

1. rootのパスワードを変更

もし"BAD PASSWORD: "とか表示されたり、あなたの入力したパスワードについて何か文句を言われても気にしなくていいです。ちゃんと動きますので。

2. olpcのパスワードを変更します。

これでsshとscpが使えるようになります。


現在のQEMUのバージョンは1200x900をサポートしていません。ですのでXephyrリモートXサーバを使うのです。毎回あなたがxoをブートしたとき、もし解像度が1200x900になっていたら、"(初回のみ)"と記されたステップを除き、これらのステップを再度実行する必要があります。


1. 引き続きxo上でrootのまま以下を実行:

init 3
sleep 5
ifup eth0

su olpc
grep export /usr/bin/sugar > ~/env
source ~/env

もし"already running"というメッセージが出てifup eth0が失敗することがるかもしれませんが、問題ありません。おそらくすでに上記が実施済みだからでしょう。

2. ホストOSに戻って, Xephyrの準備 (初回のみです)

mcookie > xephyr-cookie
export COOKIE=`cat xephyr-cookie`
rm -f xephyr-xauth; echo "add :1 . $COOKIE" | xauth -f xephyr-xauth
echo $COOKIE

3. XO上で: "su olpc"でolpcユーザにて以下を実施, クッキーを保存します: (初回のみです)

echo "add 10.0.2.2:1 . " PUT-THE-COOKIE-HERE | xauth

4. ホストOSに戻ってXephyrをスタートさせます:

Xephyr :1 -auth xephyr-xauth -reset -screen 1200x900x16 -dpi 200

たびたびXephyrが死んでリスタートが必要になるたびに、おそらくXephyr自身のウィンドウで上記を実行する必要が有るでしょう。

5. xo上で、引き続き"su olpc"にてolpcユーザのまま, sugarをスタート:

DISPLAY=10.0.2.2:1 sugar

実際には、私はホストOSからsshして、そして以下のようにsugarを走らせています:

a. ホストOS上で,

ssh -o NoHostAuthenticationForLocalhost=yes -p 2222 olpc@localhost

b. 表示されたシェルで,

source ~/env
export DISPLAY=10.0.2.2:1
sugar

以下も一緒に走らせるといいでしょう

xmodmap -e 'keycode  77 = Multi_key'

これで大文字小文字を無視するモードにNum_lockキーを使って入れます。 しかしこれを最初にやるとXephyrが死んでしまうようです(涙)

これであなたは正しい解像度にてXOの最初のログイン画面を見ることができるはずです。 大文字小文字を無視するためにNum_lockキーを使えます。 おめでとう!でも手順がやっかいでごめんなさい。


複数のXOを走らせるには(例えばコラボレーション機能で遊んだりするのに)、上記のステップを繰り返してください。xo-485b.imgを作成し、そして違うポート番号(例えば2222とか)を使ってください。Xephyrを使っている場合は、2番目のXephyrをスタートさせてください。その場合説明中の...:1(訳注:Xディスプレイの番号)を、10.0.2.2:2(訳注:ディスプレイ番号が2)としてください。 これで自分自身が見えるようになるはずです。そしてWrite(訳注:Sugar上で動くXOのアプリケーションの一つ)でコラボレーションが可能になります。

以下の手続きを実行すると、毎回xoのパスワードを繰り返し入力しなくてよくなります。しかしこれは必須ではありません。また後でもっと簡単にできるようになります。


ホストOSに戻り、

1. まだsshのキーを作成していなければ、キーを作成します。/Help_and_tips#SSH into qemu, using a keyを参照のこと。

2. キーをXOにコピーします。

scp -o NoHostAuthenticationForLocalhost=yes -P $PORT ~/.ssh/id_rsa.pub root@localhost:~/

3.XOで、rootのままで、キーをあちこちに設置しましょう。

mkdir ~root/.ssh
mkdir ~olpc/.ssh
cat ~root/id_rsa.pub >> ~root/.ssh/authorized_keys
cat ~root/id_rsa.pub >> ~olpc/.ssh/authorized_keys

さぁこれでパスワードを再入力することなく、sshとscpが使えるようになりました。

xauth -f xephyr-xauth
echo $COOKIE

3. On the xo, still as "su olpc", record the cookie: (First time only)

echo "add 10.0.2.2:1 . " PUT-THE-COOKIE-HERE

リンク集

  • Tutorial Written by IBM on how to get this working.