2009年8月アーカイブ

SPARC でも試してみました。
Nevada b114 をインストールした Sun Fire V120 を用意し、同じ手順で作業。
違うのは、SPARC では GRUB が使えない為、起動方法が異なるくらいですか。
SPARC では、OBP で下記のように実行すると、rpool/ROOT/opensolaris から起動させることが可能です

ok boot -Z rpool/ROOT/opensolaris

無事に、OpenSolaris 2010.02 dev b118 が起動してきました。
でも、さすがに UltraSPARC-IIe 650MHz で 768M メモリだと遅いッス。
Sun Blade 1000 で実験しようかと準備しましたが、CPU 0 が逝ってました。。。。
UltraSPARC-III 900MHz 余っている方、連絡ください!(`・ω・´)

SXCE 終了のお知らせが出てしまったわけですが、現在、SXCE を使っているが OpenSolaris への移行も考えなきゃ。という方、いらっしゃいますか?

さとうも SXCE 使いなのですが、OpenSolaris への移行方法を色々と考えていたりしますが、なんかうまい方法を考えられず。。。
思考錯誤した結果、SXCE 上で OpenSolaris の領域を確保し、そこに OpenSolaris をインストールして起動させる事ができましたので、どなたかこの方法をテストしてくださるという方がいるとうれしいです。
この方法なら、SXCE と OpenSolaris を dual boot させることができるので、ちょっとずつ OpenSolaris 側へ移行するが楽になったりと思っているのですが。。。

やってることは、単純で、

1. すでに SXCE が動作していることが前提 2. そこに rpool/ROOT/opensolaris を zfs create し IPS から、必要なファイルを流し込む 3. ゴニョゴニョして、rpoo/ROOT/opensolaris から起動させる
という流れとなります。


以下、手順となります。
#さとうは、SXCE b118 を使っていたので zpool version 16 となっているため 2009.06 は諦め、dev repository を参照するようにしました。

* 1. Nevada bxxx がインストールされたマシンを用意。十分な空き領域があることを確認する。
     また、zpool version には注意すること。
   現在の zpool version は、zpool get version rpool で確認できますが、表示
   された version と同等か新しい version をサポートする OpenSolaris しか
   インストールできません。
     たとえば、rpool が version 16 になっていると、2009.06 はインストール
   できても起動させることができません。

* 2. Nevada に pkg(5) 一式をインストールする。

     pkg(5) のインストール方法は別項目を参照(一番下)

     あるいは、以下から package を入手し pkgadd してください。
   pkg コマンドが使えるようになります。

    http://solaris.sunfish.suginami.tokyo.jp/blog/patch/pkg5-a12f41da2189.pkg.bz2

    $ bzip2 -d pkg5-a12f41da2189.pkg.bz2
    # pkgadd -d pkg5-a12f41da2189.pkg

* 3. OpenSolaris の領域を作成する

    # zfs create -o canmount=noauto rpool/ROOT/opensolaris

* 4. 作成した領域を /mnt に手動 mount する

    # mount -F zfs rpool/ROOT/opensolaris /mnt

* 5. pkg コマンドを使用できるようにするためのおまじない。
     この処理では、/var/pkg に必要な directory や file を作成し、repository の登録を行っています。

    pkg.opensolaris.org の dev repository を利用する場合
    # pkg image-create -f -F -p opensolaris.org=http://pkg.opensolaris.org/dev /mnt

    ※この例は、dev repository を利用することを前提とする

* 6. pkg コマンドを実行した、IPS から、rpool/ROOT/opensolaris に必要な package をインストールする。
   トータル 800MB くらいのデータ転送が発生するので、
   お茶でも用意してマテ( ・∀・)っ旦

    # pkg -R /mnt install SUNWcsd
    # pkg -R /mnt install SUNWcs
    # pkg -R /mnt install slim_install
    # pkg -R /mnt install entire

    ※ きちんと、この 4 つをインストールすること。
      SUNWcsd, SUNWcs だけだとダメ。足りないものが多すぎる。

    install された package の確認は、

        # pkg -R /mnt list

    で、確認できる。


* 7. 5 で登録された repository の uuid 情報を新しいものに変更。
   (この作業が絶対必要かどうかわかんない。。。)

    # pkg -R /mnt set-authority --reset-uuid --no-refresh opensolaris.org

* 8. 続いて、rpool/ROOT/opensolaris に展開されたものを起動可能にする作業

* 8-1. SMF を起動できるように、下記の作業を行う

* 8-1-1. SMF repository の準備
     SMF repository は、restore 時に用いる default の global.db から生成する
   
    # cp /mnt/lib/svc/seed/global.db /mnt/etc/svc/repository.db   
    # chmod 0600 /mnt/etc/svc/repository.db
    # chown root:sys /mnt/etc/svc/repository.db

* 8-1-2. SMF を動かすために細工をする

    # cd /mnt/var/svc/profile
    # ln -s ns_files.xml name_service.xml
    # ln -s generic_limited_net.xml generic.xml
    # ln -s inetd_generic.xml inetd_services.xml
    # ln -s platform_none.xml platform.xml

* 8-2. device node が作成されるようにお掃除
       ※ファイルがないかもしれない。なければ、この部分はスルーで。

    # rm /mnt/dev/null /mnt/dev/msglog

    --
    msglog と null がファイルとして存在しているため、devfsadm -C で skip
    されてしまう。消しておくことで、正常な device node が作成される。
    -- 

    これがされていないと・・・起動時に起きる現象:
    /lib/svc/method/svc-sysevented が /dev/msglog: cannot create [No such
    file or directory] を出力して停止する。
    --

* 8-3. OpenSolaris 起動時に、sys-unconfig が実行されるようにする。
       初期設定は、sys-unconfig を使った方がよい。

    # touch /mnt/etc/.UNCONFIGURED


* 8-3. /devices, /dev 配下の device node の link を作成

    # devfsadm -R /mnt -C

* 8-4. boot archive の更新

    # bootadm update-archive -R /mnt

    ※ この作業をする前に、必要な driver とかをあらかじめインストールして
      おくのもアリ。だが、初めての場合は。余計なことはしないに限る。

※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※
※※※ふつーの人はすっ飛ばしてください※※※※※※※※※※※※※※※※※
※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※

* 8-5. Nvidia chipset 搭載の MacBook, MacBook Pro only
      
    ahci driver を利用する為の satokaz 専用作業
    ※ nevada でも ahci を使うように設定されている必要があるため
      一般的ではないので解説は省略。

    この作業をおこなったら、8-3, 8-4 を実行しておくこと。

※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※
※※※ふつーの人はすっ飛ばしてください※※※※※※※※※※※※※※※※※
※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※


* 9. grub の menu 登録

   Nevada 側の grub を使う必要があるため、/rpool/boot/grub/menu.lst の最後に
   下記のエントリを追加する。

     title には、好きな文字列を。
   findroot に記載される数字(パーティション)は、環境により異なるが、起動に利用
   するパーティションは、すでに、インストールされた Nevada と同じ場所を利用する
   ことになるので Nevada のエントリから流用するとよい。
   pool_rpool の部分は、boot sign と呼ばれるが pool_rpool にしておけば rpool を
   意味することになるのでこのままで。
     bootfs には、3 で作成した dataset を指定する。
     kernel$ と module$ は、このままでおk。

    --
    title opensolaris
    findroot (pool_rpool,3,a)
    bootfs rpool/ROOT/opensolaris
    kernel$ /platform/i86pc/kernel/$ISADIR/unix -B $ZFS-BOOTFS
    module$ /platform/i86pc/$ISADIR/boot_archive
    --

* 10. /mnt を umount し、再起動
* 11, GRUB から、9 で作成したエントリを選択し起動。
   作業に問題なければ、OpenSolaris が起動する。
   X の起動は、少し時間がかかる場合があるかもしれないので根気よく待つべし。
--

・pkg の作り方
--
最新の pkg-gate は、curl-7.19.4 が必要なため、b111 以前の build では
make できない。 
b111 or later な環境を用意するか、b111 or later な iso から SUNWcurl を抜き出し入れ替えるのが workaround。
* OpenSolaris 2009.06 or later であれば問題ない
--

まず、pkg コマンド一式を手に入れる必要がある。pkg コマンド一式は、pkg-gate repository から source を入手し build する必要がある。

1. Get pkg-gate from mercurial

$ hg clone ssh://anon@hg.opensolaris.org/hg/pkg/gate pkg-gate


続いて、build と install。
build 時は、network 経由でいくつかのファイルを取得するので注意。

2. Build pkg

$ PATH=/opt/SUNWspro/bin:$PATH; export PATH
$ cd pkg-gate/src
$ dmake
$ dmake packages
$ ../packages/i386
# su
# pkgadd -d pkg5.pkg
--

以下、おまけ
--
・pkg のテスト環境構築方法

 # mkdir /test

 とかして、

  # pkg image-create -f -F -p opensolaris.org=http://pkg.opensolaris.org/dev /test

  とすると、/test/var/pkg に情報が作成される

 あとは、

  # packagemanager -R /test

 を実行すると、/test 配下を target にした packagemanager が起動



ついに出てしまった SXCE end-of-life plans

| トラックバック(0)

明日から夏休みなので、本日は、ラスボス!くらいの勢いだったのですが・・・
ついに、Solaris Express Community Edition の終焉となる 「SXCE end-of-life plans 」が、Sun の announce として放たれました。
うーん。。。

[osol-announce] SXCE end-of-life plans
http://www.opensolaris.org/jive/thread.jspa?threadID=109944&tstart=0

ぐふっ。 b120 も skip した(´・ω・`)

