オレンジのトップページ

2009年1月22日木曜日

OpenSolaris 2008.11- Indiana

OpenSolarisがZFSファイルシステムや仮想化が標準となっていたりして魅力的な仕様になっている。 昨年の2008年12月に ZDNetの記事で概要が紹介されていたOpenSolaris 2008.11 (Idiana)をセットアップする。


インストーラはミラーに対応してないので、 インストール後にZFSのRAID1ミラー化するまでを記録。


 


 


インストールメディアの取得はこちら http://opensolaris.org/os/downloads/ から。 オープンソースのディストリビューションは数ギガバイトが普通ですが、ダウンロードのサイズは700MBとコンパクト。

OpenSolaris-Indiana-download.jpg




Live-CDになっていてCDから起動すると、 デスクトップ上のインストール用アイコンをクリックすることでインストール開始。


opensol-inst1.jpg





1基目のディスク全体をインストール先に指定します。 ZFSはソフトウェアミラーリングできますが、それはインストール後に設定します。 このインストールテストは DELL SC440 を使用しています。





opensol-inst2.jpg



30分程度でインストールは終了しますので早速リモートからログインして作成されたZFSストレージプールおよびファイルシステムの情報を確認します。 ZFSストレージプールが rpool という名前でデフォルト作成されています。

*以降のZFSの操作については Sunの Solaris ZFS 管理ガイド を参考にしています。




# zpool status

  pool: rpool

 state: ONLINE

 scrub: none requested

config:



        NAME        STATE     READ WRITE CKSUM

        rpool       ONLINE       0     0     0

          c4d0s0    ONLINE       0     0     0






# zfs list

NAME                      USED  AVAIL  REFER  MOUNTPOINT
rpool                    4.30G  71.0G    72K  /rpool
rpool/ROOT               2.30G  71.0G    18K  legacy
rpool/ROOT/opensolaris   2.30G  71.0G  2.23G  /
rpool/dump               1023M  71.0G  1023M  -
rpool/export             58.5K  71.0G    19K  /export
rpool/export/home        39.5K  71.0G    19K  /export/home
rpool/export/home/admin  20.5K  71.0G  20.5K  /export/home/admin
rpool/swap               1023M  72.0G    16K  -





ディスクのハードウェアIDを確認


# format

Searching for disks...done

AVAILABLE DISK SELECTIONS:

       0. c4d0 <DEFAULT cyl 10008 alt 2 hd 255 sec 63>
          /pci@0,0/pci-ide@1f,2/ide@0/cmdk@0,0
       1. c5d0 <DEFAULT cyl 10008 alt 2 hd 255 sec 63>
          /pci@0,0/pci-ide@1f,2/ide@1/cmdk@0,0





2基目のディスクを ZFSストレージプール rpool  に追加していきます。

# format

1

fdisk

ここで全体を solaris にする。

 

             Total disk size is 10011 cylinders
             Cylinder size is 16065 (512 byte) blocks

                                               Cylinders
      Partition   Status    Type          Start   End   Length    %
      =========   ======    ============  =====   ===   ======   ===
          1       Active    Solaris2          1  10010    10010    100


パーティションテーブルを 1基目→2基目 にコピーする

# prtvtoc /dev/rdsk/c4d0s0 | fmthard -s - /dev/rdsk/c5d0s0

 

zpool に追加する。-f を付けないと怒られます

# zpool -f attach rpool c4d0s0 c5d0s0


Please be sure to invoke installgrub(1M) to make 'c5d0s0' bootable.

(instalgrubコマンドで c5d0s0 を起動可能にしろとか言ってます。)



ちなみに外すときはその逆。

zpool detach rpool c5d0s0




次のコマンドで同期状況を確認できます。今回 80GBのミラー同期は約4分で完了しました。

# zpool status



2基目のディスクへのGRUBのインストールをするは rsync を Redhat/CentOS でやった http://orangesooda.com/centos_redhat/2008/08/rsyncgrub.html と同じ。 Sunのマニュアル P84 にも紹介されている。bootスライスは Solarisでは伝統的に スライス8 なので次のようになる。Solarisには便利な installgrub コマンドがあるのでこうする。



# installgrub /boot/grub/stage1 /boot/grub/stage2 /dev/rdsk/c5d0s0




 

以上。作業が終わったら、電源を落として作業終了。

shutdown -y -i5 -g0

 

 

以下は参考ページ

zpoolコマンド(SUNマニュアルページ)


 

ぼくの今回の作業と同じことをしている


 

Solarisのパーティションについては


こちらのページの解説が詳しい。一部引用する。


Part(Slice)番号 用途

0 システム(root)。通常、swapの次に置く。

1 swap。通常シリンダ1から置く。

2 全体を指す。あえて設定しなくてもそうなってるはず

3 自由に使ってよい

4 自由に使ってよい

5 自由に使ってよい

6 自由に使ってよい

7 自由に使ってよい。インストーラは/export/homeをここに置く

8 boot。シリンダ0を利用する

9 必要ならalternates。1~2のスライスを利用する。