Oracle Solaris のシステム管理 (Oracle Solaris コンテナ : 資源管理と Oracle Solaris ゾーン)

第 28 章 Solaris のゾーン管理 (手順)

この章では、一般的な管理作業およびその使用例を示します。

この章に追加されている説明

この節では、製品の新しい機能を一覧表示し、このマニュアルに追加された内容を示します。

Solaris 10 の新機能の全一覧および Solaris リリースについての説明は、『Oracle Solaris 10 9/10 の新機能』を参照してください。

この章に追加されている Solaris 10 1/06 の説明

メディアにアクセスするための新しい手順が追加されています。「非大域ゾーンで CD または DVD メディアにアクセスする権限を追加する方法」を参照してください。

ゾーン内のファイルをバックアップおよび復元する手順が追加されています。「ゾーンがインストールされている Solaris システムのバックアップ」および 「非大域ゾーンの復元」を参照してください。

この章に追加されている Solaris 10 6/06 の説明

新しい手順が追加されています。「大域ゾーンのファイルシステムを非大域ゾーンにマウントする方法」および 「非大域ゾーンの /usr の下に書き込み可能ディレクトリを追加する方法」を参照してください。

この章に追加されている Solaris 10 8/07 の説明

新しい手順が追加されています。「DTrace を使用する方法」「Solaris 10 8/07: 排他的 IP 非大域ゾーンでのデータリンクの管理」、および 「非大域ゾーンの SMF サービスの状態の確認」を参照してください。

ppriv ユーティリティーの使用

ppriv ユーティリティーを使用してゾーンの特権を表示します。

Procedure大域ゾーンでの Solaris の特権を一覧表示する方法

ppriv ユーティリティーを -l オプションとともに使用して、システムで使用可能な特権を一覧表示します。

  1. プロンプトで ppriv -l zone と入力し、ゾーンで使用可能な特権セットを表示します。


    global# ppriv -l zone
    

    次のような内容が表示されます。


    contract_event
    contract_observer
    cpc_cpu
    .
    .
    .

Procedure非大域ゾーンの特権セットの表示方法

ppriv ユーティリティーを -l オプションおよび式 zone とともに使用して、ゾーンの特権を表示します。

  1. 非大域ゾーンにログインします。この例では、my-zone という名前のゾーンを使用します。

  2. プロンプトで ppriv -l zone と入力し、ゾーンで使用可能な特権セットを表示します。


    my-zone# ppriv -l zone
    

    次のような内容が表示されます。


    contract_event
    contract_observer
    file_chown
    
    .
    .
    .

Procedure非大域ゾーンの特権セットを冗長出力で表示する方法

ppriv ユーティリティーを -l オプション、式 zone、および -v オプションとともに使用して、ゾーンの特権を一覧表示します。

  1. 非大域ゾーンにログインします。この例では、my-zone という名前のゾーンを使用します。

  2. プロンプトで ppriv -l -v zone と入力して、ゾーン内で使用可能な特権セットおよび各特権の説明を出力します。


    my-zone# ppriv -l -v zone
    

    次のような内容が表示されます。


    contract_event
            Allows a process to request critical events without limitation.
            Allows a process to request reliable delivery of all events on
            any event queue.
    contract_observer
            Allows a process to observe contract events generated by
            contracts created and owned by users other than the process's
            effective user ID.
            Allows a process to open contract event endpoints belonging to
            contracts created and owned by users other than the process's
            effective user ID.
    file_chown
            Allows a process to change a file's owner user ID.
            Allows a process to change a file's group ID to one other than
            the process' effective group ID or one of the process'
            supplemental group IDs.
    .
    .
    .

非大域ゾーン内での DTrace の使用

「非大域ゾーン内での DTrace の実行」で説明されている DTrace 機能を使用するには、次の手順を実行します。

ProcedureDTrace を使用する方法

  1. zonecfg limitpriv プロパティーを使用して、dtrace_proc 特権と dtrace_user 特権を追加します。


    global# zonecfg -z my-zone
    zonecfg:my-zone> set limitpriv="default,dtrace_proc,dtrace_user"
    zonecfg:my-zone> exit
    

    注 –

    必要に応じて、どちらか一方の特権を追加することも、両方の特権を追加することもできます。


  2. ゾーンを起動します。


    global# zoneadm -z my-zone boot
    
  3. ゾーンにログインします。


    global# zlogin my-zone
    
  4. DTrace プログラムを実行します。


    my-zone# dtrace -l
    

非大域ゾーンの SMF サービスの状態の確認

ネイティブな非大域ゾーンの SMF サービスの状態を確認するには、zlogin コマンドを使用します。

