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

第 22 章 非大域ゾーンへのログイン (手順)

この章では、インストール済みのゾーンの構成を完了して大域ゾーンからゾーンにログインし、ゾーンを停止処理する手順について説明します。また、zonename コマンドを使用して現在のゾーン名を出力する方法についても説明します。

ゾーンへのログイン処理の概要については、第 21 章非大域ゾーンへのログイン (概要)を参照してください。

初期ゾーン起動およびゾーンログインの手順 (作業マップ)

タスク 

説明 

説明 

内部構成を実行します。 

ゾーンコンソールにログインするか、/etc/sysidcfg ファイルを使用して初期ゾーン構成を実行します。

「初期内部ゾーン構成を実行する」

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

ゾーンへのログインには、コンソールを使用する、対話型モードを使って仮想端末を割り当てる、またはゾーン内で実行するコマンドを指定する方法があります。実行するコマンドを指定する場合、仮想端末は割り当てられません。ゾーンへの接続が拒否された場合は、フェイルセーフモードを使用してログインすることもできます。 

「ゾーンへのログイン」

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

非大域ゾーンへの接続を切り離します。 

「非大域ゾーンから抜ける方法」

ゾーンを停止処理します。 

shutdown ユーティリティーまたはスクリプトを使用して、ゾーンを停止処理します。

zlogin を使用してゾーンを停止処理する方法」

ゾーン名を出力します。 

現在のゾーンの名前を出力します。 

「現在のゾーンの名前を出力する」

初期内部ゾーン構成を実行する

次のいずれかの方法で、ゾーンを構成する必要があります。


ヒント –

内部構成を実行したあとは、非大域ゾーンの構成のコピーを作成することをお勧めします。このバックアップを使用して、あとでゾーンを復元することができます。スーパーユーザーまたは Primary Administrator として、ゾーン my-zone の構成をファイルに出力してください。次の例では、 my-zone.config というファイルを使用しています。


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

詳細は、「非大域ゾーンを個別に復元する方法」を参照してください。


Procedureゾーンコンソールにログインして初期ゾーン構成を行う方法

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

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

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

  2. zlogin コマンドと -C オプション、およびゾーン名 (この手順では my-zone) を使用します。


    global# zlogin -C my-zone
    
  3. 別の端末ウィンドウからゾーンを起動します。


    global# zoneadm -z my-zone boot
    

    次のような内容が、zlogin ウィンドウに表示されます。


    [NOTICE: Zone booting up]
  4. コンソールへの初回ログイン時に、一連の質問に応答するよう求められます。画面には、次のようなメッセージが表示されます。


    SunOS Release 5.10 Version Generic 64-bit
    Copyright 1983-2006 Sun Microsystems, Inc.  All rights reserved.
    Use is subject to license terms.
    
    Hostname: my-zone
    Loading smf(5) service descriptions:
    Select a Language
    
         1. English
         2. es
         2. fr
    Please make a choice (0 - 1), or press h or ? for help:
    
    Select a Locale
    
          1. English (C - 7-bit ASCII)
          2. Canada (English) (UTF-8)
          4. U.S.A. (UTF-8)
          5. U.S.A. (en_US.ISO8859-1)
          6. U.S.A. (en_US.ISO8859-15)
          7. Go Back to Previous Screen
    Please make a choice (0 - 9), or press h or ? for help:
    
    What type of terminal are you using?
          1) ANSI Standard CRT
          2) DEC VT52
          3) DEC VT100
          4) Heathkit 19
          5) Lear Siegler ADM31
          6) PC Console
          7) Sun Command Tool
          8) Sun Workstation
          9) Televideo 910
          10) Televideo 925
          11) Wyse Model 50
          12) X Terminal Emulator (xterms)
          13) CDE Terminal Emulator (dtterm)
          14) Other
    Type the number of your choice and press Return:
    13
    .
    .
    .

    応答する必要のある質問の全一覧については、「ゾーンの内部構成」を参照してください。

  5. (省略可能) 手順 3 で説明した 2 つのウィンドウを使用していない場合、構成情報の指定を求める初期メッセージが表示されない可能性があります。ゾーンへのログイン時に、構成情報の指定を求めるメッセージの代わりに、次のシステムメッセージが表示される場合があります。


    [connected to zone zonename console]

    この場合は、Return キーを押すと構成情報の指定を求めるメッセージが表示されます。

    不正な情報を指定したために構成をやり直す場合、うまく再指定できない場合があります。原因は、sysidtools により以前の指定が保存されていることが考えられます。

    この問題が発生した場合は、大域ゾーンから次の回避手順を実行して構成処理を再実行してください。


    global# zlogin -S zonename /usr/sbin/sys-unconfig
    

    sys-unconfig コマンドの詳細は、sys-unconfig(1m) のマニュアルページを参照してください。

