2008年 1月 10日 木曜日
|
|
Messages in cipher reflected in the looking glass [ Yasuhiro Fujitsuki's Weblog ] |
(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]