Procedureコマンド行から SMF サービスの状態を確認する方法

  1. スーパーユーザーまたは Primary Administrator 役割になります。

    役割の作成と作成した役割のユーザーへの割り当てについては、『Solaris のシステム管理 (基本編)』「Solaris 管理ツールを RBAC と組み合わせて使用する (作業マップ)」を参照してください。

  2. コマンド行から次のように入力して、無効になっているサービスも含むすべてのサービスを表示します。


    global# zlogin my-zone svcs -a
    
参照

詳細は、第 22 章非大域ゾーンへのログイン (手順)および svcs(1) のマニュアルページを参照してください。

Procedureゾーン内から SMF サービスの状態を確認する方法

  1. スーパーユーザーまたは Primary Administrator 役割になります。

    役割の作成と作成した役割のユーザーへの割り当てについては、『Solaris のシステム管理 (基本編)』「Solaris 管理ツールを RBAC と組み合わせて使用する (作業マップ)」を参照してください。

  2. ゾーンにログインします。


    global# zlogin my-zone
    
  3. svcs コマンドに -a オプションを付けて実行して、無効になっているサービスも含むすべてのサービスを表示します。


    my-zone# svcs -a
    
参照

詳細は、第 22 章非大域ゾーンへのログイン (手順)および svcs(1) のマニュアルページを参照してください。

稼働中の非大域ゾーン内でファイルシステムをマウントする

稼働中の非大域ゾーン内でファイルシステムをマウントできます。具体的には、次の作業について説明しています。

Procedurezonecfg を使用して raw デバイスおよびブロックデバイスをインポートする方法

この手順では、lofi ファイルドライバを使用します。このドライバは、ファイルをブロックデバイスとしてエクスポートします。

  1. スーパーユーザーまたは Primary Administrator 役割になります。

    役割の作成と作成した役割のユーザーへの割り当てについては、『Solaris のシステム管理 (基本編)』「Solaris 管理ツールを RBAC と組み合わせて使用する (作業マップ)」を参照してください。

  2. ディレクトリを /usr/tmp に変更します。


    global# cd /usr/tmp
    
  3. 新しい UFS ファイルシステムを作成します。


    global# mkfile 10m fsfile
    
  4. ファイルをブロックデバイスとして接続します。

    ほかの lofi デバイスが作成されていない場合、使用可能な最初のスロット /dev/lofi/1 が使用されます。


    global# lofiadm -a `pwd`/fsfile
    

    必要な文字デバイスも取得します。

  5. デバイスをゾーン my-zone にインポートします。


    global# zonecfg -z my-zone
    zonecfg:my-zone> add device
    zonecfg:my-zone:device> set match=/dev/rlofi/1
    zonecfg:my-zone:device> end
    zonecfg:my-zone> add device
    zonecfg:my-zone:device> set match=/dev/lofi/1
    zonecfg:my-zone:device> end
    
  6. ゾーンを再起動します。


    global# zoneadm -z my-zone boot
    
  7. ゾーンにログインして、デバイスのインポートが成功したことを確認します。


    my-zone# ls  -l /dev/*lofi/*
    

    次のような内容が表示されます。


    brw-------   1 root     sys      147,  1 Jan  7 11:26 /dev/lofi/1
    crw-------   1 root     sys      147,  1 Jan  7 11:26 /dev/rlofi/1
参照

詳細は、lofiadm(1m) および lofi(7D) のマニュアルページを参照してください。

Procedureファイルシステムを手動でマウントする方法