Procedure/etc/sysidcfg ファイルを使用して初期ゾーン構成を行う方法

Solaris 10 8/07: キーワード nfs4_domain が追加されました。例のファイルにはこのキーワードが示されています。次の手順 4 は、これより前のリリースを実行している場合の追加手順です。

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

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

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

  2. 大域ゾーンから、非大域ゾーンの /etc ディレクトリに移動します。


    global# cd /export/home/my-zone/root/etc
    
  3. sysidcfg ファイルを作成して、このディレクトリに配置します。

    ファイルには、次のような情報が記載されています。

    • 共有 IP ゾーンの場合:


      system_locale=C
      terminal=dtterm
      network_interface=primary {
      	        hostname=my-zone
      }
      security_policy=NONE
      name_service=NIS {
      	        domain_name=special.example.com
      	        name_server=bird(192.168.112.3)
      }
      nfs4_domain=domain.com
      timezone=US/Central
      root_password=m4qtoWN
    • 静的 IP 構成を使用する排他的 IP ゾーンの場合:


      system_locale=C
      terminal=dtterm
      network_interface=primary {
               hostname=my-zone
               default_route=10.10.10.1
               ip_address=10.10.10.13
               netmask=255.255.255.0
      }
      nfs4_domain=domain.com
      timezone=US/Central
      root_password=m4qtoWN
    • DHCP と IPv6 オプションを使用する排他的 IP ゾーンの場合:


      system_locale=C
      terminal=dtterm
      network_interface=primary {
      	        dhcp protocol_ipv6=yes
      }
      security_policy=NONE
      name_service=DNS {
               domain_name=example.net
               name_server=192.168.224.11,192.168.224.33
      }
      nfs4_domain=domain.com
      timezone=US/Central
      root_password=m4qtoWN
  4. Solaris 10 8/07 より前のリリースを実行している場合、キーワード nfs4_domainsysidcfg ファイルに含まれていません。デフォルトでは、別個のモジュールが nfsmapid コマンドの使用する NFSv4 ドメインパラメータを要求します。自動初期ゾーン構成を完了するには、default/nfs ファイルを編集して NFSMAPID_DOMAIN パラメータをコメント解除し、ドメインを適切な NFSv4 ドメインに設定します。


    global# vi default/nfs
    		.
    		.
    		.
    		NFSMAPID_DOMAIN=domain
    

    このディレクトリに .NFS4inst_state.domain ファイルを作成して、NFSv4 ドメインが設定済みであることを示します。


    global# touch .NFS4inst_state.domain
    

    NFSv4 ドメインパラメータについては、nfsmapid(1M) のマニュアルページを参照してください。

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

参照

詳細は、sysidcfg(4) のマニュアルページを参照してください。

ゾーンへのログイン

zlogin コマンドを使用して、大域ゾーンから稼働状態または準備完了状態にある任意のゾーンへログインします。詳細は、zlogin(1) のマニュアルページを参照してください。

次の手順に示すように、ゾーンへのログインはさまざまな方法で実行できます。「リモートログイン」で説明されているように、リモートでログインすることも可能です。

Procedureゾーンコンソールへのログイン方法

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

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

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

  2. zlogin コマンドを -C オプションと my-zone などのゾーン名とともに使用します。


    global# zlogin -C my-zone
    

    注 –

    zoneadm boot コマンドの実行後、すぐに zlogin セッションを開始すると、ゾーンからのブートメッセージが表示されます。


    SunOS Release 5.10 Version Generic 64-bit
    Copyright 1983-2005 Sun Microsystems, Inc. All rights reserved.
    Use is subject to license terms.
    starting rpc services: rpcbind done.
    syslog service starting.
    The system is ready.

  3. ゾーンコンソールが表示されたら、root でログインし、Return キーを押します。プロンプトが表示されたら root のパスワードを入力します。


    my-zone console login: root
    Password:

Procedure対話型モードを使用してゾーンにアクセスする方法

対話型モードでは、ゾーン内部で使用する新しい仮想端末が割り当てられます。

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

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

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

  2. 大域ゾーンからゾーン (例: my-zone) にログインします。


    global# zlogin my-zone
    

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


    [Connected to zone 'my-zone' pts/2]
    Last login: Wed Jul  3 16:25:00 on console
    Sun Microsystems Inc. SunOS 5.10 Generic June 2004
  3. exit と入力して、接続を閉じます。

    次のようなメッセージが表示されます。


    [Connection to zone 'my-zone' pts/2 closed]