[osol-announce] SXCE Build 120 - Skipped 
http://www.opensolaris.org/jive/thread.jspa?threadID=109934&tstart=0

Solaris host ですが、CPU を 2 個割り当てた guest に Solaris 10 5/09 をインストールしようとしたのですが、インストール自体は正常に終了するものの、何度やってもいくつかのパッケージが error となり、まともなシステムとして稼働してくれません。
しかも、error となるパッケージは random で規則性がありません。
こまったぞ。
というわけで、CPU を 1 つにして上げたら無事にインストール完了。
どうも、SMP guest は、まだまだ不安定なようです。


VirtualBox 3.0.4 で suspend/resume が快適に

| トラックバック(0)

VirtualBox 3.0.4 がリリースされましたが、maintenance release ということもありあまり期待していませんでしたが。。。

http://download.virtualbox.org/virtualbox/3.0.4/
なんと、guest OS 稼働中に suspend をかましてもきちんと resume してくれるようになりました。
いままでは OpenSolaris や Nevada ホストでは suspend はするものの resume に失敗して画面は blackout のまま。泣く泣く電源を切らなければなりませんでした。
suspend させるまえに、必ず VBox の稼働を停止(guest を保存か終了)する必要があり、これを忘れて suspend してしまい泣いてしまう日々も多く。。。
これは、でかい。でかすぎる。
 
あと、CPU を複数割り当てた guest に Solaris 10 や OpenSolaris をインストールしようとすると kernel の copyrights 表示からうんともすんともいわなく先に進まない現象(なんか 20 分くらい放置しとくと起動するらしい) がありましたが、見事それも解決されているようで、サクサクとインストールが進みます。
これもちょっと期待。

Nehalem core  な CPU とメモリ 8G 搭載可能な MacBook はやくでてきてっ!

: Twitter Updates

    follow me on Twitter

    ウェブページ

    タグクラウド

    Techonrati

    Technorati search

    » リンクしているブログ

    Powered by Movable Type 4.23-ja