トップページ » Solaris10 Zone機能 » inherit-pkg-dirで指定されたディレクトリ以下を書き込み可能にするには
カテゴリー
My Yahoo!に追加
Sun社提供情報
Solarisパッケージダウンロード
Sunマシンは買うには
blogs.sun.com
お勧めサイト
プライベートリンク

inherit-pkg-dirで指定されたディレクトリ以下を書き込み可能にするには

Solaris10において、non-globalゾーン(ローカルゾーン)は globalゾーンから継承するディレクトリを inherit-pkg-dir というリソースタイプで指定し作成される。デフォルトでは /usr, /lib, /platform, /sbin の4つが指定されている。
ローカルゾーン側ではそれらのディレクトリは lofs で Read-Only でマウントされるため一切の書き込みは禁じられている。一般的に上記ディレクトリは運用中に書き込みの発生する場所ではないが、例えば /usr/local などはフリーソフトウェアなどのインストール先として使われることも多く、場合によっては不便に感じることもあるかもしれない。

また、inherit-pkg-dir の指定から /usr を外せば、その点は解決できるが、/usr 以下は大容量であることや、globalゾーンで適用したパッチがローカルゾーンに反映されないなど、管理上の不都合が生じてくる。

そこで、ここではローカルゾーンの /usr/local だけを簡単に書き込み可能にする方法を紹介する。

【検証環境】
# more /etc/release
                         Solaris 10 3/05 s10_74L2a SPARC
           Copyright 2005 Sun Microsystems, Inc.  All Rights Reserved.
                        Use is subject to license terms.
                            Assembled 22 January 2005
# uname -a
SunOS s10test3 5.10 Generic sun4u sparc SUNW,Ultra-5_10

コマンド操作は簡単で既にインストールされているzoneに対しても適用できる。

まずローカルゾーン側でマウントポイントとなる/usr/localをグローバルゾーンで作成する。

global# mkdir /usr/local

また、ローカルゾーン側でこの/usr/localにマウントさせる領域を用意する。空きスライスがあればそれを使ってもよいが、ここではお手軽にグロー バルゾーンの適当な領域(/opt/zone1とする)を lofs でマウントする方法を使う。
というわけで/opt/zone1 ディレクトリを作成する。

globa# mkdir /opt/zone1

あとは以下のように zonecfg コマンドで fs リソースの設定をするだけ。

# zonecfg -z zone1
...
zonecfg:zone1> add fs
zonecfg:zone1:fs> set dir=/usr/local
zonecfg:zone1:fs> set special=/opt/zone1
zonecfg:zone1:fs> set type=lofs
zonecfg:zone1:fs> end
zonecfg:zone1>
...

あとは構成変更したゾーンをリブートするだけで完了。
これでローカルゾーン側で/usr/localにインストールされるパッケージなどが自由にpkgaddできるようになる。

ちなみに空きスライスを割り当てる方法は以下の通り。

# zonecfg -z zone1
...
zonecfg:zone1> add fs
zonecfg:zone1:fs> set dir=/usr/local
zonecfg:zone1:fs> set special=/dev/dsk/c0t1d0s3
zonecfg:zone1:fs> set raw=/dev/rdsk/c0t1d0s3
zonecfg:zone1:fs> set type=ufs
zonecfg:zone1:fs> end
zonecfg:zone1>
...

Solaris10 Zone機能のその他のリンク

Solaris系技術トレーニング一覧

Solaris10システム管理基本コース
Solaris10ネットワーク・インターネットサーバー管理コース
セキュリティ・パフォーマンス管理・トラブルシューティング等
Sun Cluster、ボリューム管理ソフトウェア
仮想化技術全般
シンクライアント、SunRay、デスクトップソフトウェア
アイデンティティマネージメントサービス
アプリケーションサーバーとWebポータル
サーバー(ハードウェア)メンテナンス
Sun Java CAPS
MySQL

コメント

set raw=/dev/dsk/c0t1d0s3 の箇所は
set raw=/dev/rdsk/c0t1d0s3 だと思いますが誤記でしょうか。

Posted by: : 2005年04月20日 19:00

申し訳ありません、誤記でした。
修正いたしましたので確認してください。

ご指摘ありがとうございます。

Posted by: 管理者 : 2005年04月21日 16:46