この手順を実行するには、ゾーン管理者になり、Zone Management プロファイルを保持する必要があります。この手順では、newfs コマンドを使用します。このコマンドの詳細は、newfs(1M) のマニュアルページを参照してください。

  1. スーパーユーザーになるか、プロファイルリスト内の Zone Management 権利プロファイルを保持します。

  2. ゾーン my-zone 内で、ディスク上に新しいファイルシステムを作成します。


    my-zone# newfs /dev/lofi/1
    
  3. プロンプトに yes で応答します。


    newfs: construct a new file system /dev/rlofi/1: (y/n)? y
    

    次のような内容が表示されます。


    /dev/rlofi/1:   20468 sectors in 34 cylinders of 1 tracks, 602 sectors
            10.0MB in 3 cyl groups (16 c/g, 4.70MB/g, 2240 i/g)
    super-block backups (for fsck -F ufs -o b=#) at:
     32, 9664, 19296,
  4. ファイルシステムのエラーを検査します。


    my-zone# fsck -F ufs /dev/rlofi/1
    

    次のような内容が表示されます。


    ** /dev/rlofi/1
    ** Last Mounted on 
    ** Phase 1 - Check Blocks and Sizes
    ** Phase 2 - Check Pathnames
    ** Phase 3 - Check Connectivity
    ** Phase 4 - Check Reference Counts
    ** Phase 5 - Check Cyl groups
    2 files, 9 used, 9320 free (16 frags, 1163 blocks, 0.2% fragmentation)
  5. ファイルシステムをマウントします。


    my-zone# mount -F ufs /dev/lofi/1 /mnt
    
  6. マウントを検証します。


    my-zone# grep /mnt /etc/mnttab
    

    次のような内容が表示されます。


    /dev/lofi/1     /mnt    ufs
    rw,suid,intr,largefiles,xattr,onerror=panic,zone=foo,dev=24c0001
    1073503869

Procedureゾーンの起動時にマウントするファイルシステムを /etc/vfstab に配置する方法

ここでは、ブロックデバイス /dev/lofi/1 をファイルシステムパス /mnt にマウントする手順を説明します。ブロックデバイスには UFS ファイルシステムが含まれます。次のオプションを使用します。

  1. スーパーユーザーになるか、プロファイルリスト内の Zone Management 権利プロファイルを保持します。

  2. ゾーン my-zone 内で、次の行を /etc/vfstab に追加します。


    /dev/lofi/1 /dev/rlofi/1  /mnt   ufs  2  yes logging

Procedure大域ゾーンのファイルシステムを非大域ゾーンにマウントする方法

ゾーンが zonepath /export/home/my-zone を保持するものとします。ここで、大域ゾーンのディスク /dev/lofi/1 を非大域ゾーン内の /mnt にマウントします。

この手順を実行するには、大域ゾーン内で大域管理者になる必要があります。

  1. スーパーユーザーまたは Primary Administrator 役割になります。

    役割の作成と作成した役割のユーザーへの割り当てについては、『Solaris のシステム管理 (基本編)』「Solaris 管理ツールを RBAC と組み合わせて使用する (作業マップ)」を参照してください。

  2. ディスクを非大域ゾーンの /mnt にマウントするには、大域ゾーンから次のように入力します。


    global# mount -F ufs /dev/lofi/1 /export/home/my-zone/root/mnt
    
参照

lofi の詳細については、lofiadm(1M) および lofi(7D) のマニュアルページを参照してください。

大域ゾーン内の特定のファイルシステムへのアクセス権を非大域ゾーンに追加する

Procedure非大域ゾーンで CD または DVD メディアにアクセスする権限を追加する方法

この手順を使用して、非大域ゾーンで CD または DVD メディアに読み取り専用のアクセスを行う権限を追加できます。メディアをマウントするときには、大域ゾーンでボリューム管理ファイルシステムが使用されます。アクセス権を追加したら、CD または DVD を使用して製品を非大域ゾーンにインストールできます。この手順では、jes_05q4_dvd という DVD を使用します。

  1. スーパーユーザーまたは Primary Administrator 役割になります。

    役割の作成と作成した役割のユーザーへの割り当てについては、『Solaris のシステム管理 (基本編)』「Solaris 管理ツールを RBAC と組み合わせて使用する (作業マップ)」を参照してください。

  2. 大域ゾーンでボリューム管理ファイルシステムが稼働しているかどうかを調べます。


    global# svcs volfs
    STATE          STIME    FMRI
    online         Sep_29   svc:/system/filesystem/volfs:default
  3. (省略可能) 大域ゾーンでボリューム管理ファイルシステムが稼働していない場合は、起動します。


    global# svcadm volfs enable
    
  4. メディアを挿入します。

  5. ドライブにメディアが入っているかどうかを確認します。


    global# volcheck
    
  6. DVD が自動マウントされているかどうかをテストします。


    global# ls /cdrom
    

    次のような情報が表示されます。


    cdrom   cdrom1   jes_05q4_dvd
  7. ro,nodevices オプション (読み取り専用、デバイスなし) を指定して、非大域ゾーンでファイルシステムをループバックマウントします。


    global# zonecfg -z my-zone
    zonecfg:my-zone> add fs
    zonecfg:my-zone:fs> set dir=/cdrom
    zonecfg:my-zone:fs> set special=/cdrom
    zonecfg:my-zone:fs> set type=lofs
    zonecfg:my-zone:fs> add options [ro,nodevices]
    zonecfg:my-zone:fs> end
    zonecfg:my-zone> commit
    zonecfg:my-zone> exit
    
  8. 非大域ゾーンを再起動します。


    global# zoneadm -z my-zone reboot
    
  9. zoneadm list コマンドに -v オプションを指定して、状態を確認します。


    global# zoneadm list -v
    

    次のような情報が表示されます。


    ID  NAME     STATUS       PATH                           BRAND      IP
     0  global   running      /                              native     shared
     1  my-zone  running      /export/home/my-zone           native     shared
  10. 非大域ゾーンにログインします


    global# zlogin my-zone
    
  11. DVD-ROM がマウントされているかを確認します。


    my-zone# ls /cdrom
    

    次のような内容が表示されます。


    cdrom   cdrom1   jes_05q4_dvd
  12. 製品のインストールガイドに従って、製品をインストールします。

  13. 非大域ゾーンから抜けます。


    my-zone# exit
    

    ヒント –

    /cdrom ファイルシステムを非大域ゾーンに残すこともできます。マウントするときには、常に CD-ROM ドライブの現在の内容が反映されます。つまり、ドライブが空の場合は、ディレクトリは空になります。


  14. (省略可能) 非大域ゾーンから /cdrom ファイルシステムを削除する場合は、次の手順を使用します。


    global# zonecfg -z my-zone
    zonecfg:my-zone> remove fs dir=/cdrom
    zonecfg:my-zone> commit
    zonecfg:my-zone> exit
    

Procedure非大域ゾーンの /usr の下に書き込み可能ディレクトリを追加する方法

疎ルートゾーンでは、/usr は大域ゾーンから読み取り専用でマウントされます。ここで説明する手順を使って、ゾーンの /usr の下に /usr/local などの書き込み可能ディレクトリを追加できます。

この手順を実行するには、大域ゾーン内で大域管理者になる必要があります。

  1. スーパーユーザーまたは Primary Administrator 役割になります。

    役割の作成と作成した役割のユーザーへの割り当てについては、『Solaris のシステム管理 (基本編)』「Solaris 管理ツールを RBAC と組み合わせて使用する (作業マップ)」を参照してください。

  2. 大域ゾーンに /usr/local ディレクトリを作成します。


    global# mkdir -p /usr/local
    
  3. ゾーンの /usr/local ディレクトリのバッキングストアとして使用する、大域ゾーン内のディレクトリを指定します。


    global# mkdir -p /storage/local/my-zone
    
  4. ゾーン my-zone の構成を編集します。


    global# zonecfg -z my-zone
    
  5. ループバックマウントされたファイルシステムを追加します。


    zonecfg:my-zone> add fs
    zonecfg:my-zone:fs> set dir=/usr/local
            zonecfg:my-zone:fs> set special=/storage/local/my-zone
            zonecfg:my-zone:fs> set type=lofs
            zonecfg:my-zone:fs> end
            zonecfg:my-zone> commit
            zonecfg:my-zone> exit
    
  6. ゾーンを起動します。

Procedure大域ゾーン内のホームディレクトリを非大域ゾーンにエクスポートする方法

大域ゾーンから同じシステム上の非大域ゾーンにホームディレクトリまたはほかのファイルシステムをエクスポートする場合に、この手順を使用します。

この手順を実行するには、大域ゾーン内で大域管理者になる必要があります。

  1. スーパーユーザーまたは Primary Administrator 役割になります。

    役割の作成と作成した役割のユーザーへの割り当てについては、『Solaris のシステム管理 (基本編)』「Solaris 管理ツールを RBAC と組み合わせて使用する (作業マップ)」を参照してください。

  2. ループバックマウントされたファイルシステムを追加します。


    global# zonecfg -z my-zone
    zonecfg:my-zone> add fs
    zonecfg:my-zone:fs> set dir=/export/home
    zonecfg:my-zone:fs> set special=/export/home
    zonecfg:my-zone:fs> set type=lofs
    zonecfg:my-zone:fs> set options=nodevices
    zonecfg:my-zone:fs> end
    zonecfg:my-zone> commit
    zonecfg:my-zone> exit
    
  3. ゾーンの /etc/auto_home ファイルに次の行を追加します。


    $HOST:/export/home/&

ゾーンがインストールされている Solaris システムでの IP ネットワークマルチパスの使用

ProcedureSolaris 10 8/07: 排他的 IP 非大域ゾーンで IP ネットワークマルチパスを使用する方法

排他的 IP ゾーンの IP ネットワークマルチパス (IPMP) は、大域ゾーンと同じ方法で構成します。

IP マルチパスグループ (IPMP グループ) に 1 つ以上の物理インタフェースを構成できます。IPMP を構成すると、IPMP グループのインタフェースに障害が発生していないかどうかをシステムが自動的に監視します。グループのインタフェースに障害が発生した場合や、保守のためにインタフェースが削除された場合、IPMP は自動的に、そのインタフェースの IP アドレスを移行して処理を継続します。フェイルオーバーされたアドレスは、障害が発生したインタフェースの IPMP グループ内の機能中のインタフェースが受け取ります。IPMP のフェイルオーバー機能は、接続を保持し、既存の接続の切断を防止します。さらに、IPMP は、ネットワークトラフィックを自動的に IPMP グループ内のインタフェースのセットに分散することによって、ネットワークパフォーマンス全体を向上させます。この処理は負荷分散と呼ばれます。

  1. スーパーユーザーまたは Primary Administrator 役割になります。

    役割の作成と作成した役割のユーザーへの割り当てについては、『Solaris のシステム管理 (基本編)』「Solaris 管理ツールを RBAC と組み合わせて使用する (作業マップ)」を参照してください。

  2. IPMP グループを構成します。詳細は、『Solaris のシステム管理 (IP サービス)』「IPMP グループの構成」を参照してください。

ProcedureIP ネットワークマルチパス機能を共有 IP 非大域ゾーンに拡張する方法

大域ゾーン内で IPMP を構成し、IPMP 機能を非大域ゾーンに拡張する場合に、ここで説明する手順を使用します。

ゾーンの構成時に、各アドレスつまり論理インタフェースを非大域ゾーンと関連付ける必要があります。手順については、zonecfg コマンドの使用」および 「ゾーンの構成方法」を参照してください。

この手順を実行すると、次のことが達成されます。

稼働中のゾーンで、ifconfig コマンドを使用して関連付けを行うことができます。「共有 IP ネットワークインタフェース」および ifconfig(1m) のマニュアルページを参照してください。

この手順を実行するには、大域ゾーン内で大域管理者になる必要があります。

  1. スーパーユーザーまたは Primary Administrator 役割になります。

    役割の作成と作成した役割のユーザーへの割り当てについては、『Solaris のシステム管理 (基本編)』「Solaris 管理ツールを RBAC と組み合わせて使用する (作業マップ)」を参照してください。

  2. 大域ゾーン内で IPMP グループを構成します。詳細は、『Solaris のシステム管理 (IP サービス)』「IPMP グループの構成」を参照してください。

  3. zonecfg コマンドを使用してゾーンを構成します。net 資源を構成する際、アドレス 192.168.0.1 および物理インタフェース bge0 をゾーン my-zone に追加します。


    zonecfg:my-zone> add net
    zonecfg:my-zone:net> set address=192.168.0.1
    zonecfg:my-zone:net> set physical=bge0
    zonecfg:my-zone:net> set defrouter=10.0.0.1
    zonecfg:my-zone:net> end
    

    非大域ゾーン my-zone 内に bge0 だけが表示されます。

bge0 が連続して失敗した場合

bge0 が連続して失敗し、bge0 データアドレスが大域ゾーン内の hme0 に引き継がれる場合、my-zone アドレスも移行します。

アドレス 192.168.0.1hme0 に移動する場合、非大域ゾーン my-zone 内で hme0 だけが表示されます。このカードは、アドレス 192.168.0.1 に関連付けられ、bge0 は表示されなくなります。

Solaris 10 8/07: 排他的 IP 非大域ゾーンでのデータリンクの管理

データリンクを管理するには、大域ゾーンから dladm コマンドを使用します。

Proceduredladm show-linkprop の使用方法

dladm コマンドを show-linkprop サブコマンドとともに使用して、実行中の排他的 IP ゾーンに対するデータリンクの割り当てを表示できます。

データリンクを管理するには、大域ゾーン内で大域管理者になる必要があります。

  1. スーパーユーザーまたは Primary Administrator 役割になります。

    役割の作成と作成した役割のユーザーへの割り当てについては、『Solaris のシステム管理 (基本編)』「Solaris 管理ツールを RBAC と組み合わせて使用する (作業マップ)」を参照してください。

  2. システムのデータリンクの割り当てを表示します。


    global# dladm show-linkprop
    

例 28–1 dladm コマンドを show-linkprop サブコマンドとともに使用する

  1. ゾーン 49bge には bge0 が割り当てられていますが、最初の画面ではこのゾーンは起動していません。


    global# dladm show-linkprop
    LINK         PROPERTY        VALUE          DEFAULT        POSSIBLE
    bge0         zone            --             --             --
    ath0         channel         6              --             --
    ath0         powermode       ?              off            off,fast,max
    ath0         radio           ?              on             on,off
    ath0         speed           11             -- 
    1,2,5.5,6,9,11,12,18,24,36,48,54
    ath0         zone            --             --             --
  2. ゾーン 49bge を起動します。


    global# zoneadm -z 49bge boot
    
  3. コマンド dladm show-linkprop をもう一度実行します。すると、bge0 リンクが 49bge に割り当てられていることに注目してください。


    global# dladm show-linkprop
    LINK         PROPERTY        VALUE          DEFAULT        POSSIBLE
    bge0         zone            49bge          --             --
    ath0         channel         6              --             --
    ath0         powermode       ?              off            off,fast,max
    ath0         radio           ?              on             on,off
    ath0         speed           11             -- 
    1,2,5.5,6,9,11,12,18,24,36,48,54
    ath0         zone            --             --             --

Proceduredladm set-linkprop の使用方法

dladm コマンドを set-linkprop サブコマンドとともに使用して、実行中の排他的 IP ゾーンに対してデータリンクを一時的に割り当てることができます。持続的な割り当ては zonecfg コマンドを使用して行う必要があります。

データリンクを管理するには、大域ゾーン内で大域管理者になる必要があります。

  1. スーパーユーザーまたは Primary Administrator 役割になります。

    役割の作成と作成した役割のユーザーへの割り当てについては、『Solaris のシステム管理 (基本編)』「Solaris 管理ツールを RBAC と組み合わせて使用する (作業マップ)」を参照してください。

  2. dladm set-linkprop-t とともに使用して、excl という実行中のゾーンに bge0 を追加します。


    global# dladm set-linkprop -t -p zone=excl bge0
    LINK         PROPERTY        VALUE          DEFAULT        POSSIBLE
    bge0         zone            excl           --             --

    ヒント –

    -p オプションを使用すると、マシンで構文解析できる安定した形式の表示が生成されます。


Proceduredladm reset-linkprop の使用方法

dladm コマンドを reset-linkprop サブコマンドとともに使用して、bge0 リンクの値を未設定にリセットできます。

  1. スーパーユーザーまたは Primary Administrator 役割になります。

    役割の作成と作成した役割のユーザーへの割り当てについては、『Solaris のシステム管理 (基本編)』「Solaris 管理ツールを RBAC と組み合わせて使用する (作業マップ)」を参照してください。

  2. dladm reset-linkprop-t とともに使用して、ゾーンへの bge0 デバイスの割り当てを解除します。


    global# dladm reset-linkprop -t -p zone=excl bge0
    LINK         PROPERTY        VALUE          DEFAULT        POSSIBLE
    bge0         zone            excl           --             --

    ヒント –

    -p オプションを使用すると、マシンで構文解析できる安定した形式の表示が生成されます。


注意事項

実行中のゾーンでそのデバイスが使用中の場合、再割り当ては失敗し、エラーメッセージが表示されます。「排他的 IP ゾーンがデバイスを使用しているために dladm reset-linkprop が失敗する」を参照してください。

ゾーンがインストールされている Solaris システムでの公平配分スケジューラの使用

prctl コマンドで指定された制限には持続性がありません。システムが再起動されると、制限は無効になります。ゾーンの配分を持続的に設定する方法については、「ゾーンの構成方法」および 「大域ゾーンの zone.cpu-shares を設定する方法」を参照してください。

Procedureprctl コマンドを使用して大域ゾーンの FSS 配分を設定する方法

大域ゾーンには、デフォルトで 1 つの配分が付与されます。ここで説明する手順を使って、デフォルトの割り当てを変更できます。システムを再起動するたびに prctl コマンドで割り当てた配分を設定し直す必要があります。

この手順を実行するには、大域ゾーン内で大域管理者になる必要があります。

  1. スーパーユーザーまたは Primary Administrator 役割になります。

    役割の作成と作成した役割のユーザーへの割り当てについては、『Solaris のシステム管理 (基本編)』「Solaris 管理ツールを RBAC と組み合わせて使用する (作業マップ)」を参照してください。

  2. prctl ユーティリティーを使用して、2 つの配分を大域ゾーンに割り当てます。


    # prctl -n zone.cpu-shares -v 2 -r -i zone global
    
  3. (省略可能) 大域ゾーンに割り当てられた配分の数を確認するには、次のように入力します。


    # prctl -n zone.cpu-shares -i zone global
    
参照

prctl ユーティリティーの詳細は、prctl(1) のマニュアルページを参照してください。

Procedureゾーンの zone.cpu-shares 値を動的に変更する方法

この手順は、大域ゾーンだけでなく任意のゾーンに対して使用できます。

  1. スーパーユーザーまたは Primary Administrator 役割になります。

    役割の作成と作成した役割のユーザーへの割り当てについては、『Solaris のシステム管理 (基本編)』「Solaris 管理ツールを RBAC と組み合わせて使用する (作業マップ)」を参照してください。

  2. prctl コマンドを使って cpu-shares の新しい値を指定します。


    # prctl -n zone.cpu-shares -r -v value -i zone zonename
    

    idtypezonenamezoneid のいずれかです。value は新しい値です。

ゾーン管理での権利プロファイルの使用

ここでは、非大域ゾーンで権利プロファイルを使用することに関連した作業について説明します。

ProcedureZone Management プロファイルを割り当てる方法

ユーザーは、Zone Management プロファイルを使用することで、システムの非大域ゾーンをすべて管理できます。

この手順を実行するには、大域ゾーン内で大域管理者になる必要があります。

  1. スーパーユーザーまたは Primary Administrator 役割になります。

    役割の作成と作成した役割のユーザーへの割り当てについては、『Solaris のシステム管理 (基本編)』「Solaris 管理ツールを RBAC と組み合わせて使用する (作業マップ)」を参照してください。

  2. Zone Management 権利プロファイルを含む役割を作成し、その役割をユーザーに割り当てます。

例 — ゾーンコマンドでのプロファイルシェルの使用

pfexec プログラムを使用して、プロファイル内でゾーンコマンドを実行できます。プログラムは、exec_attr データベース内のユーザープロファイルで指定された属性を使って、コマンドを実行します。プログラムの呼び出しには、プロファイルシェル pfkshpfcsh、および pfsh が使用されます。

pfexec プログラムを使用して、 my-zone などのゾーンにログインします。


machine$ pfexec zlogin my-zone

ゾーンがインストールされている Solaris システムのバックアップ

次の手順を使用して、ゾーン内のファイルをバックアップできます。ゾーンの構成ファイルもバックアップしてください。

Procedureufsdump を使用してバックアップを実行する方法

ufsdump コマンドを使用して、完全バックアップまたは増分バックアップを実行できます。この手順では、ゾーン /export/my-zone/backup/my-zone.ufsdump にバックアップします。ここで my-zone は使用しているシステム上のゾーンの名前に置き換えてください。/backup にマウントされたファイルシステムなど、別のファイルシステムにバックアップを格納することもできます。

  1. スーパーユーザーまたは Primary Administrator 役割になります。

    役割の作成と作成した役割のユーザーへの割り当てについては、『Solaris のシステム管理 (基本編)』「Solaris 管理ツールを RBAC と組み合わせて使用する (作業マップ)」を参照してください。

  2. (省略可能) 共有ファイルシステムのバックアップを作成しないように、ゾーンを停止して休止状態にします。


    global# zlogin -S my-zone init 0
    
  3. ゾーンの状態を検査します。


    global# zoneadm list -cv
    

    次のような情報が表示されます。


    ID  NAME     STATUS       PATH                           BRAND      IP
     0  global   running      /                              native     shared
     -  my-zone  installed    /export/home/my-zone           native     shared
  4. バックアップを実行します。


    global# ufsdump 0f /backup/my-zone.ufsdump /export/my-zone
    

    次のような情報が表示されます。


    DUMP: Date of this level 0 dump: Wed Aug 10 16:13:52 2005
    DUMP: Date of last level 0 dump: the epoch
    DUMP: Dumping /dev/rdsk/c0t0d0s0 (bird:/) to /backup/my-zone.ufsdump. 
    DUMP: Mapping (Pass I) [regular files]
    DUMP: Mapping (Pass II) [directories]
    DUMP: Writing 63 Kilobyte records
    DUMP: Estimated 363468 blocks (174.47MB).
    DUMP: Dumping (Pass III) [directories]
    DUMP: Dumping (Pass IV) [regular files]
    DUMP: 369934 blocks (180.63MB) on 1 volume at 432 KB/sec
    DUMP: DUMP IS DONE
  5. ゾーンを起動します。


    global# zoneadm -z my-zone boot
    

Procedurefssnap を使用して UFS スナップショットを作成する方法

この手順では、fssnap コマンドを使用して、バックアップのためにファイルシステムの一時的なイメージを作成します。

この方法を利用すれば、ゾーンファイルだけの純粋で一貫性のあるバックアップファイルを作成することができ、しかも、その作業をゾーンの動作中に実行できます。ただし、スナップショットを作成するときには、ファイルを更新中のアクティブなアプリケーションを中断するか、チェックポイントを設定することをお勧めします。スナップショットが作成されるときにファイルを更新中のアプリケーションは、これらのファイルを、内部的に一貫性のない状態、一部を切り捨てた状態、または使用できない状態にすることがあります。

下記の手順の例では、次のようになっています。

始める前に

バックアップ先は /backup/my-zone.ufsdump です。/ の下に backup ディレクトリを作成する必要があります。

  1. スーパーユーザーまたは Primary Administrator 役割になります。

    役割の作成と作成した役割のユーザーへの割り当てについては、『Solaris のシステム管理 (基本編)』「Solaris 管理ツールを RBAC と組み合わせて使用する (作業マップ)」を参照してください。

  2. スナップショットを作成します。


    global# fssnap -o bs=/export /export/home
    

    次のような情報が表示されます。


    dev/fssnap/0
  3. スナップショットをマウントします。


    global# mount -o ro /dev/fssnap/0 /mnt
    
  4. スナップショットから my-zone をバックアップします。


    global# ufsdump 0f /backup/my-zone.ufsdump /mnt/my-zone
    

    次のような情報が表示されます。


    DUMP: Date of this level 0 dump: Thu Oct 06 15:13:07 2005
       DUMP: Date of last level 0 dump: the epoch
       DUMP: Dumping /dev/rfssnap/0 (pc2:/mnt) to /backup/my-zone.ufsdump.
       DUMP: Mapping (Pass I) [regular files]
       DUMP: Mapping (Pass II) [directories]
       DUMP: Writing 32 Kilobyte records
       DUMP: Estimated 176028 blocks (85.95MB).
       DUMP: Dumping (Pass III) [directories]
       DUMP: Dumping (Pass IV) [regular files]
       DUMP: 175614 blocks (85.75MB) on 1 volume at 2731 KB/sec
       DUMP: DUMP IS DONE
  5. スナップショットのマウントを解除します。


    global# umount /mnt
    
  6. スナップショットを削除します。


    global# fssnap -d /dev/fssnap/0
    

    システムを再起動すると、スナップショットもシステムから削除されます。

Procedurefind および cpio を使用してバックアップを実行する方法

  1. スーパーユーザーまたは Primary Administrator 役割になります。

    役割の作成と作成した役割のユーザーへの割り当てについては、『Solaris のシステム管理 (基本編)』「Solaris 管理ツールを RBAC と組み合わせて使用する (作業マップ)」を参照してください。

  2. ディレクトリをルートディレクトリに変更します。


    global# cd /
    
  3. ループバックマウントされていない my-zone ファイルを /backup/my-zone.cpio にバックアップします。


    global# find export/my-zone -fstype lofs -prune -o -local
     | cpio -oc -O /backup/my-zone.cpio type as one line
    
  4. 結果を確認します。


    global# ls -l backup/my-zone.cpio
    

    次のような情報が表示されます。


    -rwxr-xr-x   1 root     root     99680256 Aug 10 16:13 backup/my-zone.cpio

Procedureゾーン構成のコピーを出力する方法

非大域ゾーン構成のバックアップファイルを作成することをお勧めします。必要に応じて、このバックアップを使用してゾーンをあとで再作成することができます。ゾーンにはじめてログインして sysidtool からの質問に回答したあとに、ゾーンの構成のコピーを作成します。この手順では、処理をわかりやすく説明するために、my-zone という名前のゾーンと my-zone.config という名前のバックアップファイルを使用します。

  1. スーパーユーザーまたは Primary Administrator 役割になります。

    役割の作成と作成した役割のユーザーへの割り当てについては、『Solaris のシステム管理 (基本編)』「Solaris 管理ツールを RBAC と組み合わせて使用する (作業マップ)」を参照してください。

  2. ゾーン my-zone の構成を my-zone.config というファイルに出力します。


    global# zonecfg -z my-zone export > my-zone.config
    

非大域ゾーンの復元

Procedure非大域ゾーンを個別に復元する方法

必要に応じて、非大域ゾーン構成のバックアップファイルを使用して非大域ゾーンを復元できます。この手順では、ゾーンを復元する処理をわかりやすく説明するために、my-zone という名前のゾーンと my-zone.config という名前のバックアップファイルを使用します。

  1. スーパーユーザーまたは Primary Administrator 役割になります。

    役割の作成と作成した役割のユーザーへの割り当てについては、『Solaris のシステム管理 (基本編)』「Solaris 管理ツールを RBAC と組み合わせて使用する (作業マップ)」を参照してください。

  2. ゾーン my-zone を再作成するために、my-zone.config zonecfg コマンドファイルとして使用することを指定します。


    global# zonecfg -z my-zone -f my-zone.config
    
  3. ゾーンをインストールします。


    global# zoneadm -z my-zone install
    
  4. ゾーンに最初にログインするときに sysidtool からの質問が表示されないようにする場合は、たとえば次のようにして zonepath/root/etc/.UNCONFIGURED ファイルを削除します。


    global# rm /export/home/my-zone/root/etc/.UNCONFIGURED
    
  5. ゾーン固有のファイル (アプリケーションデータなど) を復元する場合は、新しく作成したゾーンのルートファイルシステムに対してバックアップのファイルを手動で復元します。手作業でのマージが必要な場合があります。