Procedure非対話型モードを使用してゾーンにアクセスする方法

ゾーン内部で実行されるコマンドを指定すると、非対話型モードが有効になります。非対話型モードでは、新しい仮想端末は割り当てられません。

コマンドおよびコマンドの処理対象のファイルは、いずれも NFS 上に存在してはならないことに注意してください。

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

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

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

  2. 大域ゾーンから my-zone ゾーンにログインして、コマンド名を入力します。

    ここではコマンド zonename を使用します。


    global# zlogin my-zone zonename
    

    次の出力が表示されます。


    my-zone

Procedure非大域ゾーンから抜ける方法

  1. 非大域ゾーンへの接続を切り離すには、次のいずれかの方法を使用します。

    • ゾーンの非仮想コンソールを終了するには、次の操作を行います。


      zonename# exit
      
    • ゾーンの仮想コンソールへの接続を切り離すには、次のようにチルダ (~) 文字とピリオドを使用します。


      zonename# ~.
      

      画面には、次のようなメッセージが表示されます。


      [Connection to zone 'lx-zone' pts/6 closed]
参照

zlogin コマンドのオプションの詳細については、zlogin(1) のマニュアルページを参照してください。

Procedureフェイルセーフモードを使用してゾーンに入る方法

ゾーンへの接続が拒否された場合、zlogin コマンドと -S オプションを使用して、ゾーン内の最小環境に入ることができます。

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

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

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

  2. 大域ゾーンから、zlogin コマンドと -S オプションを使用してゾーン (例: my-zone) にアクセスします。


    global# zlogin -S my-zone
    

Procedurezlogin を使用してゾーンを停止処理する方法


注 –

大域ゾーンで init 0 を実行して Solaris システムの完全な停止処理を実行すると、システム内のそれぞれの非大域ゾーンでも init 0 が実行されます。init 0 は、ローカルユーザーとリモートユーザーに対してシステムが停止する前にログオフするよう警告しないので、注意してください。


ゾーンを正しく停止処理するには、次の手順を実行します。停止処理スクリプトを実行せずにゾーンを停止する方法については、「ゾーンの停止方法」を参照してください。

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

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

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

  2. 停止処理を行うゾーン (例: my-zone) にログインし、ユーティリティーの名前として shutdown を、状態として init 0 を指定します。


    global# zlogin my-zone shutdown -y -g0 -i 0
    

    サイトによっては、特定の環境に合わせた独自の停止処理スクリプトが存在する場合もあります。

非対話型モードでの shutdown の使用

現時点では、非対話型モードで shutdown コマンドを使って、ゾーンをシングルユーザー状態にすることはできません。詳細は、CR 6214427 を参照してください。

「対話型モードを使用してゾーンにアクセスする方法」の説明に従って、対話型ログインを使用できます。

非大域ゾーンの別のネットワークサービス構成への切り替え

このゾーンは、『Solaris のシステム管理 (基本編)』の第 19 章「サービスの管理 (手順)」に説明されているオープンなネットワーク構成でインストールされています。このゾーンを制限されたネットワーク構成に切り替えることも、ゾーン内の個別のサービスを有効または無効にすることもできます。

Procedureゾーンを制限されたネットワークサービス構成に切り替える方法

  1. 大域ゾーンからゾーン (例: my-zone) にログインします。


    global# zlogin my-zone
    
  2. netservices コマンドを実行して、ゾーンを制限されたネットワーク構成に切り替えます。


    my-zone# /usr/sbin/netservices limited
    

    次のような情報が表示されます。プロンプトに y と入力して、dtlogin を再起動します。


    restarting syslogd
    restarting sendmail
    dtlogin needs to be restarted. Restart now? [Y] y
    restarting dtlogin

Procedureゾーン内で特定のサービスを有効にする方法

  1. 大域ゾーンからゾーン (例: my-zone) にログインします。


    global# zlogin my-zone
    
  2. svcadm コマンドを実行して、資源上限デーモンを使用した物理メモリー制御を有効にします。


    my-zone# svcadm enable svc:/system/rcap:default
    
  3. サービスの一覧を表示して、rcapd が有効になっていることを確認します。


    my-zone# svcs -a
    .
    .
    .
    online    14:04:21 svc:/system/rcap:default
    .
    .
    .
    

現在のゾーンの名前を出力する

zonename(1) のマニュアルページに説明されているように、zonename コマンドにより現在のゾーンの名前が出力されます。次に、大域ゾーン内で zonename を使用した場合の出力例を示します。


# zonename
global