2008年 1月 10日 木曜日
Messages in cipher reflected in the looking glass
(JA) Solaris Express XVM/Xen に CentOS 5.1 をインストールする
かなり久しぶりの更新です。今後もぼちぼちと更新していきたいと思います。^-^;
というのはさておき、Solaris Express(nevada) に xvm(xen) サポートが追加されて
しばらく立ちますが、CentOS 5.1 のインストールをしてみたので、
そのログを残しておこうかと思います。
当初は Fedora 8 を入れてみようかと思ったのですが、
サポートされていないようで、うまくいきませんでした。
Solaris Express(nevada)をxvm/xenカーネルで立ち上げた後、
ゲストOSをインストールしますが、インストール前に
CentOSのインストールイメージをサーバ上に用意する必要があります。
簡単に言うと、DVD ISOの中身を展開して、
ネットワーク経由で見えるようにするだけです。
http, nfs, ftp のどれでも構いません。今回は nfs 経由(nfs_server:/export2/soft/CentOS)で見えるようにしてみました。
xvm/xen で OS イメージを作成する virt-install コマンドでは ISO
イメージを直接読み込ませることが可能なんですが、
インストーラがこのイメージを認識出来ないようで、
サーバが無い場合、インストールが行えません。
ネットワーク経由で見えるようになれば、起動もそこから可能なので、
ISOイメージは不要です…。
OS イメージの作成は virt-install コマンドで行います。
オプション指定も可能ですが、 virt-install を起動すると、
設定が必要な項目を確認してくるので、それを利用するのも手です。
ここで設定しているのは
- 仮想マシンの名前 = centos5
- 仮想マシンのメモリ = 512MB
- 仮想マシンのディスクイメージファイル = /export/centos5
- ディスクイメージファイルの容量 = 4GB
- グラフィックスを利用するか = no
*** yes を指定するとGUIインストーラが起動するのですが、 Linux をインストールする場合は no を指定する必要があります。
http://in.opensolaris.org/jive/thread.jspa?threadID=45427&tstart=45 にも出てますが、yes にすると virt-install が途中で終了し、 イメージ作成が行えません。
- インストール元の場所 = nfs:nfs_server:/export2/soft/CentOS
bash-3.2# virt-install What is the name of your virtual machine? centos5 How much RAM should be allocated (in megabytes)? 512 What would you like to use as the disk (path)? /export/centos5 How large would you like the disk (/export/centos5) to be (in gigabytes)? 4 Would you like to enable graphics support? (yes or no) no What is the install location? nfs:nfs_server:/export2/soft/CentOS Starting install... Creating storage file... 100% |=========================| 4.0 GB 00:00 Creating domain... 0 B 00:16 Linux version 2.6.18-53.el5xen (mockbuild@builder6.centos.org) (gcc version 4.1. 2 20070626 (Red Hat 4.1.2-14)) #1 SMP Mon Nov 12 03:26:12 EST 2007 BIOS-provided physical RAM map: Xen: 0000000000000000 - 0000000020800000 (usable) 0MB HIGHMEM available.
設定が終わると、テキストインストーラが起動します。
Welcome to CentOS
+---------+ Choose a Language +---------+
| |
| What language would you like to use |
| during the installation process? |
| |
| Catalan ^ |
| Chinese(Simplified) : |
| Chinese(Traditional) # |
| Croatian : |
| Czech : |
| Danish : |
| Dutch : |
| English v |
| |
| +----+ |
| | OK | |
| +----+ |
| |
| |
+---------------------------------------+
<Tab>/<Alt-Tab> between elements | <Space> selects | <F12> next screen
テキストベースのインストーラが起動しますので、オプションを選択してインストールします。この辺はCentOSのインストールそのものです。
上記のダイアログで日本語の選択もできますが、インストーラの表示は英語のままで、インストールを日本語で行うことはできません。
インストールが終わると、再起動し、設定画面が起動しますので、適切に設定します。
この際、SELinux と ファイアウォールの設定が出てきますが、
無効にしておく方が実験するには楽です。
ファイアウォールを有効にしておいても問題はありませんが、
必要に応じて設定を変更する必要が出てきます。
CentOS では
system-config-securitylevel というコマンドでこの辺の設定が行えます。
仮想マシンの起動などの操作は xm コマンドを利用するようです。
list, start, shutdown, console あたりを知っていれば、
最低限は使えそうです。
# xm start centos5 # xm list Name ID Mem VCPUs State Time(s) Domain-0 0 484 1 r----- 527.1 centos5 6 512 1 -b---- 47.6 # xm console centos5 ..... CentOS release 5 (Final) Kernel 2.6.18-53.el5xen on an i686 localhost.localdomain login:
一応、コンソールベースで使えるようになったのですが、 Xが使える方が便利です。 ということで、Xを使えるようにします。 Solaris Express では標準ではリモートからの接続できないように なっているので、変更する必要があります。
bash-3.2# svccfg -s x11-server listprop options application options/default_depth integer 24 options/server astring /usr/X11/bin/Xorg options/server_args astring options/stability astring Evolving options/value_authorization astring solaris.smf.manage.x11 options/tcp_listen boolean false ..... bash-3.2# svccfg -s x11-server setprop options/tcp_listen = true svc:/application/x11/x11-server
後はXを再起動し、Solaris Express側で
# xhost + centos
としておき、CentOS側で
# export DISPLAY=solaris:0
としてやれば、xtermとかXアプリをSolaris Express上に表示できるようになります。
*** 上記の solaris, centos は
実際のホスト名もしくはIPアドレス
ここまでやったのなら、ついでに CentOS のデスクトップを表示した方が
作業が楽になるだろうということで、ついでにそこまでやってしまいます。
デフォルトでは CentOS の gdm ではリモート接続不可になっているので、
接続できるようにする必要があります。
(XDMCP接続を有効にするというやつです。)
CentOS 5.1 では /etc/gdm/custom.conf を編集します。
赤い字の部分が無い場合は追加してください。
[security]項目のAllowRemoteRoot=trueは必須ではありません。
このオプションを入れることにより root でログインが出来るようになります。
今回はテスト作業を簡単にするために追加しています。
[daemon] RemoteGreeter=/usr/libexec/gdmgreeter [security] AllowRemoteRoot=true [xdmcp] Enable=true
gdmの設定はこれで終わりです。
ファイアウォールを有効にしている場合は XDMCP (177 UDP) に
接続できるように設定を変更してください。
xen/xvmにインストールした CentOS はデフォルトでは
コンソールモードになっており、gdm は起動していません。
runlevel コマンドで確認すると下のように runlevel 3 になっています。
(linux のグラフィカルユーザモードは runlevel 5)
/etc/inittab の id:3:initdefault:
の 3 を 5 に変更しておけば、グラフィカルユーザモードがデフォルトになります
(次回起動時以降)。
[root@localhost sbin]# runlevel N 3 [root@localhost sbin]# cat /etc/inittab # # inittab This file describes how the INIT process should set up # the system in a certain run-level. # # Author: Miquel van Smoorenburg,# Modified for RHS Linux by Marc Ewing and Donnie Barnes # # Default runlevel. The runlevels used by RHS are: # 0 - halt (Do NOT set initdefault to this) # 1 - Single user mode # 2 - Multiuser, without NFS (The same as 3, if you do not have networking) # 3 - Full multiuser mode # 4 - unused # 5 - X11 # 6 - reboot (Do NOT set initdefault to this) # id:3:initdefault:
上記のようなことはしなくても init コマンドでグラフィカルユーザモードに移行することも可能です。
[root@localhost sbin]# ps -ef | grep gdm [root@localhost sbin]# init 5 [root@localhost sbin]# Intel CPU マイクロコードアップデートを適用中: [失敗] Starting monitoring for VG VolGroup00: 2 logical volume(s) in volume group "Vo lGroup00" monitored [ OK ] readahead をバックグランドで起動中: [ OK ] irqbalance を起動中: [ OK ] anacron を起動中: [ OK ] readahead をバックグランドで起動中: [ OK ] [root@localhost sbin]# ps -ef | grep gdm root 2231 1 0 20:29 ? 00:00:00 /usr/sbin/gdm-binary -nodaemon root 2260 1 0 20:29 ? 00:00:00 /usr/sbin/gdm-binary -nodaemon root 2338 1968 0 20:30 xvc0 00:00:00 grep gdm
後は、
# Xnest :1 -query centos
という感じで Xnest コマンドを Solaris Express 側で実行すれば、
CentOS のログイン画面が表示されます。
下図は、そのスクリーンショットと KDE にログイン後の画面です。
Posted at 03:03午後 1 10, 2008 by Yasuhiro Fujitsuki in Linux & Solaris | 投稿されたコメント[2]
Thanks for your excellent report! What's the build number of SXCE are you running?
Also do you have plan in running SuSE 10.3 under xVM in the future?
Thanks again.
Posted by W. Wayne Liauh on 1月月 10日, 2008年 at 05:03 午後 JST #
Test environment is nevada b80,
I tried to install Fedora 8 on xvm, but
I got errors when running virt-install.
virt-install seems to be recognize fedora 8 boot image...
And I have no plan to test SuSE 10.3 on xvm now.
Thank you.
Posted by Yasuhiro Fujitsuki(thaniwa) on 1月月 11日, 2008年 at 10:18 午前 JST #