2013年7月
第1.0版
Oracle Solaris 11.1 (日本語)
http://docs.oracle.com/cd/E37932_01/pdf/E37314.pdf
「1M:システム管理コマンド」 Oracle Solaris 10 1/13 (日本語)
http://docs.oracle.com/cd/E26505_01/pdf/816-5166.pdf
「1M:System Administration Commands」
版数 更新日付 初版 2013年7月 更新内容新規作成
本資料について
目的 •本リファレンスはゾーンの作成時、または運用時において主に使われるコマンド、オプションについて記載しています。 •詳細については、以下のOracle社 ドキュメントを参照してください。 留意事項•本リファレンスはOracle Solaris 11.1 および Oracle Solaris 10 1/13に対応しています。 •Oracle Solaris のバージョンが異なる場合、サポートしているオプションが異なる場合があります。
使用条件
著作権・商標権・その他の知的財産権について コンテンツ(文書・画像・音声等)は、著作権・商標権・その他の知的財産権で保護されています。本コンテンツは、個人的に使用する範囲で プリントアウトまたはダウンロードできます。ただし、これ以外の利用(ご自分のページへの再利用や他のサーバへのアップロード等)につい ては、当社または権利者の許諾が必要となります。 保証の制限 本コンテンツについて、当社は、その正確性、商品性、ご利用目的への適合性等に関して保証するものではなく、そのご利用により生じた 損害について、当社は法律上のいかなる責任も負いかねます。本コンテンツは、予告なく変更・廃止されることがあります。商標
UNIXは、米国およびその他の国におけるオープン・グループの登録商標です。 SPARC Enterprise、SPARC64、SPARC64ロゴ、およびすべてのSPARC商標は、米国SPARC International, Inc.のライセンスを受けて使用し ている、同社の米国およびその他の国における商標または登録商標です。
OracleとJavaは、Oracle Corporation およびその子会社、関連会社の米国およびその他の国における登録商標です。
ゾーンへのログイン ゾーンの管理 ゾーン構成の設定 起動中ゾーンの統計報告 ゾーンへ移行のチェック リソースプール構成ファイルの作成・変更 リソースプール機能の起動・停止 リソースプール機能の監視 6. poolcfg 3. zonecfg 4. zonestat 5. zonep2vchk
■
Oracle Solaris ゾーン クイックリファレンス 目次
1. zlogin 2. zoneadm 8. poolstat 7. pooladm* < > は必須項目、[ ] は選択項目(省略可能) * 本リファレンスに記載のゾーン名(my-zone)は参考例です。 1. zlogin zlogin ゾーンにログインする 形式 zlogin [オプション1] [オプション2] [オプション3] <ゾーン名> オプション1 -C ゾーンへコンソール接続する -E エスケープ文字(~: チルダ)を使用したログアウト機能を無効にする オプション2 -e <エスケープ文字> 別のエスケープ文字を指定する(デフォルト形式は「~」) オプション3 -l <ユーザ名> 指定したユーザ名でログインする(デフォルトのユーザ名は「root」) 使用例 zlogin my-zone zlogin -C my-zone zlogin -E my-zone zlogin -C -e @ my-zone zlogin -l user01 my-zone
zlogin ゾーンでのコマンドを実行する(非対話形式) 形式 zlogin [オプション] <ゾーン名> ['コマンド'] オプション -l <ユーザ名> 別のユーザ名を指定してログインする コマンド /usr/sbin/shutdown ゾーン内でshutdownを実行する ※一例 /usr/sbin/init ゾーン内でinitを実行する ls ゾーン内でlsを実行する ps ゾーン内でpsを実行する who ゾーン内でwhoを実行する
使用例 zlogin my-zone '/usr/sbin/shutdown -y -g0 -i0' ※ゾーンを停止する zlogin my-zone '/usr/sbin/init 6' ※ゾーンを再起動する
zlogin -l user01 my-zone 'ls -l' ※ゾーン内のディレクトリを一覧表示する zlogin my-zone 'ps -ef' ※ゾーン内で実行中のプロセスの状態を表示する zlogin my-zone 'who' ※ゾーンにログインしているユーザを表示する
* < > は必須項目、[ ] は選択項目(省略可能) * 本リファレンスに記載のゾーン名(my-zone)は参考例です。 2. zoneadm zoneadm ゾーンの管理 形式 zoneadm <-z <ゾーン名>> <サブコマンド> [サブコマンドオプション] zoneadm help [サブコマンド] オプション -z <ゾーン名> ゾーン名を指定する
使用例 zoneadm -z my-zone boot zoneadm help boot
<サブコマンド>
boot ゾーンを起動する
形式 zoneadm -z <ゾーン名> boot [オプション] [-- bootオプション]
オプション(*1) -w 一時的に、読み取り専用ゾーンを書き込み可能なゾーンとしてブートする bootオプション -s シングルユーザモードで起動する -m <SMFオプション> SMFのブート動作を制御する SMF debug svc.startdメッセージを表示する オプション quiet 起動時にエラーメッセージを表示する(コンソール接続時) verbose 起動時に詳細メッセージを表示する(コンソール接続時) milestone=<マイルストーン> マイルストーンを定義する マイル none すべてのサービスを無効にして起動する ストーン single-user シングルユーザモードと同じサービスを有効にして起動する multi-user single-userに加えてネットワーク関連のサービスを有効にして起動する multi-user-server multi-userに加えて「svc:/milestone/multi-user-server:default」サービスを 有効にして起動する all オプションなしでbootした時と同じサービスを起動する
使用例 zoneadm -z my-zone boot zoneadm -z my-zone boot -w zoneadm -z my-zone boot -- -s
zoneadm -z my-zone boot -- -m verbose
zoneadm -z my-zone boot -- -m milestone=none *1 Oracle Solaris 11でサポート
shutdown (*1) ゾーンを安全に停止する (/usr/sbin/init 0 の実行と同等)
形式 zoneadm -z <ゾーン名> shutdown [オプション] [-- bootオプション]
オプション -r ゾーンをリブートします
bootオプション -s シングルユーザモードで起動する
-m <SMFオプション> SMFのブート動作を制御する (*2) 使用例 zoneadm -z my-zone shutdown
zoneadm -z my-zone shutdown -r *1 Oracle Solaris 11でサポート
*2 SMFオプションはサブコマンド「boot」の項を参照
halt ゾーンを強制停止する (shutdown スクリプトは実行されない)
形式 zoneadm -z <ゾーン名> halt
使用例 zoneadm -z my-zone halt
reboot ゾーンを再起動する (halt boot シーケンスと同等)
形式 zoneadm -z <ゾーン名> reboot [オプション] [-- bootオプション]
オプション(*1) -w 一時的に、読み取り専用ゾーンを書き込み可能なゾーンとしてブートする
bootオプション -s シングルユーザモードで起動する
-m <SMFオプション> SMFのブート動作を制御する (*2) 使用例 zoneadm -z my-zone reboot
*1 Oracle Solaris 11でサポート
install ゾーンをインストールする
形式 zoneadm -z <ゾーン名> install [オプション]
オプション -a <アーカイブ> (*1) インストールに使用する既存システムのアーカイブの場所を指定する
-c <プロファイル名> (*2) インストール後に適用するプロファイル(.xml 拡張子を持つ)を指定する
(プロファイルはzone上で"sysconfig create-profile -o xmlファイル名"で作成) -d <path> (*1) global zoneまたはnon-global zoneの/rootのパス
-p (*3) システム ID を維持したまま(移行元サーバの情報を持ったまま)インストールする -u (*3) ゾーンに対してシステム再構成 (sysconfig configure)を実行する
使用例 zoneadm -z my-zone install
zoneadm -z my-zone install -u -d /zone-path/root
zoneadm -z my-zone install -p -a /export/tmp/solaris-archive.flar *1 -a と -d オプションは排他。 *2 Oracle Solaris 11でサポート *3 -u と -p オプションは排他。また、-a または -d オプション使用時、-p または -u のどちらかのオプションが必要 uninstall ゾーンをアンインストールする (zonepath配下のファイルをすべて削除) 形式 zoneadm -z <ゾーン名> uninstall [オプション] オプション -F アンインストールを強制実行する
使用例 zoneadm -z my-zone uninstall
list 実行中のすべてのゾーンの一覧を表示する
形式 zoneadm [-z ゾーン名] list [listオプション]
listオプション -v 稼動中のゾーンを一覧表示する -c 設定済みのすべてのゾーンを表示する -i インストール済みのすべてのゾーンを表示する -p UUID(ゾーンの一意識別子)を表示する 使用例 zoneadm list zoneadm list -vc zoneadm list -i zoneadm list -p move ゾーンパス(ゾーンのインストール先)を変更する 形式 zoneadm -z <ゾーン名> move <新ゾーンパス名>
使用例 zoneadm -z my-zone move /export/newpath/my-zone
detach ゾーンをシステムから切り離す
形式 zoneadm -z <ゾーン名> detach [オプション]
オプション -n zoneを起動したまま、別サーバにzoneをattachできるか検証するための
マニフェストを生成する
-F(*1) 強制的にゾーンを切り離す
使用例 zoneadm -z my-zone detach
zoneadm -z my-zone detach -n > /export/zones/manifest.txt ※マニフェストをファイルに出力 *1 Oracle Solaris 11でサポート
attach システムから切り離されたゾーンをシステムに組み込む
形式 zoneadm -z <ゾーン名> attach [オプション]
オプション -n <ファイルパス> zoneを起動したまま、別サーバで作成したマニフェストをattachできるか検証する
-F 強制的にzoneを組み込む
使用例 zoneadm -z my-zone attach
clone ゾーンの複製
形式 zoneadm -z <ゾーン名> clone <複製元ゾーン名>
使用例 zoneadm -z my-zone2 clone my-zone
verify ゾーンの構成が正しいかを検査する
形式 zoneadm -z <ゾーン名> verify
使用例 zoneadm -z my-zone verify
mark incomplete インストールされているゾーンを使用不可にする
形式 zoneadm [オプション] -z <ゾーン名> mark incomplete
オプション -R 代替ブート環境 代替ブート環境のゾーンを使用不可にする
* < > は必須項目、[ ] は選択項目(省略可能) * 本リファレンスに記載のゾーン名(my-zone)は参考例です。 3. zonecfg zonecfg ゾーン構成の設定 形式 zonecfg -z <ゾーン名> [サブコマンド] ※複数のサブコマンドを併記する場合、' (シングルクォーテーション)で囲み、 コマンドとコマンドの間は ; (セミコロン)で区切る ※サブコマンドを指定しない場合、対話形式での入力になる zonecfg -z <ゾーン名> -f <コマンドファイル名> zonecfg help [サブコマンド] オプション -z <ゾーン名> ゾーン名を指定する -f <コマンドファイル名> コマンドファイルからコマンドを読み取り実行する 使用例 zonecfg -z my-zone
zonecfg -z my-zone -f /export/export.txt zonecfg help
<サブコマンド>
add 指定したリソースタイプを構成に追加する
形式 zonecfg -z <ゾーン名> add <リソースタイプ>
使用例 zonecfg -z my-zone 'add net ; set address=192.168.14.100/24 ; set physical=net0 ; end' (コマンド形式)
使用例 zonecfg:my-zone> add net
(対話形式) zonecfg:my-zone:net> set address=192.168.14.100/24 zonecfg:my-zone:net> set physical=net0
zonecfg:my-zone:net> end create ゾーンを構成するための設定情報を読み込む 形式 zonecfg -z <ゾーン名> create [オプション] オプション なし デフォルトの初期設定情報を読み込む -F 既存の設定情報を上書きする -a <パス> ゾーン組込み (attach) 時にゾーンパスを指定して、設定情報を読み込む -b 初期設定情報を読み込まず構成を開始する -t <ゾーン名> 既存の設定情報を読み込む
使用例 zonecfg -z my-zone 'create ; set zonepath=/export/zones/my-zone' (コマンド形式) zonecfg -z my-zone create -a /export/zones/my-zone
使用例 zonecfg:my-zone> create
(対話形式) zonecfg:my-zone> create -t zone01
delete ゾーンの構成情報を削除する
形式 zonecfg -z <ゾーン名> delete [オプション]
オプション -F 強制的にゾーンの構成情報を削除する
使用例 zonecfg -z my-zone delete (コマンド形式)
使用例 zonecfg:my-zone> delete (対話形式)
info ゾーン設定情報を確認する
形式 zonecfg -z <ゾーン名> info [リソースタイプ [プロパティ名=プロパティ値] ]
使用例 zonecfg -z my-zone info zonecfg -z my-zone info net
(コマンド形式) zonecfg -z my-zone info net physical=net0 使用例 zonecfg:my-zone> info
zonecfg:my-zone> info net
set リソースタイプを設定する
形式 zonecfg -z <ゾーン名> set <プロパティ名=プロパティ値>
使用例 zonecfg -z my-zone set cpu-shares=1 (コマンド形式)
使用例 zonecfg:my-zone> set cpu-shares=1 (対話形式)
remove 指定したリソースタイプを削除する
形式 zonecfg -z <ゾーン名> remove <リソースタイプ> [プロパティ名=プロパティ値]
※プロパティを指定すると、プロパティに合致する設定のみが削除される
※プロパティを指定しないと、リソースタイプに合致するすべての設定が削除される 使用例 zonecfg -z my-zone remove net
(コマンド形式) zonecfg -z my-zone remove net address=192.168.11.100/24 使用例 zonecfg:my-zone> remove net
(対話形式) zonecfg:my-zone> remove net address=192.168.11.100/24
export ゾーン設定情報をコマンド実行形式で出力する
形式 zonecfg -z <ゾーン名> export [オプション]
オプション -f <出力ファイル> 出力ファイルに設定情報をコマンド実行形式で出力する
使用例 zonecfg -z my-zone export -f /export/export.txt (コマンド形式)
使用例 zonecfg:my-zone> export -f /export/export.txt (対話形式)
clear プロパティ値を消去する
形式 zonecfg -z <ゾーン名> clear <プロパティ名>
使用例 zonecfg -z my-zone clear bootargs (コマンド形式)
使用例 zonecfg:my-zone> clear bootargs (対話形式)
select リソースタイプの設定を変更する
形式 zonecfg -z <ゾーン名> select <リソースタイプ> [プロパティ名 = プロパティ値]
使用例 zonecfg -z my-zone 'select net address=192.168.11.100/24 ; set address=192.168.11.200/24 ; (コマンド形式) end'
使用例 zonecfg:my-zone> select net address=192.168.11.100/24 (対話形式) zonecfg:my-zone:net> set address=192.168.11.200/24
zonecfg:my-zone:net> end verify 現在の構成が正しいかを確認する(対話形式時に実行) 形式 zonecfg -z <ゾーン名> verify 使用例 zonecfg:my-zone> verify (対話形式) commit ゾーンの設定を確定する(対話形式時に実行) 形式 zonecfg -z <ゾーン名> commit 使用例 zonecfg:my-zone> commit (対話形式) revert 構成を最後に確定されたときの状態に戻す(対話形式時に実行) 形式 zonecfg -z <ゾーン名> revert [オプション] オプション -F 強制実行する 使用例 zonecfg:my-zone> revert (対話形式)
cancel リソースの設定を中止する(対話形式時に実行) 形式 zonecfg -z <ゾーン名> cancel 使用例 zonecfg:my-zone:net> cancel (対話形式) end リソースの指定を終了する(対話形式時に実行) 形式 zonecfg -z <ゾーン名> end 使用例 zonecfg:my-zone:net> end (対話形式) exit zonecfgの対話形式の入力を終了する(対話形式時に実行) 形式 zonecfg -z <ゾーン名> exit [オプション] オプション -F 対話形式の入力を強制的に終了する 使用例 zonecfg:my-zone> exit (対話形式) <リソースタイプ> zonename (必須) ゾーン名を指定する
使用例 zonecfg -z my-zone set zonename=zone02 (コマンド形式)
使用例 # zonecfg -z create
(対話形式) Use 'create' to begin configuring a new zone. zonecfg:create> set zonename=zone02
zonepath (必須) ゾーンのファイルシステムパスを指定する
使用例 zonecfg -z my-zone set zonepath=/export/zones/my-zone (コマンド形式)
使用例 zonecfg:my-zone>set zonepath=/export/zones/my-zone (対話形式)
autoboot global zoneの起動時にゾーンを自動的に起動するかを指定する
値 false 自働的にゾーンを起動しない(デフォルト)
true 自働的にゾーンを起動する
使用例 zonecfg -z my-zone set autoboot=true (コマンド形式)
使用例 zonecfg:my-zone> set autoboot=true (対話形式)
brand ゾーンにインストールするSolarisのバージョンを指定する
値 native Solaris 10ゾーンを動作させる(デフォルト)
(Solaris 10) solaris9 Solaris 9ゾーンを動作させる solaris8 Solaris 8ゾーンを動作させる
値 solaris Solaris 11ゾーンを動作させる(デフォルト) (Solaris 11) solaris10 Solaris 10ゾーンを動作させる
使用例 zonecfg -z my-zone set brand=solaris10 (コマンド形式)
使用例 zonecfg:my-zone> set brand=solaris10 (対話形式)
bootargs ゾーン起動時に渡されるオプションを指定する
使用例 zonecfg -z my-zone set bootargs="-s" (コマンド形式)
使用例 zonecfg:my-zone> set bootargs="-s" (対話形式)
file-mac-profile (*1) 読み取り専用ゾーンを設定する 値 none 読み書き可能なゾーンに設定する strict 読み取り専用ゾーンに設定する fixed-configuration システム構成コンポーネントを除いた/var/* ディレクトリへの更新を 許可する flexible-configuration /etc/* ディレクトリ内のファイルの変更、ルートのホームディレクトリの変更、 および /var/* ディレクトリへの更新を許可する
使用例 zonecfg -z my-zone set file-mac-profile=none (コマンド形式)
使用例 zonecfg:my-zone> set file-mac-profile=none (対話形式)
*1 Oracle Solaris 11でサポート
pool 起動時にゾーンが利用するリソースプール名を指定する
使用例 zonecfg -z my-zone set pool="pool_1" (コマンド形式)
使用例 zonecfg:my-zone> set pool="pool_1" (対話形式)
limitpriv ゾーンに特権を付与する
使用例 zonecfg -z my-zone set limitpriv="default,sys_time" (コマンド形式)
使用例 zonecfg:my-zone> set limitpriv="default,sys_time" (対話形式)
scheduling-class ゾーンのスケジューリングクラスを指定する
値 FSS FSS (公平配分スケジューラ)を設定する
TS TS (タイムシェアリング)を指定する
使用例 zonecfg -z my-zone set scheduling-class=FSS (コマンド形式)
使用例 zonecfg:my-zone> set scheduling-class=FSS (対話形式)
ip-type ゾーンがglobal zoneとネットワークインターフェースを共有するか否かを指定する 値 shared (*1) global zoneとネットワークインターフェースを共有する
exclusive (*2) global zoneとは別の、独立したネットワークインターフェースを持つ 使用例 zonecfg -z my-zone set ip-type=exclusive
(コマンド形式)
使用例 zonecfg:my-zone> set ip-type=exclusive (対話形式)
*1 Solaris 10のデフォルト値 *2 Solaris 11のデフォルト値
hostid ゾーンにホストIDを指定する
使用例 zonecfg -z my-zone set hostid=12345abc (コマンド形式)
使用例 zonecfg:my-zone> set hostid=12345abc (対話形式)
cpu-shares 公平配分スケジューラ(FSS)のCPU配分数を設定する
使用例 zonecfg -z my-zone set cpu-shares=1 (コマンド形式)
使用例 zonecfg:my-zone> set cpu-shares=1 (対話形式)
anet (*1) ゾーン起動時にVNICを自動的に作成する
プロパティ linkname VNICの名前を指定する(デフォルトはnetX )
lower-link VNICの元となる接続先(global zoneの物理NIC等)を指定する mac-address VNICのMACアドレスを設定する 設定値「random」 MACアドレスをランダムに割り当てる 設定値「factory」 ファクトリMACアドレスを割り当てる 設定値「auto」 ファクトリMACアドレスが割り当てられない 場合、ランダムにMACアドレスを割り当てる link-protection 仮想ネットワークを保護するタイプを設定する 設定値「mac-nospoof」 MACアドレスのなりすましからの保護 設定値「ip-nospoof」 IPアドレスのなりすましからの保護 priority VNICの相対的な優先順位を指定する vlan-id VNICをタグVLANとして使用するために、ID(タグ)を指定する 使用例 zonecfg -z my-zone 'set ip-type=exclusive ; add anet ; set linkname=net0 ;
(コマンド形式) set lower-link=auto ; set mac-address=random ; set link-protection=mac-nospoof ; end' 使用例 zonecfg:my-zone> set ip-type=exclusive
(対話形式) zonecfg:my-zone> add anet
zonecfg:my-zone:anet> set linkname=net0 zonecfg:my-zone:anet> set lower-link=auto zonecfg:my-zone:anet> set mac-address=random zonecfg:my-zone:anet> set link-protection=mac-nospoof zonecfg:my-zone:anet> end *1 Oracle Solaris 11でサポート net ネットワークインターフェースを設定する プロパティ address IPアドレスを設定する physical ネットワークインターフェース(物理NICまたはVNIC)を設定する defrouter デフォルトゲートウェイを設定する
使用例 zonecfg -z my-zone 'add net ; set address=192.168.11.100/24 ; set physical=net0 ; (コマンド形式) set defrouter=192.168.11.1 ; end'
使用例 zonecfg:my-zone> add net
(対話形式) zonecfg:my-zone:net> set address=192.168.11.100/24 zonecfg:my-zone:net> set physical=net0
zonecfg:my-zone:net> set defrouter=192.168.11.1
capped-memory メモリー制限を設定する
プロパティ physical 物理メモリの上限を設定する
swap スワップメモリの上限を設定する
locked ロックメモリの上限を設定する
使用例 zonecfg -z my-zone 'add capped-memory ; set physical=512m ; set swap=1024m (コマンド形式) ; set locked=50m ; end'
使用例 zonecfg:my-zone> add capped-memory
(対話形式) zonecfg:my-zone:capped-memory> set physical=512m zonecfg:my-zone:capped-memory> set swap=1024m zonecfg:my-zone:capped-memory> set locked=50m zonecfg:my-zone:capped-memory> end
dedicated-cpu ゾーン専用のCPUとして指定したCPU数を割り当てる
プロパティ ncpus CPU数を設定する
importance プールの重要性を定義する
使用例 zonecfg -z my-zone 'add dedicated-cpu ; set ncpus=1 ; set importance=10 ; end ' (コマンド形式)
使用例 zonecfg:my-zone> add dedicated-cpu
(対話形式) zonecfg:my-zone:dedicated-cpu> set ncpus=1 zonecfg:my-zone:dedicated-cpu> set importance=10 zonecfg:my-zone:dedicated-cpu> end
attr コメントを設定する
プロパティ name コメント名を指定する
type Valueに設定する型を指定する
(文字列(string)か数字(int, uint, boolean))
value コメントの内容を設定する
使用例 zonecfg -z my-zone 'add attr ; set name=comment ; set type=string (コマンド形式) ; set value="This is Web Server" ; end'
使用例 zonecfg:my-zone> add attr
(対話形式) zonecfg:my-zone:attr> set name=comment zonecfg:my-zone:attr> set type=string
zonecfg:my-zone:attr> set value="This is Web Server" zonecfg:my-zone:attr> end
dataset ZFSデータセットを追加する
プロパティ name ZFSデータセット名を指定する
alias(*1) ZFSデータセットに別名をつける
使用例 zonecfg -z my-zone 'add dataset ; set name=tank/sales ; set alias=data ; end ;' (コマンド形式)
使用例 zonecfg:my-zone> add dataset
(対話形式) zonecfg:my-zone:dataset> set name=tank/sales zonecfg:my-zone:dataset> set alias=data zonecfg:my-zone:dataset> end
*1 Oracle Solaris 11でサポート
device デバイスをzoneに追加する
プロパティ match 追加するデバイス名を指定する
使用例 zonecfg -z my-zone 'add device ; set match=/dev/rdsk/c1t0d0s0 ; end' (コマンド形式)
使用例 zonecfg:my-zone> add device
(対話形式) zonecfg:my-zone:device> set match=/dev/rdsk/c1t0d0s0 zonecfg:my-zone:device> end
fs ファイルシステムのマウント方法と場所を設定する
プロパティ dir ゾーン上のマウントポイントとなるディレクトリを指定する
special global zoneにある、マウントしたいブロック型デバイスまたは ディレクトリを指定する
raw マウント前にfsckを実行するrawデバイスを指定する
type ファイルシステムのタイプを指定する
options マウントオプションを指定する
使用例 zonecfg -z my-zone 'add fs ; set dir=/mnt ; set special=/dev/dsk/c0t0d2s0 ; (コマンド形式) set raw=/dev/rdsk/c0t0d2s0 ; set type=lofs ; add options logging ; end' 使用例 zonecfg:my-zone> add fs
(対話形式) zonecfg:my-zone:fs> set dir=/mnt
zonecfg:my-zone:fs> set special=/dev/dsk/c0t0d2s0 zonecfg:my-zone:fs> set raw=/dev/rdsk/c0t0d2s0 zonecfg:my-zone:fs> set type=lofs
zonecfg:my-zone:fs> add options logging zonecfg:my-zone:fs> end
admin(*1) ユーザー名と特定のゾーンに対するそのユーザーの承認を定義する
プロパティ user 特権を委譲する一般ユーザ名を指定する
auths ユーザに特権を委譲する(login、manage、copyfrom) 使用例 zonecfg -z my-zone ' add admin ; set user=zadmin ; set auths=login,manage ; end' (コマンド形式)
使用例 zonecfg:my-zone> add admin
(対話形式) zonecfg:my-zone:admin> set user=zadmin zonecfg:my-zone:admin> set auths=login,manage zonecfg:my-zone:admin> end
rctl リソースを制御する
プロパティ name リソース制御名を指定する
value リソース制御値を設定する
使用例 zonecfg -z my-zone 'add rctl ; set name=zone.cpu-cap (コマンド形式) ; add value (priv=privileged,limit=100,action=deny) ; end'
zonecfg -z my-zone 'add rctl ; set name=zone.max-lwps ; add value (priv=privileged,limit=100,action=deny) ; end' zonecfg -z my-zone 'add rctl ; set name=zone.max-msg-ids ; add value (priv=privileged,limit=512,action=deny) ; end' zonecfg -z my-zone 'add rctl ; set name=zone.max-shm-ids ; add value (priv=privileged,limit=256,action=deny) ; end' zonecfg -z my-zone 'add rctl ; set name=zone.max-shm-memory ; add value (priv=privileged,limit=1073741824,action=deny) ; end' 使用例 zonecfg:my-zone>add rctl
(対話形式) zonecfg:my-zone:rctl>set name=zone.cpu-cap
zonecfg:my-zone:rctl>add value (priv=privileged,limit=100,action=deny) zonecfg:my-zone:rctl>end
zonecfg:my-zone>add rctl
zonecfg:my-zone:rctl>set name=zone.max-lwps
zonecfg:my-zone:rctl>add value (priv=privileged,limit=100,action=deny) zonecfg:my-zone:rctl>end
zonecfg:my-zone>add rctl
zonecfg:my-zone:rctl>set name=zone.max-msg-ids
zonecfg:my-zone:rctl>add value (priv=privileged,limit=512,action=deny) zonecfg:my-zone:rctl>end
zonecfg:my-zone>add rctl
zonecfg:my-zone:rctl> set name=zone.max-shm-ids
zonecfg:my-zone:rctl>add value (priv=privileged,limit=256,action=deny) zonecfg:my-zone:rctl>end
zonecfg:my-zone>add rctl
zonecfg:my-zone:rctl>set name=zone.max-shm-memory
zonecfg:my-zone:rctl>add value (priv=privileged,limit=1073741824,action=deny) zonecfg:my-zone:rctl>end
max-lwps ゾーンが同時に使用できるLWP (Light Weight Process) の最大数を設定する 使用例 zonecfg -z my-zone set max-lwps=100
(コマンド形式)
使用例 zonecfg:my-zone>set max-lwps=100 (対話形式)
max-msg-ids ゾーンに許容されるメッセージキューIDの最大数を設定する
使用例 zonecfg -z my-zone set max-msg-ids=512 (コマンド形式)
使用例 zonecfg:my-zone>set max-msg-ids=512 (対話形式)
max-shm-ids ゾーンに許容される共有メモリーIDの最大数を設定する
使用例 zonecfg -z my-zone set max-shm-ids=256 (コマンド形式)
使用例 zonecfg:my-zone>set max-shm-ids=256 (対話形式)
max-shm-memory ゾーンに許容される共有メモリーの最大容量を設定する 使用例 zonecfg -z my-zone set max-shm-memory=1G
(コマンド形式)
使用例 zonecfg:my-zone>set max-shm-memory=1G (対話形式)
max-sem-ids このゾーンに許容されるセマフォIDの最大数を設定する 使用例 zonecfg -z my-zone set max-sem-ids=256
(コマンド形式)
使用例 zonecfg:my-zone>set max-sem-ids=256 (対話形式)
* < > は必須項目、[ ] は選択項目(省略可能) * 本リファレンスに記載のzone名(my-zone)は参考例です。 4. zonestat(*1) zonestat 起動しているゾーンの統計情報を出力する 形式 zonestat [オプション] 間隔 [レポート回数 レポート期間] オプション -r <リソース> 指定されたリソースの統計情報を出力する -n <リソース詳細> 各リソースうち表示したい情報のみを指定して表示する -p 結果をコロン(:)で区切った形式で出力する -P <表示行> (*2) -pオプションの表示結果のうち、指定した行を出力する -R <レポート形式> 出力結果から、リソースの最大使用量や合計使用率等を出力する -z <ゾーン名> 統計情報を表示するゾーンを指定する リソース all すべてのリソースタイプの情報を出力する summary 使用率のサマリー(デフォルト)を出力する memory 物理メモリ、仮想メモリ、lockedメモリの情報を出力する psets プロセッサごとの情報を出力する network ネットワークの情報を出力する リソース mem_default memoryのうち、physical-memoryとlocked-memoryを出力する 詳細 vm_default memoryのうち、virtual-memoryを出力する プロセッサセット名 指定されたプロセッサセットの情報を出力する データリンク名 指定されたネットワークリソースを出力する 表示行 header, footer レポートの上下に、ヘッダとフッタを出力する total 各リソースの合計使用率を出力する system システム(カーネルなど)のリソース使用率を出力する zones ゾーンごとのリソース使用率を出力する レポート total 実行中の平均利用率を出力する 形式 high リソースおよびゾーンの最大使用量を出力する 使用例 zonestat 1 5
zonestat -z global -r physical-memory 2 zonestat -p -P zones -r psets 5 1 zonestat -r default-pset 1 1m zonestat -q -R total,high 10s 24h 1h zonestat -r network -n net0 5 5 zonestat -n vm_default 5 2 zonestat -n pset_default 5 5 zonestat -z my-zone 5 *1 Oracle Solaris 11でサポート *2 -pオプションが必要
* < > は必須項目、[ ] は選択項目(省略可能)
5. zonep2vchk
zonep2vchk 物理環境をnon-global zoneに移動できるかどうか、確認する
形式 zonep2vchk [オプション] zonep2vchk -V zonep2vchk [-T <リリースオプション>] -c オプション -b 移行元サーバが使用しているOracle Solarisの機能について、p2v移行による 影響がないか確認する -r <実行時間(h|m|s)> 指定した時間内に実行されたプロセス等がzoneで実行できるかどうか、 解析する -x コマンド実行がキャンセル(Ctl-c)されるまで、-rと同様の実行時検査を実施する -s <パス> 指定されたファイルまたはディレクトリに対して、zoneで使用できない システムコールやライブラリコールを使用していないかを確認する -S <ファイル> ファイルに記載されたパスリスト(1行につき1つ)に対して、zoneで使用できない システムコールやライブラリコールを使用していないかを確認する -P 結果をコロン(:)で区切った形式で出力する -T <リリース> 移行先システムのOSバージョン(S10, S11)を指定する -V コマンドのバージョンを出力する -c 移行先システムでゾーンを作成する際に使用する定義ファイルを出力する 使用例 zonep2vchk -bP zonep2vchk -s /opt/myapplication,/usr/local zonep2vchk -r 1h zonep2vchk -T S11 -c
* < > は必須項目、[ ] は選択項目(省略可能) 6. poolcfg poolcfg リソースプール構成ファイルを作成または変更する 形式 poolcfg <オプション1> [オプション2 | [ファイル名]] ※ファイル名を指定しない場合、「/etc/pooladm.conf」を使用 オプション1 -c '<サブコマンド>' サブコマンドを実行してリソースプールを設定する -f <コマンドファイル> コマンドファイル記載されたサブコマンドを実行する -h ヘルプを表示する オプション2 -d 設定ファイルは変更せずに、実行環境の設定のみを変更する 使用例 poolcfg -f poolcfg.txt poolcfg -h <サブコマンド> info リソースプールの構成情報を表示する 形式 poolcfg -c 'info [エンティティ]' [-d | [ファイル名]] エンティティ system <構成名> 指定されたリソースプール構成の情報を表示する pool <リソースプール名> 指定されたリソースプールの構成情報を表示する pset <プロセッサセット名> 指定されたプロセッサセットの構成情報を表示する cpu <CPU ID> 指定されたCPU番号の構成情報を表示する 使用例 poolcfg -c 'info system default'
poolcfg -c 'info system default' /etc/pooladm.conf_01 poolcfg -c 'info pool pool_default'
poolcfg -c 'info pool pool_default' /etc/pooladm.conf_01 poolcfg -c 'info pset pset_default'
poolcfg -c 'info pset pset_default' /etc/pooladm.conf_01 poolcfg -c 'info cpu 1'
poolcfg -c 'info cpu 1' /etc/pooladm.conf_01
create 指定されたエンティティを作成する 形式 poolcfg -c 'create <エンティティ> [(プロパティ 定義 [; プロパティ 定義; …] )]' [-d | [ファイル名]] エンティティ system <構成名> 新しいリソースプール構成を作成する pool <リソースプール名> リソースプールを作成する 定義 pool.scheduler="値" スケジューラを定義する 設定値「FSS」 FSS (公平配分スケジューラ)を設定する 設定値「TS」 TS (タイムシェアリング)を指定する pset <プロセッサセット名> プロセッサセットを作成する 定義 pset.min="値" pset.sizeで設定できるCPUの最小数を設定する pset.max="値" pset.sizeで設定できるCPUの最大数を設定する プロパティ int 64ビット符号付き整数値を設定する uint 64ビット符号なし整数値を設定する string 文字列を設定する
使用例 poolcfg -c 'create system tester'
poolcfg -c 'create system tester' /etc/pooladm.conf_01 poolcfg -c 'create pool pool_1 (string pool.scheduler="FSS")'
poolcfg -c 'create pool pool_1 (string pool.scheduler="FSS")' /etc/pooladm.conf_01 poolcfg -c 'create pset pset_1 (uint pset.min=1;uint pset.max=1)'
destroy 指定されたエンティティを削除する
形式 poolcfg -c 'destroy [エンティティ]' [-d | [ファイル名]]
エンティティ system <構成名> 指定されたリソースプール構成情報を削除する
pool <リソースプール名> 指定されたリソースプールを削除する pset <プロセッサセット名> 指定されたプロセッサセットを削除する 使用例 poolcfg -c 'destroy pool pool_1'
poolcfg -c 'destroy pool pool_1' /etc/pooladm.conf_01 poolcfg -c 'destroy pset pset_1'
poolcfg -c 'destroy pset pset_1' /etc/pooladm.conf_01
modify 指定されたエンティティの情報を変更する
形式 poolcfg -c 'modify <エンティティ> [(プロパティ 定義 [; プロパティ 定義; …] )]' [-d | [ファイル名]]
エンティティ system <構成名> 指定されたリソースプール構成情報を変更する
system.poold.objectives 設定値「wt-load」 資源の使用率に合わせてPool間で資源を
="値" 移動する pool <リソースプール名> 指定されたリソースプールの情報を変更する 定義 pool.scheduler="値" スケジューラを定義する 設定値「FSS」 FSS (公平配分スケジューラ)を設定する 設定値「TS」 TS (タイムシェアリング)を指定する pset <プロセッサセット名> 指定されたプロセッサセットの情報を削除する 定義 pset.min="値" pset.sizeで設定できるCPUの最小数を設定する pset.max="値" pset.sizeで設定できるCPUの最大数を設定する
pset.poold.objectives="値" 設定値「locality tight」 距離の近いCPUやメモリを使うようにする 設定値「locality none」 距離の近さに関係なくリソースを割り当てる
(system.poold.objectives="wt-load"の時設定)
プロパティ int 64ビット符号付き整数値
uint 64ビット符号なし整数値
string 文字列を指定する
使用例 poolcfg -c 'modify pool pool_1 (string pool.scheduler="TS")'
poolcfg -c 'modify pool pool_1 (string pool.scheduler="TS")' /etc/pooladm.conf_01 poolcfg -c 'modify pset pset_1 (uint pset.max=2)'
poolcfg -c 'modify pset pset_1 (uint pset.max=2)' /etc/pooladm.conf_01 poolcfg -c 'modify pset pset_1 (string pset.poold.objectives="locality none")'
associate リソースプールとプロセッサセットを関連付ける
形式 poolcfg -c 'associate <エンティティ1> (<エンティティ2>)' [-d | [ファイル名]]
エンティティ1 pool <リソースプール名> 指定したリソースプールにプロセッサセットを関連付ける エンティティ2 pset <プロセッサセット名> 指定したプロセッサセットにリソースプールを関連付ける 使用例 poolcfg -c 'associate pool pool_1 (pset pset_1)'
poolcfg -c 'associate pool pool_1 (pset pset_1)' /etc/pooladm.conf_01
transfer プロセッサセット間でCPUリソースを動的に移動する
形式 poolcfg -c 'transfer to <エンティティ1> [(cpu ID)]' [-d | [ファイル名]]
poolcfg -c 'transfer <数量> from <エンティティ2> to <移動先プロセッサセット名>' [-d | [ファイル名]] エンティティ1 pset <プロセッサセット名> CPUの移動先のプロセッサセットを指定する
エンティティ2 pset <プロセッサセット名> CPUの移動元のプロセッサセットを指定する
使用例 poolcfg -c 'transfer to pset pset_1 (cpu 0)' ※CPU ID 0のCPUを移動する poolcfg -c 'transfer 2 from pset pset_default to pset_1' ※2CPUを移動する
rename エンティティ名を変更する
形式 poolcfg -c 'rename <エンティティ> to <新しい名前>' [-d | [ファイル名]]
エンティティ system <構成名> 指定されたリソースプール構成名を変更する
pool <リソースプール名> 指定されたリソースプール名を変更する pset <プロセッサセット名> 指定されたプロセッサセット名を変更する 使用例 poolcfg -c 'rename system default to tester'
poolcfg -c 'rename system default to tester' /etc/pooladm.conf_01 poolcfg -c 'rename pool pool_1 to pool_2'
* < > は必須項目、[ ] は選択項目(省略可能) 7. pooladm pooladm リソースプール設定を有効化または無効化する 形式 pooladm [オプション] オプション なし 現在実行中のプール構成を表示する -n [ファイル名] 設定したリソースプール構成を検証する (ファイル名を指定しない場合、「/etc/pooladm.conf」を使用) -s [ファイル名] 設定したリソースプール構成をファイルに保存する (ファイル名を指定しない場合、「/etc/pooladm.conf」を使用) -c [ファイル名] ファイルに設定されたリソースプール構成を反映する (ファイル名を指定しない場合、「/etc/pooladm.conf」を使用) -e リソースプールサービス(svc:/system/pools:default)を有効にする -d リソースプールサービス(svc:/system/pools:default)を無効にする -x 実行しているリソースプール構成を削除する 使用例 pooladm pooladm -c pooladm -c /etc/pooladm.conf_01 pooladm -n pooladm -n -c /etc/pooladm.conf_01 pooladm -s pooladm -s /etc/pooladm.conf_01 pooladm -d pooladm -e pooladm -x
* < > は必須項目、[ ] は選択項目(省略可能) 8. poolstat poolstat プールの統計情報を表示する 形式 poolstat [オプション] [ 間隔 [回数] ] オプション -r <リソースセット> 指定したリソースセットの統計情報を表示する -p '<プール名 […]>' 指定したプールの統計情報を表示する(スペースで区切る) -o '<表示項目 […]>' 指定した項目の情報を表示する(スペースで区切る) ※-r オプションが必要 リソース all すべてのリソースセットを表示する セット pset プロセッサセットを表示する 表示項目 pool リソースプール名を表示する rset プロセッサセット (pset) 名を表示する size リソースプールに割り当てられたCPU数(スレッド数)を表示する used CPU使用率を表示する load CPU負荷率を表示する 使用例 poolstat
poolstat -r all -p 'pool_admin pool_default' poolstat -p pool_default
poolstat -p 'pool_admin pool_default' poolstat -r all -p 'pool_admin pool_default' poolstat -o pool,rset,size,load -r all