1Z0-820_サンプル問題

Oracle Solaris 11 System Administrator (1Z0-820)サンプル問題

問題1:

リモートからのログ・メッセージをsyslogdデーモンが受け入れていないことがわかりました。リモート・ログをsyslogdデーモンに受け取らせることできる方法を1つ選択してください。

1.     syslogd-tオプションをつけて実行されるように起動のスクリプトを修正する。

2.     system-logサービスのconfig/log_from_remoteプロパティにtrueを設定して、再構成・再起動する。

3.     /etc/syslog.confファイルにLOG_FROM_REMOTE=YESというエントリを追加して、system-logサービスを再起動する。

4.     svcadmコマンドに-rオプションをつけてsystem-logサービスを有効にする。

 

正解:2

解説:

1.     起動スクリプトの修正は推奨されませんが、リモート・ログを有効にするのであれば-Tオプションを指定します。

2.     正解です。

3.     /etc/syslog.confではなく/etc/default/syslogdファイルにLOG_FROM_REMOTE=YESのエントリを追加して再起動します。

4.     svcadmコマンドの-rオプションは、指定したサービスが依存しているサービスも同時に有効にするもので、リモート・ログとは関係ありません。

 

Oracle Solaris 11 への移行

問題2:
以下の機能やコマンドのうちSolaris11でも利用可能なものはどれですか?3つ選択してください1  

1.     Solaris Volume Manager (SVM)メタデバイスからの起動

2.     JumpStartインストール

3.     patchaddコマンド

4.     Service Management Facility (SMF)

5.     Fault Management Architecture (FMA)

6.     Solaris 8/9 Container (Legacy Container)lxブランドゾーン

7.     rootログイン

 

正解:4, 5, 7

解説:

1.     Solaris11からはZFSブートのみでSVMメタデバイスからの起動はサポートされていません。UFSファイルシステムからの起動もサポートされていません。

2.     Solaris10まで使用されていたJumpStartインストールはSolaris11からは自動インストール(AI)に変更されました。

3.     パッケージ管理方法がIPS(Image Packaging System)に変更されたことにより、patchaddコマンドは廃止されました。ただし、SVR4パッケージはpkgaddコマンド等で継続して利用することは可能です。

4.     正解です。Solaris10から導入されたSMFSolaris11でも強化され利用されています。

5.     正解です。Solaris10から導入されたFMASolaris11でも強化され利用されています。

6.     Solaris10SPARC環境でサポートされていたLegacy ContainerSolaris11ではサポートされていません。Solaris11ではSPARC/x86環境ともにSolaris10を動作させるsolaris10ブランドゾーンをサポートしています。

7.     正解です。Solaris11ではデフォルト設定でrootは役割(ロール)扱いになっているため直接ログインは禁止されますが、rolemod -K type=normal rootで通常のアカウントに戻すことが可能です。

 

問題3:

Solaris11でサポートされなくなったハードウェアはどれですか?2つ選択してください。

1.     Ultra 45 workstation

2.     32ビットSPARC/x86ハードウェア全般

3.     SPARC Enterprise Mシリーズサーバー全般

4.     Sun Netraシリーズサーバー全般

5.     Sun Fireシリーズサーバー全般

 

正解:1, 2

解説:

Solaris11では64ビットCPUのみのサポートになります。また、SPARCシステムであってもTシリーズサーバー、Mシリーズサーバーのみのサポートとなります。Sun NetraシリーズやSun FireシリーズにもTシリーズサーバーが含まれますので正解は12のみになります。

 

Oracle Solaris 11 オペレーティング・システムのインストール

問題4:

Oracle Solaris 11で用意されている様々なインストーラについて正しい説明を3つ選択してください。

 

1.     LiveメディアによるインストールはSPARCシステムのみサポートされている

2.     Liveメディアによるインストールではネットワークの構成の自動/手動を選択できる

3.     Liveメディアによるインストールではインストールするソフトウェアパッケージは選べないがデスクトップベースのパッケージ(ブラウザや各種デスクトップツール)は標準でインストールされる

4.     Liveメディアによるインストールでは管理ユーザーの作成が必須でインストール直後はrootで直接ログインすることはできない

5.     テキストインストーラと自動インストーラ(AI)x86SPARC用で分けられておらず、共通のメディアを使用できる

6.     テキストインストーラと自動インストーラ(AI)ではrootを役割にせずにインストールすることができる

 

正解:3,4,6

解説:

1.     LiveメディアによるインストールはSPARCシステムのみサポートされている

2.     Liveメディアによるインストールではネットワークの構成の自動/手動を選択できる

3.     Liveメディアによるインストールではインストールするソフトウェアパッケージは選べないがデスクトップベースのパッケージ(ブラウザや各種デスクトップツール)は標準でインストールされる

4.     Liveメディアによるインストールでは管理ユーザーの作成が必須でインストール直後はrootで直接ログインすることはできない

5.     テキストインストーラと自動インストーラ(AI)x86SPARC用で分けられておらず、共通のメディアを使用できる

6.     テキストインストーラと自動インストーラ(AI)ではrootを役割にせずにインストールすることができる

問題5:

自動インストーラ(AI)についての正しい説明を3つ選択してください。

 

1.     AIサーバーとなるシステムにinstall/installadmパッケージをインストールする必要がある

2.     AIサーバーではpkg/serverサービスを稼働させる必要がある

3.     AIによるインストールではDHCPサーバーが必要になる

4.     AIクライアントとAIサーバーのアーキテクチャ(SPARC, x86)は揃える必要がある

5.     様々なバージョンのSolaris11をインストールする際に、クライアントのアーキテクチャ(SPARC, x86)ごと、インストールしたいOSのバージョンごとにインストールサービスを用意する必要はない

6.     インストールするOSのバージョンはシステム構成(SC)プロファイルで指定できる

7.     クライアントのAIインストール時に非大域ゾーンのインストールや構成も自動化できる

 

正解:1,3,7

解説:

1.     正解です。通常のインストールのデフォルトではinstalladmコマンドやinstall/serverサービスは存在しません。

2.     pkg/serverIPSリポジトリサーバーに必要なサービスです。AIサーバーと同一マシンをIPSリポジトリにすることは可能ですが、AIサーバーに必須ではありません。AIサーバーではinstall/serverサービスを稼働させる必要があります。install/serverサービスは指定されたインストールサービスとインストールイメージの関連付けを行います。AIクライアントにインストールイメージを紐づけるためにサービス名を使用します。1つのサーバーにinstall/serverサービス・インスタンスを複数持たせ、それぞれ別の起動イメージに関連付けることもできます。

3.     正解です。installadmコマンドによりAIサーバーの構成と同時にDHCPサーバーとして構成することができます。そうしない場合は外部のDHCPサーバーを利用する必要があります。

4.     クライアントとサーバーのアーキテクチャを揃える必要はありません。AIサーバーはSPARC/x86システムのどちらにでも構成でき、クライアントのアーキテクチャに応じたサービスをそれぞれ作成しておけば、SPARC/x86のクライアントシステムにAIインストールが可能です。

5.     少なくともクライアントのアーキテクチャ(SPARC用、x86用)でインストールサービスを分ける必要があります。また、起動可能なOSのバージョンが異なるサーバーが混在している場合は、OSのバージョンごとにAIイメージを用意してインストールサービスを構成しておく必要があります。

6.     OSのバージョンはAIマニフェストで指定します。「AIマニフェスト」では、OSのバージョン、インストール対象のパッケージ、IPSリポジトリ(デフォルトのリポジトリ:http://pkg.oracle.com/solaris/release)、ディスク構成などを指定することができます。「SCプロファイル」では、rootパスワード、ネットワーク構成、タイムゾーン、キーボード、ネームサービスなどを指定することができます。「条件ファイル」はMACアドレスなどでクライアントを識別するために使用されます。

7.     正解です。installadm list -m -p -n sparc_s11_1111の結果でzonenameの条件などで判断できます。

問題6:

AIマニフェストやシステム構成プロファイル(SCプロファイル)、条件ファイルについての正しい説明を3つ選択してください。

 

1.     クライアントが指定した条件に一致しなかったり、指定がない場合、デフォルトのマニフェストが使用される。ただし、デフォルトのマニフェストはシステムで決められてdefault.xmlから変更することはできない。

2.     1つのクライアントに対して指定できるAIマニフェストは1つで、複数設定することはできない。ただし、SCプロファイルは複数設定することができる。

3.     AIマニフェスト内のconfigurationタグでzonecfg構成ファイル(export形式)を指定することで、ゾーン構成を含むクライアントをインストールすることができる。

4.     SCプロファイルを指定しなければインストール直後の最初のブート時にsysconfigが対話的に起動する

5.     SCプロファイルはinstalladm create-profileコマンドで作成する

6.     AIの条件ファイルはJumpStartインストールのrulesファイルに相当し、AISCプロファイルはJumpStartインストールのbeginprofileファイル(classファイル)に相当する

7.     js2aiコマンドはJumpStart用のrulesprofileファイルをもとにAIマニフェストやSCプロファイルを作成するための変換ツールで、JumpStart用の設定ファイルの全てのエントリをAIマニフェストやSCプロファイル、条件ファイルなどに変換できる。

正解:2, 3, 4

解説:

1.     サービスごとにデフォルトのAIマニフェストは決まっており、特に変更をしなければdefault.xmlというファイルが使用されます。ただし、installadm create-manifestサブコマンドの-dオプションで任意のAIマニフェストをデフォルトとして指定することが可能です。なお、不正なカスタム・マニフェストを指定した場合はデフォルトのマニフェストが使用されることはなくエラーになります。

2.     正解です。1つのAIマニフェストを複数のクライアントで使いまわすことは可能です。SCプロファイルは1つで指定することが一般的ですが、構成を分割して複数指定することも可能です。

3.     正解です。作成するゾーンに対するAIマニフェストやSCプロファイルも別途必要になります。

4.     正解です。SCプロファイルで設定できることを最初の起動時に対話的に設定することになります。

5.     sysconfig create-profileで作成することができます。installadm create-profileは作成済みのSCプロファイルを条件(-c)や条件ファイル(-C)を指定してクライアントに紐づけるコマンドです。

6.     AIの条件ファイルはJumpStartrulesファイルに相当しますが、SCプロファイルはJumpStartfinishスクリプトやsysidcfgファイルに相当します。JumpStartbeginprofileファイルに相当するのはAIマニフェストです。ちなみにJumpStartsetup_install_serverスクリプトに相当するのが、installadm create-serviceコマンドです。

7.     js2aiコマンドはJumpStart用の構成ファイルをAI用に変換するツールですが、全ての構成を変換できるわけではありません。js2aiでサポートされていないキーワードはsysidcfgファイルの場合、name_serviceNIS+network_interfacePRIMARYなどで、rulesファイルの場合、disksizehostnameなどが挙げられます。(詳細はjs2aiのマニュアルを参照してください)

問題7:
Solaris11のディストリビューション・コンストラクタ機能の説明のうち正しいものを3つ選択してください。

1.     スクリプトを使用してカスタムISOイメージを作成することができる

2.     IPSサーバーへのアクセスは必須ではない

3.     ローカルIPSサーバーの利用はできず、オラクル社が提供している公開IPSリポジトリやサポートIPSリポジトリを使用する

4.     distribution-constructorパッケージをインストールする必要がある

5.     distro_constコマンドを実行するホストのアーキテクチャとは関係なく、SPARC/x86のどちらのISOイメージでも作成できる

6.     チェックポイントでイメージの作成処理を一時停止および再開できる。一時停止中にイメージの状態を確認したり、バグの有無を確認できる。

 

正解:1,4,6

解説:

1.     正解です。

2.     IPSサーバーへのアクセスは必須です。

3.     ローカルに作成したIPSサーバーの利用も可能です。

4.     正解です。

5.     distro_constコマンドを実行するホストと同じアーキテクチャ(x86/SPARC)用のISOイメージしか作成できません。

6.     正解です。

 

Oracle Solaris 11 におけるソフトウェア・パッケージの管理

問題8:

Image Packaging System (IPS)についての正しい説明を3つ選択してください。

1.     IPSリポジトリとはソフトウェアパッケージの集まりでリポジトリ内のすべてのパッケージはカタログに含まれる。

2.     IPSリポジトリは各組織でローカルネットワーク内に作成する必要がある。

3.     IPSイメージとはパッケージをインストールできる場所(ディレクトリツリー)のことで、完全なシステムを提供できるフルイメージ、フルイメージ(親イメージ)にリンクされる部分イメージなどがある。また、必要に応じて様々な場所にマウントすることができる。

4.     OSの更新はパッチという形式でリポジトリに公開される。

5.     デフォルトではリブートを必要とするパッケージ操作の場合は、新しいブート環境(BE)が作成され、次のブート時にアクティブになるように設定される。

6.     IPSリポジトリには起点(origin)とミラーという概念があり、物理的なレイアウトを最適化することによりパッケージ操作を高速化することができ、起点となるサーバーの障害に対して冗長性を提供することができる。

7.     クライアントからのIPSリポジトリへのアクセス手段はHTTPもしくはHTTPSのみがサポートされている。

 

正解: 1,3,5

解説:

1.     その通りです。

2.     デフォルトのIPSリポジトリはsolarisパブリッシャー(発行元)としてhttp://pkg.oracle.com/solaris/release/に設定されており、インターネットにアクセスできる環境であればローカルに作成する必要はありません。

3.     その通りです。

4.     Solaris11ではパッチという概念はなくなり、すべての更新はパッケージとしてリポジトリに公開されています。

5.     その通りです。この動きはpkg propertyの出力のbe-policyの値で確認することが可能です。defaultとなっている場合はcreate-backupと同じになります。always-newはもっとも厳格ですべてのパッケージ操作で新しいBEを作成します。また、pkg install --be-name newBE  pkg_name be-policyにかかわらず新しいBEを作成して、そのBEにパッケージをインストールすることもできます。詳しくはpkgコマンドのマニュアルを参考にしてください。

6.     ミラーによりパッケージ操作の高速化は提供されますが、メタデータの取得には起点が必要になりますので、障害に対する冗長性は提供されません。起点は、パッケージのメタデータ (カタログ、マニフェスト、検索インデックスなど) とパッケージの内容 (ファイル) の両方を含むパッケージリポジトリのことです。ミラーは、パッケージの内容のみを含むパッケージリポジトリのことです。

7.     IPSサーバー側でローカルリポジトリをNFSでシェアしておけば、クライアント側はpkg set-publisherコマンドで起点をNFSマウントしたディレクトリに設定することもできます。また、リポジトリがローカルファイルシステム内に用意されている場合も同様です。

問題9:

更新可能なパッケージを表示できるコマンドはどれですか。正しいものを2つ選択してください。

1.     pkg list -u

2.     pkg revert

3.     pkg verify

4.     pkg info -r

5.     pkg set-publisher -g '*'

6.     pkg update -nv '*'

7.     pkg search –u

 

正解:1,6

解説:

1.     正解です。-uオプションは更新可能なパッケージを表示します。

2.     pkg revert file_nameにより個別ファイルを復元でき、提供時の状態に戻すことができます。また、似たような目的で使用できるpkg fix pkg_name コマンドは、pkg verifyで報告されるエラーをパッケージ単位ですべて修正できます。

3.     pkg verify pkg_name によりインストールされているパッケージを検証し、内容の更新、所有者やパーミッションの変更の有無を確認できます。

4.     pkg info -r pkg_name によりシステムにインストールされていないパッケージ情報を表示することができます。

5.     pkg set-publisher -G '*' -g http://example.com/repo  solaris solarisパブリッシャの既存のoriginリポジトリを削除して新しいものを追加することができます。-Gオプションで削除するリポジトリ、-gオプションで追加するリポジトリを指定します。

6.     正解です。すべてのパッケージに対してドライラン(-n)で詳細を表示(-v)しながらアップデート操作を検証していますので、更新可能なパッケージが表示されます。

7.     search サブコマンドに-uオプションは無効なので構文エラーです。pkg search stringsはパッケージの検索で使用できます。strings部分にコマンド名やファイル名を指定することで、現在設定されているパブリッシャから対応するパッケージを検索可能です。

問題10:

ローカル・ホストをIPSパッケージのローカル・リポジトリとして設定します。ローカル・リポジトリの格納場所は/export/IPSにし、既にZFSでファイルシステムが作成されています。また、現在の発行元(パブリッシャ)がデフォルトのhttp://pkg.oracle.com/solaris/release/で、これを新しいhttp://s11-serv1.mydomain.comに変更すると仮定します。発行元の名前はsolarisです。この状況下で実行すべき作業として間違っているもの3つ選択してください。

1.     IPSのフル・リポジトリイメージISOファイルをマウントして、ファイルをrsync/export/IPSにコピーする

2.     svccfgコマンドを使用してpkg/serverサービスのpkg/inst_rootプロパティの値を/export/IPS/repoに、pkg/readonlyプロパティの値をfalseに設定する

3.     svcadm refresh pkg/serverでサービスを更新する

4.     svcadm enable pkg/serverでサービスを有効にする

5.     pkg set-publisher -P solarisで発行元の優先順位を変更する

6.     pkg set-publisher -G '*' -g http://s11-serv1.mydomain.com  solaris を実行する

7.     pkg set-publisher -g http://pkg.oracle.com/solaris/releaes -G http://s11-serv1.mydomain.com  solaris を実行する

 

正解:2,5,7

解説:

1.     分割イメージをダウンロードしてcatコマンドでフル・リポジトリイメージISOを作成します。その他にもpkgrecvコマンドで公開リポジトリからそのままコピーして作成する方法もあります。詳細はpkgrecvのマニュアルを参照してください。

2.     正解です。公開用パッケージデータの準備ができている場合はpkg/readonlytrueに設定すべきで、外部からpkgsendコマンドなどで更新できないようにするのが一般的です。運用中に新しいパッケージを送信・公開する場合は逆にpkg/readonlyfalseに変更します。

3.     変更したプロパティをサービスに反映するために必要な操作です。

4.     ローカル・ホストがIPSリポジトリ・サーバーになるために必要な操作です。

5.     正解です。発行元の場所(URI)の切り替えに発行元同士の優先順位の変更は関係ありません。

6.     -G で削除する起点(Origin)を指定、-g で追加する起点を指定することで発行元の起点を切り替えることができます。-G '*' で指定した発行元のすべての起点を削除できます。

7.     正解です。-g -Gの使い方が逆です。

問題11:

以下のコマンド出力の説明のうち正しいものを3つ選択してください。

# beadm list

BE        Active Mountpoint Space   Policy Created

--        ------ ---------- -----   ------ -------

solaris   !R     -          5.78M   static 2013-02-22 01:31

solaris-1 NR     /          495.55M static 2013-02-22 01:50

 

1.     solaris はブート不可能なBEである

2.     solaris BEを削除することができる

3.     solaris BEのスナップショットを作成できる

4.     現在アクティブなBEsolaris-1 である

5.     solaris BEの名前を変更することができる

6.     solaris-1 BEは再起動後もアクティブになるように設定されている

7.     solaris BEのバックアップは存在しない

 

正解:1,4,6

解説:

1.     正解です。Active列に”!”が表示されるのは入れ子のBEを表しており、非大域ゾーン内のBEによく見られます。また、"!"がついたBE-eオプションで新規BEの作成元イメージとして指定することもできません。

2.     "!"がついたブート不可能な入れ子のBEは削除できません。

3.     "!"がついたブート不可能な入れ子のBEのスナップショットの作成はできません。

4.     正解です。Active列に"N"があるためです。

5.     "!"がついたブート不可能な入れ子のBEの名前変更はできません。

6.     正解です。Active列に"NR"があるためです。

7.     beadm list -a を実行しないとBEのバックアップ=スナップショットは表示されないため、これだけでは判断できません。ちなみにバックアップからはそのままブートすることはできず、スナップショットから新しいBEを作成してactivateする必要があります。

問題12:

パッケージが安全であることを保証するために、新しくインストールするパッケージに有効な署名が少なくとも1つ含まれるように強制する手段として正しいものを2つ選択してください。

1.     イメージプロパティのsignature-policyrequire-signaturesに設定する

2.     イメージプロパティのbe-policyalways-signaturesに設定する

3.     発行元(パブリッシャ)プロパティのsignature-policyrequire-signaturesに設定する

4.     発行元プロパティのsignature-policyverifyに設定する

5.     イメージプロパティのbe-policyverify-signaturesに設定する

 

正解:1,3

解説:

1.     正解です。この設定によってイメージに対して署名を強制できます。

2.     これは不正な値です。be-policyに設定できるのはdefaultalways-newcreate-backupwhen-required4つです。

3.     正解です。この設定をした発行元からのパッケージに対して署名を強制できます。

4.     これはデフォルトの設定です。

5.     Bと同様に不正な値です。

 

サービスとプロセスの管理

問題13:

起動時に指定できるSMFマイルストーンのうち正しくないもの2つ選択してください。

1.     none

2.     config

3.     single-user

4.     network

5.     multi-user

6.     multi-user-server

7.     all

 

正解:2,4

解説:

起動時の指定の方法は boot -m milestone=xxxxxで、xxxxx部分に指定できるのはnone, single-user, multi-user, multi-user-server, all5つだけです。 また、従来から利用できるboot -s によるシングルユーザーモードでの起動と boot -m milestone=single-user は同じ動作になります。

x86/64システムのGRUBによる起動でもオプションは同じになります。

起動後はsvcadm milestone xxxxxでランレベルを変更することが可能です。

起動時のトラブルシューティング目的でnone sigle-user multi-user multi-user-server allと段階的に移行して、各段階でのサービスの起動を確認できます。

問題14:

sshサービスに絡む依存関係を調べることができるコマンドのうち正しいものを3つ選択してください。

1.     svcs -d ssh

2.     svcs -D svc:/network/ssh:default

3.     svcs -p ssh

4.     svcadm boot-config ssh

5.     svccfg -s ssh setnotify from-online,to-maintenance mailto:root@localhost

6.     svcs -l ssh

7.     svcprop -p start/exec ssh

 

正解:1,2,6

解説:

1.     正解です。sshサービスが依存するサービスが表示されます。

2.     正解です。ssh サービスに依存するサービスが表示されます。

3.     ssh サービスから起動するプロセスを表示します。

4.     構文として間違いです。ちなみに、boot-configサービスのfastreboot_defaultfastreboot_onpanicプロパティで高速再起動(Fast Reboot)の設定が可能です。デフォルトでは高速再起動はx86で有効、SPARCでは無効に設定されています。高速再起動はGRUBをバイパスして、カーネル内ブートローダーを使用してカーネルをロードすることで再起動処理を高速化します。

5.     これはSMFの通知機能の設定です。これによりsshサービスのステータスがonlineから別に変更された、もしくは別のステータスからmaintenanceに変更された場合、root@localhostにメールで通知が飛ぶようになります。

6.     正解です。出力のdependency部分で依存関係を確認できます。

7.     sshサービスが有効になるときに実行されるプログラムを表示します。

問題15:

現在のシステムではTimeSliderが有効にされています。ユーザーのホームディレクトリが格納されているrpool/export/homeファイルシステムに対して、毎日1回自動的にスナップショットが取得されるようにするにはどのコマンドを使用すればよいですか。1つ選択してください。

1.       zfs set com.sun:auto-snapshot=false rpool/export/home
zfs set com.sun:auto-snaphost:daily=true rpool/export/home

2.      svccfg -s auto-snapshot:frequent setprop zfs/interval=days
svcadm restart auto-snapshot:frequent

3.      svccfg -s auto-snapshot:daily setprop zfs/period=24
svcadm restart auto-snapshot:daily

4.      svccfg -s time-slider setprop snapshot/interval=daily
svcadm restart time-slider

 

正解:1

解説:

1.     正解です。com.sun:auto-snapshotプロパティをfalseに設定して、com.sun:auto-snapshot:dailyプロパティのみをtrueにすることにより毎日の自動スナップショットのみ有効にして、他の頻度の自動スナップショットを停止しています。

2.     auto-snapshot:frequentサービスはデフォルトでzfs/period=15zfs/interval=minutesに設定され15分ごとに自動スナップショットを取得するようになっているため、zfs/interval=daysに設定することは誤りです。

3.     auto-snapshot:dailyサービスはデフォルトでzfs/period=1zfs/interval=daysに設定され1日ごとに自動スナップショットを取得するようになっているため、zfs/period=24に設定することは誤りです。

4.     time-sliderサービスにはsnapshot/intervalというプロパティは存在しないので誤りです。

問題16:

以下のコマンドを実行しました。

priocntl -e -c RT -p 30 -t 20 find / -name test

このコマンドの実行結果の説明のうち正しいものを3つ選択してください。

1.     findコマンドがリアルタイム・クラスで実行される。

2.     findコマンドがタイムシェアリング・クラスで実行される。

3.     findコマンドの優先度(プライオリティ)30に設定される。

4.     find コマンドの優先度は20に設定される。

5.     findコマンドの優先度は130に設定される。

6.     findコマンドのタイムクオンタムが20ミリ秒に設定される。

 

正解:1,5,6

解説:

1.     正解です。-c RTの部分で指定しています。

2.     タイムシェアリング・クラスで実行する場合は-c TSにします。

3.     -pは優先度の指定ですが、RTクラスは優先度100が基準のため合計で130となります。

4.     -t 20は優先度の指定ではなく、タイムクオンタムの指定です。

5.     正解です。-p 30の指定とRTクラスの基準の優先度100を合わせて130となります。

6.     正解です。-t 20 の部分で設定しています。

 

Oracle Solaris 11のストレージの設定と管理

問題17:

Oracle Solaris 11のみで使用できるZFSの新機能を3つ選択してください。

1.     ミラー化されたZFSストレージプールの分割

2.     暗号化機能

3.     重複排除機能

4.     シャドウ・マイグレーション機能

5.     ルートファイルシステムのZFS対応(ZFSブート)

6.     スナップショットの相違点の判別(zfs diff)

 

正解:2,3,4

解説:

1.     ミラー化されたZFSストレージプールの分割はSolaris10 9/10(Update 9)からサポートしています。(zpool split pool newpool)

2.     正解です。encryptionプロパティで設定します。

3.     正解です。dedupプロパティで設定します。

4.     正解です。shadowプロパティで設定します。

5.      ZFSブートはSolaris 10 10/08(Update 6)からサポートしています。

6.     zfs diff Solaris 10 8/11(Update 10)からサポートしています。

問題18:

シャドウ・マイグレーション機能に関する説明のうち間違っているもの3つ選択してください。

1.     shadow-migrationパッケージをデータ移行先と移行元のシステムにインストールしてどちらもshadowdサービスを有効にする。

2.     データの移行が完了していなくても、ユーザーはシャドウ・マイグレーション中のファイルシステムにアクセスすることができる。

3.     データ移行前にソース側(移行元)のファイルシステムを読み取り専用にする。

4.     データ移行中に移行先のシステムを再起動すると移行処理が失敗する。

5.     NFSマウント可能なZFSに対してのみサポートされている。

6.     データ移行の進捗は移行先でshadowstatコマンドを実行することで確認できる。

7.     shadowdサービスのshadow_threadsプロパティを変更して、移行作業のパフォーマンスを調整できる。

 

正解:1,4,5

解説:

1.     間違っています。ソース側(移行元)には特別なパッケージは不要です。ターゲット側(移行先)ではshadowdサービスを有効にします。

2.     その通りです。存在しないデータに対するアクセスがあった場合、優先的に移行処理をすることで、多少の転送待ち時間は発生しますがエラーになりません。

3.     その通りです。

4.     間違っています。データの移行中にシステムを再起動しても、再起動後に移行処理が継続します。

5.     間違っています。UFSファイルシステムもサポートしています。リモート・マシンからの移行の場合はNFSを使用します。

6.     その通りです。

7.     その通りです。

問題19:

あるコマンドの出力が以下のようにあります。ここから読み取れる情報として間違っているものを2つ選択してください。なお、使用しているディスク(c3tXd0)はすべて8GBの容量だと仮定します。

 

  pool: testpool
 state: ONLINE
  scan: none requested
config:

       NAME        STATE     READ WRITE CKSUM
       testpool    ONLINE       0     0     0
         mirror-0  ONLINE       0     0     0
           c3t2d0  ONLINE       0     0     0
           c3t3d0  ONLINE       0     0     0
         mirror-1  ONLINE       0     0     0
           c3t4d0  ONLINE       0     0     0
           c3t5d0  ONLINE       0     0     0

errors: No known data errors

 

1.     testpoolの容量は32GBになる

2.     c3t2d0 EFIのディスクラベルを持つ

3.     testpool4つのディスクからなる2-wayミラー構成である

4.     最上位の仮想デバイスの冗長性が異なっているので、testpoolは推奨された構成ではない

5.     testpool2つのディスク(c3t2d0, c3t3d0)からなる2-wayミラー構成から拡張して作成することができる

6.     testpool2つのディスク(c3t2s0, c3t4d0)からなる非冗長構成のプールから拡張して作成することができる

7.     未使用のディスクc3t6d0があると仮定すると、zpool replaceコマンドを使用してONLINEの状態のまま使用中のc3t5d0のディスクをc3t6d0に置き換えることができる。

 

正解:1,4

解説:

1.     間違っています。2-wayミラー構成なので容量は半分の16GBになります。

2.     ディスクを丸ごとZFSの管理下に置いているのでEFIディスクラベルになります。

3.     各ミラー仮想デバイス(mirror-0, mirror-1)の構成要素となるディスクが2つなので2-wayになります。

4.     間違っています。最上位仮想デバイスは mirror-0 mirror-1であり、それぞれ2-wayなので冗長性は同じです。

5.     zpool  add  testpool  mirror  c3t4d0  c3t5d0 で拡張することが可能です。

6.     zpool  attach  testpool  c3t2d0  c3t3d0;  zpool  attach  testpool  c3t4d0 c3t5d0 で拡張することが可能です。

7.     この操作は可能です。

問題20:

oracleプールにある以下のようなファイルシステムをまとめてbackupプールにバックアップしたいと考えています。

 

NAME                         USED  AVAIL  REFER  MOUNTPOINT

oracle                       120M   856M    35K  /oracle

oracle/archive                31K   856M    31K  /oracle/archive

oracle/datafile              100M   856M   100M  /oracle/datafile

oracle/redolog              20.0M   856M  20.0M  /oracle/redolog

 

使用できるコマンドを2つ選択してください。

 

1.     zfs snapshot -r oracle@test

2.     zfs rollback -r oracle@test

3.     zfs clone oracle@test backup/oracle

4.     zfs send -i oracle@test | zfs receive -Fd backup

5.     zfs send -r oracle | zfs receive -d backup

6.     zfs send -r oracle@test | zfs recv -Fd backup

 

正解:1,6

解説:

1.     正解です。このコマンドでは、oracleファイルシステムと子ファイルシステムのスナップショットをまとめて作成しています。

2.     このコマンドでは、oracle@testスナップショットにロールバックしています。

3.     このコマンドでは、異なるプールにクローンを作成しようとしているのでエラーになります。そもそもクローンはバックアップにはならず、容量を最小限に抑えたファイルシステムのコピーのような扱いになります。

4.     このコマンドでは、エラーになります。send -i オプションはスナップショットの差分を送信するときに使用しますので、スナップショットを2つ指定する必要があります。

5.     このコマンドでは、エラーになります。sendで送信できるのはスナップショットだけです。

6.     正解です。このコマンドでは、再帰的スナップショットを送信して、backupプールで受信しています。-dオプションで送信側の名前を使用してスナップショットを作成し、-Fオプションで既存のbackupファイルシステムで受信できるようにしています。

問題21:

以下のZFSの機能に関する説明のうち正しいものを2つ選択してください。

 

1.     zfs diff によりスナップショットと子孫データセットとの差異の概要情報を取得可能である。差異の情報は、ファイルやディレクトリなどの追加・削除・更新のみで名前変更は判別できない。また子孫データセットはスナップショットと現在のデータセットのどちらも指定できる。

2.     ZFSファイルシステムのdedupプロパティをonにすることにより、対象となるファイルシステムに重複データが含まれている場合は直ちにファイルシステムの使用容量が削減される。

3.     以下の設定は矛盾しているためエラーになる。
# zfs set quota=800M testpool/data
# zfs set reservation=1G testpool/data

4.     quotaプロパティによる割り当て制限は、対象となるデータセットとその子孫も含めて容量を制限するが、reservationプロパティによる予約は対象となるデータセット用の容量の予約となり、子孫で使用される容量は含まれない。

5.     以下のように親ファイルシステム(testpool/db)をマウントせずに、子孫のファイルシステム(testpool/db/oracle)をマウントしても/db/oracleディレクトリにアクセスすることはできる。
# zfs list -r testpool
NAME                USED  AVAIL  REFER  MOUNTPOINT
testpool            186K   976M    31K  /testpool
testpool/db          62K   976M    31K  none
testpool/db/oracle   31K   976M    31K  /db/oracle

正解:3,5

解説:

1.     名前変更も判別できます。(+:追加、-:削除、M:変更、R:名前変更)

2.     dedupプロパティを設定しても既存データの重複排除は行われません。dedupプロパティはファイルシステムごとに設定しますが重複排除はプールレベルで行われるため、重複排除率はzpoolコマンドで確認します。

3.     正解です。割り当て制限(quota)を超える予約(reservation)は設定できません。ただし、プールサイズを超える割り当て制限は設定可能です。

4.     reservationプロパティによる予約も子孫も含めて計算されます。子孫を含めない場合はrefreservationプロパティを使用します。同様に子孫を含めない割当て制限としてrefquotaプロパティも存在します。

5.     正解です。 mountpointプロパティをnoneに設定しています。マウントポイントのディレクトリを子孫ファイルシステムに継承しつつ、同様に親ファイルシステムをマウントしたくない場合は、mountpointプロパティをnoneにするのではなくcanmountプロパティをoffにします。

問題22:

ZFSの暗号化機能に関する説明のうち間違っているもの2つ選択してください。

 

1.     以下のようなコマンドでファイルシステムレベルで暗号化機能を有効にできる。
# zfs create testpool/enc
# zfs set encryption=on testpool/enc

2.     zpoolのバージョン30以上でサポートされている。

3.     以下のようなコマンドでプールレベルで暗号化機能を有効にできる。
# zpool create -O encryption=on testpool c1t3d0

4.     旧バージョンのSolarisで作成したZFSファイルシステムを暗号化するには、zpoolをアップグレードし、そのzpoolに新しい暗号化ZFSファイルシステムを作成して、既存のデータを移動もしくコピーする必要がある。

5.     ZFSの暗号化機能を使用するためには暗号化用の追加のパッケージをインストールする必要がある。

6.     以下のように鍵ファイルを使用することで、マウント時にパスフレーズを必要としない暗号化ファイルシステムを作成することができる。
# pktool genkey keystore=file outkey=/testkey keytype=aes keylen=256

# zfs create -o encryption=aes-256-gcm -o keysource=raw,file:///testkey testpool/data

 

 

正解:1,5

解説:

1.     間違っています。ZFSの暗号化は作成時にのみサポートされています。既に作成されているファイルシステムにzfs setコマンドでencryptionプロパティを設定することはできません。

2.     その通りです。zpoolのバージョンはzpool upgrade -v で確認可能です。

3.     その通りです。プールレベルで暗号化する場合も、作成時にencryptionプロパティを設定することで可能です。

4.     その通りです。zpoolが暗号化に対応するバージョンにアップグレードしても、既存のファイルシステムを後から暗号化することはできません。

5.     間違っています。ZFSの暗号化はZFSコマンドセットに組み込まれているため、追加のパッケージは不要です。

6.     その通りです。ちなみにpktoolコマンドは一般ユーザーでも使用可能です。

問題23:

COMSTAR(Common Multiprotocol SCSI Target)フレームワークに関連する以下の説明のうち正しいものを2つ選択してください。

 

1.     Solaris 11ホストをSCSIターゲットデバイスに設定することが可能である

2.     stmfサービスやstmfadmコマンドはscsi-target-mode-frameworkパッケージにより提供され、このパッケージはsolaris-large-serverパッケージグループに含まれている。

3.     iSCSIターゲットの管理にはitadmコマンド、iSCSIイニシエータの管理にはiscsiadmコマンドを使用する。

4.     iSCSIを使用することでネットワークを介してリモートの論理ユニットをローカルのディスクデバイスとしてマウントして利用できるが、1つのIPポートに対して1つのiSCSIターゲットデバイスしか対応しない。

 

正解:1,3

解説:

1.     正解です。ファイバ・チャネル(FC)iSCSISRP(IB)など様々な接続形態に対応しています。

2.     このパッケージはstorage-serverパッケージグループに含まれています。

3.     正解です。ターゲットデバイスとなる論理ユニット(LU)の管理はstmfadmで行い、iSCSIターゲットノードの管理はitadmで行います。Solaris10ではiSCSIターゲットノードの管理にはiscsitadmコマンドを使用していました(iscsiadmコマンドと似ているの注意)

4.     1つのIPポートに対して複数のiSCSIターゲットデバイスを紐づけることが可能です。ちなみにSolaris 11 11/11(初期版)ではiSCSIターゲットをダンプデバイスにすることはできません。(Solaris11.1以降は可能です)

 

Oracle Solaris 11のゾーンの管理

問題24:

Solaris11のゾーン機能についての説明のうち正しいものを3つ選んでください。

 

1.     solaris10ブランド・ゾーンを使用することで、既存のSolaris10システムの大域ゾーンと非大域ゾーンをそれぞれSolaris11システムに移行することが可能である。

2.     Solaris11のゾーンは疎ルートモデルのみサポートされている

3.     solaris10ブランド・ゾーンは、移行元のSolaris10システムの全体フラッシュアーカイブを適用することでインストールすることができる。

4.     非大域ゾーン内でもZFSファイルシステムの管理やストレージプールの作成・修正ができる

5.     Solaris11のゾーンはデフォルトでip-typeexclusive(排他IP)に設定される。

6.     非大域ゾーンはNFSサーバーになることはできない

7.     非大域ゾーンのzonepathZFSもしくはUFSファイルシステム上に指定する必要がある。

 

正解: 1,3,5

解説:

1.     正解です。Solaris10に関してはP2VV2V(完全ルート、疎ルート)ともに移行可能です。ただしLegacy Container(Solaris8/9)Solaris11では動かすことはできません。

2.     疎ルートモデルは廃止されました。すべて完全ルートモデルになります。ただし不変ゾーンという考え方が追加されています。(file-mac-profileプロパティで指定します。zonecfgのマニュアルを参照してください。)

3.     正解です。zonecfgで構成後にzoneadm -z s10_zone install -a /s10zone.flar -u などでインストールできます。その他 ufsdumpのフルバックアップやcpioアーカイブ、cpioアーカイブのgzip/bzip2圧縮なども対応しています。あくまでも移行目的なのでDVDISOからプレーンのSolaris10をインストールすることは考えられていません。

4.     非大域ゾーン内でZFSファイルシステムの管理はできますが、ZFSプールを非大域ゾーン内で作成・修正することはできません。ただし、大域ゾーンで作成したZFSファイルシステムをzonecfgadd datasetで非大域ゾーンに渡すことで、非大域ゾーンではZFSプールとして認識されます。ZFSの操作にあたって、追加の権限は不要です。また、非大域ゾーン内でもbeadmコマンドを使用してブート環境(BE)の管理が可能です。

5.     正解です。物理NIC1つしかないシステムでもVNICが自動的に作成されゾーンに割り当てられます。排他IPゾーンであれば、ゾーン内でdladmipadmなどを使用してネットワーク構成、ルーティング構成、IPMP構成などを実行でき、snoopなども可能になります。共有IPゾーンの場合、DHCP構成にすることはできません。

6.     Solaris11から非大域ゾーンをNFSサーバーとして構成可能になりました。(ただし、solaris10ブランドゾーンは不可です。)

7.     UFSはサポートしていません。ただしLegacy Container(Solaris8/9)Solaris11では動かすことはできません。

問題25:

大域ゾーンで、dispadmin -d FSSを実行してデフォルトのスケジューラをFSSに変更後、再起動を完了させています。この状態で、現在稼働しているzone1CPUシェア数を20に設定して、ゾーンの再起動後もその設定が維持されるようにするにはどのようなコマンドを実行すればよいですか。正しいものを3つ選択してください。

1.      zonecfg -z zone1
zonecfg:zone1> add rctl
zonecfg:zone1:rctl> set name=zone.cpu-shares
zonecfg:zone1:rctl> add value(priv=privileged,limit=20,action=none)
zonecfg:zone1:rctl> end
zonecfg:zone1> exit

2.       zonecfg -z zone1
zonecfg:zone1> set cpu-shares=20
zonecfg:zone1> exit

3.      zonecfg -z zone1
zonecfg:zone1> add dedicated-cpu
zonecfg:zone1:dedicated-cpu> set ncpus=20
zonecfg:zone1:dedicated-cpu > end
zonecfg:zone1> exit

4.      zonecfg -z zone1
zonecfg:zone1> add capped-cpu
zonecfg:zone1:capped-cpu> set ncpus=20
zonecfg:zone1:capped-cpu> end
zonecfg:zone1> exit

5.      prctl -n zone.cpu-shares -v 20 -r -i zone zone1

6.      prctl -n capped.cpu-shares -v 20 zone1

7.      rctladm -e syslog=err zone.cpu-shares

 

正解:1,2,5

解説:

1.     正解です。CPUシェア数はrctlリソースのzone.cpu-sharesリソース制御で決定できます。

2.     正解です。rctlリソースのzone.cpu-sharesを設定することと同じです。この設定方法が推奨されています。

3.     dedicated-cpuリソースでは排他的に割り当てるCPUの個数を指定できます。

4.     capped-cpuリソースではゾーンで使用できるCPUの能力の上限を指定できます。

5.     正解です。このコマンドで稼働中のzone1CPUシェア数を動的に変更できます。再起動後は値が引き継がれないため、永続化するにはA)もしくはB)の設定も必要です。

6.     capped.cpu-sharesというリソース制御は存在しません。

7.     rctladmはシステムのリソース制御の大域アクションを設定できます。zone.cpu-sharesリソース制御に関してはsyslogアクションは無効なのでエラーになります。仮に、zone.max-lwpsリソース制御に関して同様に実行した場合、zone.max-lwpsで指定したしきい値に達した場合にerrレベルのメッセージがsyslogに送られるようになります。

問題26:

 

以下のコマンド出力に関する説明のうち正しいものを3つ選択してください。

 

  ID NAME             STATUS     PATH                BRAND    IP
   0 global           running    /                   solaris  shared
   2 zone1            running    /zones/zone1        solaris  excl
   - zone2            incomplete /zones/zone2        solaris  excl
   - zone3            configured /zones/zone3       solaris10 excl

1.     zone2はインストール中の可能性があるが、この状態が長く続くのであれば、いったんアンインストールして再インストールしなければ正常な状態には戻せない。

2.     このコマンド出力はzoneadm list -iv の結果である。

3.     zone3は構成済みなのですぐに起動できる状態である。

4.     zonecfg -z zone3 export によりzone3を別のシステムに移行するためにシステムから切り離すことができる。

5.     zone3 solaris10ブランドゾーンである。

6.     globalゾーンは稼働中なので安全に停止するにはzoneadm -z global shutdown を実行する。

7.     稼働している大域ゾーン(global)zone1CPUや物理メモリの使用状況はzonestat コマンドで確認できる。

 

正解:1,5,7

解説:

1.     正解です。通常incompleteはインストール中、アンインストール中の一時ステータスです。
ちなみにzoneadm -z zone_name mark incomplete で管理上の都合で意図的にincompleteにすることもできます。

2.     configuredステータスのzone3も表示されているため、-cオプションは必要で、zoneadm list -vc の結果であると考えられます。

3.     起動の前にインストール作業が必要です。installedもしくはreadyステータスのゾーンのみが起動可能です。

4.     これはzone3のコマンド形式の構成を表示するコマンドです。-f オプションもしくは出力リダイレクトでファイルに保存すれば、そのファイルを使ってzonecfg -z zone_name -f file_nameで構成をインポートすることにより、素早くゾーンの構成を済ませることもできます。ゾーンの構成情報を見るだけであればzonecfg -z zone3 info が一般的です。

5.     正解です。構成時にcreate -t SYSsolaris10 を指定すると、このようにBRAND列にsolaris10と表示されます。

6.     大域ゾーンであるglobalzoneadmコマンドでは停止しません。通常のshutdowninitコマンドを使用します。非大域ゾーンであれば、zoneadmshutdownサブコマンドで安全に停止することが可能です。他にも zlogin zone1 shutdown -i 0 なども可能です。

7.     正解です。zonestat -R total 2s 30 10s と指定すると2秒ごとに30回、さらに10秒ごとにtotalレポートを出力します。-q オプションを追加すると要約レポートのみ表示することも可能です。-rで個別リソースの指定も可能です。詳しくはzonestatコマンドのマニュアルを参照してください。

 

Oracle Solaris 11のネットワークの管理

問題27:

以下のコマンド出力から読み取れる情報として正しいものを3つ選択してください。

 

# dladm show-phys
LINK              MEDIA                STATE      SPEED  DUPLEX    DEVICE
net1              Ethernet             up         1000   full      e1000g1
net2              Ethernet             up         1000   full      e1000g2
net0              Ethernet             up         1000   full      e1000g0
net3              Ethernet             unknown    0      unknown   e1000g3

# ipadm show-if
IFNAME     CLASS    STATE    ACTIVE OVER
lo0        loopback ok       yes    --
net0       ip       ok       yes    --
net1       ip       down     no     --
net2       ip       down     no     --

# ipadm show-addr
ADDROBJ           TYPE     STATE        ADDR
lo0/v4            static   ok           127.0.0.1/8
net0/v4           static   ok           192.168.0.100/24
net1/v4           static   duplicate    192.168.0.111/24
net2/v4           static   down         192.168.0.102/24
lo0/v6            static   ok           ::1/128
net0/v6           addrconf ok           fe80::a00:27ff:fe11:4a2e/10

 

1.     このシステムではe1000g0e1000g34つのNICが認識されており、それぞれnet0net3というリンク名になっている。

2.     net0net1net2にはIPv4アドレスが設定されているが、どのインターフェースも利用できない状態である。

3.     net0に設定されているIPv4アドレスのネットマスクは255.255.255.0である。

4.     この状態でipadm create-ip net2 と実行するとnet2がアクティブな状態になる。

5.     この状態で ipadm up-addr net1/v4 と実行するとnet1がアクティブな状態になる。

6.     net1/v4に設定されているIPv4アドレスはローカルネットワーク内で重複している可能性がある。

 

正解:1,3,6

解説:

1.     正解です。dladm show-physの結果のLINK列、DEVICE列から判断できます。

2.     net0ipadm show-ifACTIVE列でyesとなっているので利用できます。

3.     正解です。ADDR列の/24から24bitマスク(255.255.255.0)であることがわかります。

4.     net2インタフェースは既に作成されているのでInterface already exist というエラーになります。

5.     net1/v4duplicate 状態なのでupするだけではアクティブにはなりません。net2/v4であればdown状態なのでupするだけでアクティブになります。

6.     正解です。duplicate状態から読み取れます。ローカルネットワーク内であればarpコマンドでアドレスの重複の裏付けを取ることができます。

問題28:

net0net1を使用してリンク集約aggr0を作成しました。リンク集約の構成や各リンクがどのようにロードバランスしているかを確認することができるコマンドを3つ選択してください。

 

1.     dladm show-link

2.     traceroute aggr0

3.     ping -a aggr0

4.     dlstat show-aggr

5.     dladm show-aggr

6.     ifconfig -a

7.     ipmpstat -i

 

正解:1,4,5

解説:

1.     正解です。一般にリンク名の一覧表示目的で使用しますが、リンク集約aggr0のメンバーとなっているリンクの確認も可能です。Solaris11のデフォルトのデータリンク名はnet0net1となっています。

2.     tracerouteコマンドにリンク集約aggr0を指定するのは不正です。ホスト名もしくはIPアドレスを指定することで、そのホストまでの経路を探索することができます。この探索にはICMPが利用されています。

3.     pingコマンドにリンク集約aggr0を指定するのは不正です。ホスト名もしくはIPアドレスを指定することで、そのホストまでのIP接続の可否を確認することができます。この確認にはICMPが利用されています。

4.     正解です。束ねたリンクのそれぞれの利用状況(ロードバランス具合)を確認することができます。また、dlstat show-link -rコマンドで、リンク集約のリンクも含めて統計情報の表示が可能です。-rは受信側の情報のみに限定しています。出力の中のINTRS列は物理NICへの割り込み数を意味し、仮想NICetherstubに関しては常に0になります。

5.     正解です。リンク集約の構成(LACP構成など)を確認できます。

6.     IPインタフェースの構成情報を確認できるレガシーコマンドですが、リンク集約の構成は確認できません。

7.     IPMP構成のインタフェース情報を表示するコマンドです。このコマンドのFLAGS部分の意味(i: アクティブでない、m,M: マルチキャストなど)ipmpstatのマニュアルを参照してください。

問題29:

dladm rename-linkコマンドでデータリンク名を変更しようと思います。リンク名を変更するメリットと新規作成するリンク名の命名規則についての正しい説明を3つ選択してください。

1.     link0_ipmp0などと名前変更することにより、用途(IPMPのメンバー)を明確にできる。

2.     リンク集約の新規作成や構成変更が簡素化される。

3.     物理NICを異なるタイプのものに変更しても、IP フィルターのフィルタリング・ルールやOracle RACなどのアプリケーション構成への影響を最小限にできる。

4.     ipadm delete-addrコマンドでネットワーク・インタフェースの構成を誤って削除することがなくなる。

5.     新しいリンク名は英字で始め、数字で終わらせ、31文字以内にする必要がある。

6.     new_link01というリンク名を設定することができる。

7.     new-link1というリンク名を設定することができる。

 

正解: 1,3,5

解説:

1.     正解です。Solaris 11のデフォルトのリンク名net0net1 ...も実は別名です。Solaris 11 Expressまでは従来のようにNICのドライバ名を踏襲したe1000g0などが使用されていました。ちなみにSolaris 11 ExpressからSolaris 11にアップグレードした場合は従来のNIC名が維持されます。

2.     用途を明確にはできますが、構成変更が簡素化されることはありません。

3.     正解です。データリンク名(IPインタフェース名)を認識するアプリケーションやIPフィルタのルールなどで構成変更をしないで済むことがあります。

4.     リンク名の変更と操作ミスの撲滅には直接的な関係はありません。

5.     正解です。命名規則の詳細はdladmのマニュアルを参照してください。

6.     最後の数字を0で始めてはいけません。new_link0OKです。

7.     使用できる特殊文字は下線「_」とピリオド「.」の2つだけです。new_link1new.link1というリンク名であれば設定できます。

問題30:

IPMPの構成やリンク障害検出プロセスについての間違っている説明を2つ選択してください。

1.     デフォルトの障害検出時間(FDT)10秒で、/etc/default/mpathdファイルに設定がある。

2.     プローブターゲットが存在しない場合、障害の検出は不可能である。

3.     通常、プローブターゲットの決定は、まずルーティングテーブルを参照して、同一ネットワーク上のルーターが採用される。

4.     ルーティングテーブルでルーターがマッチしなかった場合にはマルチキャスト224.0.0.1を使用して同一サブネット上のすべてのマシンからプローブターゲットを決定する。

5.     routeコマンドで静的ルートなどを登録してルーティングテーブルを調整することにより、任意のプローブターゲットに変更することもできる。

6.     IPMPグループを構成するIPインタフェースにテストアドレスを設定しなかった場合でも、IPMPは障害の検知はでき、インタフェースのフェイルオーバーは可能だが、障害復旧の検知はできないため、フェイルバックは自動的には行われない。

7.     IPMPを構成したがテストアドレスを設定していない場合に以下のような状態になる。
# ipadm show-if
IFNAME     CLASS    STATE    ACTIVE OVER
lo0        loopback ok       yes    --
net0       ip       ok       yes    --
net1       ip       ok       yes    --
net2       ip       ok       yes    --
ipmp0      ipmp     ok       yes    net1 net2
# ipmpstat -i
INTERFACE   ACTIVE  GROUP       FLAGS     LINK      PROBE     STATE
net2        yes     ipmp0       -------   up        disabled  ok
net1        yes     ipmp0       --mbM--   up        disabled  ok
# ipmpstat -nt
INTERFACE   MODE       TESTADDR            TARGETS
net2        disabled   --                  --
net1        disabled   --                  --

 

正解:2,6

解説:

1.     その通りです。FAILURE_DETECTION_TIME=10000のエントリがあります。(単位はミリ秒)

2.     間違っています。リンクベースのIPMPで検出可能です。リンクベースのIPMPはデフォルトで有効です。

3.     その通りです。一般的なホストではプローブターゲットはデフォルトルーターになることが多くなります。デフォルトルーターの構成はroute add default 192.168.0.1コマンドや/etc/defaultrouterファイルで行います。

4.     その通りです。ルーティングテーブルに明示的にルーターが登録されていない場合はこの動きになります。

5.     その通りです。ネットワークルートより、ホストルート(32bitマスク)が優先されます。

6.     間違っています。リンクベースのIPMPにより復旧の検知も可能です。

7.     その通りです。ipmpstat -i STATEokPROBEdisableになります。また、ipmpstat -ntMODEdisabledTESTADDR--になります。

問題31:

Solaris11 11/11(初期版)Network Auto-Magic(NWAM)についての正しい説明を3つ選択してください。

 

1.     NWAMの有効/無効はデスクトップ右上のアイコンでも確認ができる。

2.     ネットワーク構成プロファイル(NCP)DefaultFixedに設定することによりNWAMは無効化できる。

3.     /etc/ipadm/ipadm.conf/etc/dladm/datalink.confファイルの設定がNWAMの構成に使用される。

4.     NWAMが有効な場合は、NCPとロケーションプロファイルが1つずつアクティブになる。

5.     リンク集約で使用されているNICの障害を検知して、NWAMにより構成を自動的に変更できる。

6.     IPMPで使用されているNICの障害を検知して、NWAMにより構成を自動的に変更できる。

7.     dladm create-vnicコマンドによる仮想NICの作成は、NWAMによる自動構成のトリガーになる。

 

正解: 1,2,4

解説:

1.     正解です。また、無線LANと有線LANでアイコンも異なります。

2.     正解です。netadm listコマンドやnetwork/physical:defaultサービスのnetcfg/active_ncpプロパティで現在設定されているNCPを確認できます。

3.     Solaris11 11/11版では、NWAMの構成に使用されるファイルは/etc/nwam/*の各種ファイルになります。

4.     正解です。常に1つのアクティブなNCP1つのロケーション(場所)プロファイルが有効になります。

5.     NWAMはリンク集約には対応していません。

6.     NWAMIPMPには対応していません。

7.     NWAMは仮想NICには対応していません。DHCPリースの取得や、WLANカードやEthernetケーブルの抜き差しによるリンクのup/downNWAM自動構成のトリガーになります。

 

Oracle Solaris 11のユーザー管理とセキュリティ

問題32:

ユーザーアカウント、グループ、役割(ロール)についての説明のうち正しいものを3つ選択してください。

1.     ユーザーID(UID) 0999 はシステムに予約されている。

2.     非推奨だがUIDを重複させてユーザーを作成することは可能である。

3.     idコマンドで確認できるグループ情報が、ファイルやディレクトリを作成した場合の、デフォルトのグループ所有権になる。

4.     アカウント名には英数字以外にも「.」「-」「_」の特殊文字の使用が可能。

5.     自分の所属グループは/etc/groupファイルを確認すればすべて把握できる。

6.     groupadd Test を実行すると、正常に実行されTestグループが作成される。

7.     パスワードの最小文字数は/etc/security/policy.confで設定されておりデフォルトで8である。

 

正解:2,3,7

解説:

1.     UID 099がシステムに予約されています。10060000の利用が推奨されていますが60000以降のIDも使用可能です。また、非推奨ですが、useradd -oオプションでUIDを重複させてユーザーを作成することができます。

2.     正解です。idコマンドで表示されるグループが現在のグループです。所属グループをすべて表示するにはid -aを使用します。

3.     正解です。アカウント名のルールはman -s 4 passwd で確認可能です。

4.     /etc/groupファイルのユーザーリスト部分は2次グループの情報です。1次グループ(プライマリグループ)は/etc/passwdにしか登録されていません。デフォルトではプライマリグループ含めて16グループまで所属可能です。

5.     Testグループは作成されますが、すべて小文字にするようにエラーが出ます。

6.     パスワードの最小文字数は/etc/default/passwdで設定されており、デフォルトで6文字です。

7.     正解です。ちなみにusermod -R +root user1というコマンドでuser1root役割を追加できます。+がない場合は既存の役割を指定した役割で置き換えます。

問題33:

カレントディレクトリに以下のようなファイルがあり、test.sh test2.sh test3.sh3つのファイルを~/script ディレクトリにコピーして、それぞれ実行権を付与したいと考えております。以下のうち、目的の結果になるものを2つ選択してください。現在のumask値は0022であると仮定します。

 

-rw-r--r--   1 oracle   oinstall       0  2 25  14:30 script.sh
-rw-r--r--   1 oracle   oinstall       0  2
25  14:27 test.sh
-rw-r--r--   1 oracle   oinstall       0  2
25  14:27 test2.sh
-rw-r--r--   1 oracle   oinstall       0  2
25  14:27 test3.sh

 

1.       cp *.sh ~/script
chmod u+x ~/script/*.sh

2.       chmod u+x test*.sh
cp test*.sh ~/script

3.       cp test*.sh ~/script
chmod u+x ~/script/test*.sh

4.       umask 0011
cp test*.sh ~/script

5.       cp test?.sh ~/script
chmod u+x ~/script/test?.sh

 

正解:2,3

解説:

1.     script.shもコピーされてしまうので不正解です。

2.     正解です。デフォルトのumask値ではコピーしても実行権は削除されないため、先にパーミッションを変更して、コピーしても目的の結果になります。

3.     正解です。目的の結果になります。

4.     umaskでは実行権の付与はできません。umask値には、ファイルの新規作成時やコピー時に与えたくない権限を指定します。スクリプトファイルへの実行権の付与にはchmodコマンドの実行は必要で、viでも保存時に実行権を自動的に与えるオプションはありません。

5.     "?"は任意の1文字を表すため、これではtest.shがコピーされません。

問題34:

ユーザーoraclebashを使用しています。ユーザーの各種環境設定ファイルの説明のうち正しいものを2つ選択してください。

 

1.     /etc/profile$HOME/.profile に同じ環境変数のエントリがあった場合には/etc/profileのエントリが適用される。

2.     /etc/skel/local.profileはユーザーの作成時に自動的に各ユーザーのホームディレクトリにコピーされるため、このファイルに管理者が環境変数の設定などを追記しておくことで、一般ユーザーは何もしなくても自動的にその設定を利用することができる。

3.     /etc/profile $HOME/.profile $HOME/.bashrc の順序で読み込まれるので、同じ環境変数の設定が重なった場合は最後に読み込まれたエントリが適用される。

4.     /etc/profile$HOME/.profileはログイン時に1度だけ、$HOME/.bashrcbash起動のたびに読み込まれる。

 

正解:3,4

1.     後に読み込まれる$HOME/.profileのエントリが適用されます。

2.     local.profileという名前のままコピーされるため、そのままでは読み取られません。ユーザー側で.profileなどに名前変更をして使用します。

3.     その通りです。

4.     その通りです。

問題35:

以下のようなコマンドの実行結果があります。リモートホストのIPアドレスは192.168.0.100であると仮定しています。

 

$ ssh 192.168.0.100
ssh: connect to host 192.168.0.100 port 22: Connection refused

 

この結果の説明として正しいものを1つ選択してください。

1.     リモートホスト(192.168.0.100)の公開鍵が$HOME/.ssh/known_hostsファイルに登録されていない。

2.     ローカルホストの公開鍵がリモートホストの/etc/ssh/known_hostsファイルに登録されていない。

3.     リモートホストでsshのサービスが動作していない可能性がある。

4.     ローカルホストでsshのサービスが適切に構成されていない可能性がある。

5.     ローカルホストの/etc/ssh/sshd_configファイルを修正する必要がある。

 

正解:3

解説:

1.     この場合以下のようなメッセージになります。yesと入力するとknown_hostsファイルにリモートホストの公開鍵(/etc/ssh/*.pub)が登録されます。

-------------------------------------------------------------------------
ホスト '10.190.96.242 (10.190.96.242)' の認証を確立できません.
RSA
鍵フィンガープリントは af:b3:f4:4e:89:e6:34:ee:c2:33:45:9a:5b:ba:cc:48 です
本当に接続を継続してもよろしいですか (yes/no)? yes
警告: 既知ホストのリストに '10.190.96.242' (RSA) を追加しました。

-------------------------------------------------------------------------

2.     /etc/ssh/known_hostsファイルはホスト認証時にクライアントの公開ホスト鍵を登録するときに使用します。

3.     正解です。Connection refusedというメッセージはリモートホスト側でsshdサービスが動作していない場合に表示されます。

4.     ローカルホストのsshサービスはアクセス時には関係ありません。

5.     /etc/ssh/sshd_configファイルはsshサービスの構成ファイルですが、このアクセスにおいて、ローカルのファイルは関係ありません。

問題36:

以下のコマンド出力があります。

$ who am i
root       pts/1         2
25 17:38 (10.185.209.212)
$ id
uid=103(oracle) gid=100(oinstall)
$ ls -ld .
drwxr-x---   2 oracle   oinstall     512  2
25  17:43 .
$ ls -l *.sh
-rwxr-xr-x   1 oracle   oinstall      75  2
25  17:43 script.sh
$ id user1
uid=101(user1) gid=1(other)
$ cd ~user1
$ ls -l *.sh
-rwsr-xr-x   1 user1    other         59  2
25  17:41 test.sh

この結果から読み取ることができる情報として正しいものを3つ選択してください。

 

1.     rootでログインをしてsuコマンドでoracleユーザーに変更している状態である。

2.     oracleユーザーでログインをしてsuコマンドでrootに変更している状態である。

3.     現在のユーザーでtest.shを実行するとtest.shプロセスはuser1の権限で動作する。

4.     現在のユーザーでtest.shを実行しようとしてもこのファイルの所有者でないためエラーになる。

5.     user1ユーザーはscript.shを実行することはできない。

6.     user1ユーザーはscript.shファイルを読み取ることはできる。

 

正解:1,3,5

解説

1.     正解です。who am i は元のログイン情報、whoamiidは現在の権限情報が表示されます。

2.     who am i は元のログイン情報、whoamiidは現在の権限情報が表示されます。

3.     正解です。test.shにはsetuidが設定されているため、誰が実行してもtest.shプロセスはファイルの所有者であるuser1の権限で動作します。chmod 4755 test.shを実行することによりこのパーミッション設定にすることができます。

4.     その他のユーザーにも実行権があるためエラーにはなりません。

5.     正解です。user1にはscript.shの実行権はありますが、親ディレクトリにアクセス権(実行権)がないため、script.shにたどりつくことができず実行することはできません。

6.     Eと同様な理由で読み取りも含めて一切のアクセスができません。

問題37:

以下のBARTルールファイルがあります。
# cat bart_rule1
CHECK all
IGNORE dirmtime

/export/home
IGNORE mtime size contens

/etc/security
/etc/ipadm
/etc/dladm
/etc/nwam
IGNORE mode

/var/tmp
IGNORE all

このルールファイルを使用してbartコマンドを実行したとき、記録される属性の説明のうち正しいものを3つ選択してください。

1.     /etc/security/exec_attr.dディレクトリの uidgidsizedirmtime

2.     /export/home/user1/dir1ディレクトリのuidgidsizecontents

3.     /export/home/user1/.bashrcファイルのuidgidmodeacl

4.     /export/home/user1/.bashrcファイルのuidgidmodedest

5.     /var/adm/messagesファイルのuidgidsizecontents

6.     /var/adm/messagesファイルのuidsizemodedevnode

7.     /etc/hostsファイルのuidgidsizemodelnmtimedest

 

 

正解:3,5,7

解説

1.     グローバル設定でdirmtime属性はIGNOREに設定されているのでdirmtimeは記録されません。

2.     ディレクトリに対してはcontents属性は記録されません。

3.     正解です。

4.     シンボリックリンク以外のファイルにはdest属性は記録されません。

5.     正解です。

6.     devnode属性はキャラクタ型デバイス、もしくはブロック型デバイスファイルにのみ有効です。

7.     正解です。/etc/hostsファイルはシンボリックリンクなので、lnmtimedest属性も記録されます。

問題38:

システムにはtestadminという役割が定義されており、user1がこの役割を担っています。testadmin役割に対してログインやすべてのコマンド実行(引数含む)を監査するように変更するにはどのようなコマンドを実行する必要がありますか。正しいものを3つ選択してください。

1.     auditconfig setpolicy +argv

2.     auditconfig setpolicy +ahlt

3.     rolemod -K audit_flags=lo,ex:no testadmin

4.     usermod -K audit_flags=lo,ex:no testadmin

5.     usermod -K limitpriv=all,\!file_write user1

6.     audit -s

7.     audit -t

 

正解:1,3,6

解説

1.     正解です。監査レコードにコマンドの引数を含めるように監査ポリシーを変更しています。

2.     ahltポリシーは、監査キューが高位境界値に達したか、領域不足などで非同期イベント(プロセスに関連付けられていないイベント)が記録できなくなった場合にマシンを停止します。

3.     正解です。testadmin役割に対してloクラスとexクラスのイベントを監査するように設定しています。

4.     testadminは役割なのでusermodコマンドはエラーになります。

5.     このコマンドはuser1の制限セットからfile_writeという基本的な特権を剥奪しているので、user1はファイルへの書き込みが一切できなくなります。

6.     正解です。このコマンドは監査サービスをスタートします。既に有効になっている場合は構成変更を反映します。

7.     このコマンドは監査サービスを停止します。

 

監視とトラブルシューティング

問題39:

以下のコマンド出力があります。

$ echo $$
18511
$ ps -ef
...(
出力省略)
  oracle 18532 18531   0 10:51:47 pts/1  0:00 sleep 1000
  oracle 18531 18511   0 10:51:47 pts/1  0:00 /bin/bash ./script.sh
  oracle 18511 18419   0 10:50:28 pts/1  0:00 -bash
...(
出力省略)

この結果から読み取ることができる情報として正しいものを3つ選択してください。

1.     kill 18531 と実行することでsleepプロセスにSIGKILLシグナルが送られsleepプロセスを強制終了できる。

2.     pkill sleep と実行することで sleepプロセスを終了することができる。

3.     現在使用しているシェルからscript.shスクリプトが実行されている。

4.     sleep 1000はユーザーが現在使用しているシェルから手入力で実行したコマンドである。

5.     pgrep sleep と実行すると18531というPIDが返される。

6.     pargs -ae 18532 と実行することでsleepプロセスの引数や環境変数の情報を調べることができる。

 

正解:2,3,6

解説:

1.     killコマンドでシグナルを指定しなかった場合にはシグナル15(SIGTERM)が送られ、順序正しく停止します。またPID18531script.shを実行している bashのプロセスなのでsleepは終了しません。

2.     正解です。killコマンドでは プロセスIDを指定、pkill コマンドではプロセス名を指定することでプロセスを終了できます。

3.     正解です。bash(18511)script.sh(18531)sleep(18532)という親子関係が読み取れます。

4.     sleepプロセスはscript.shスクリプト内から呼び出されています。

5.     18531PPID(親プロセスID)sleepPID18532です。

6.     正解です。pargs コマンドのデフォルトは引数(-aオプション)のみの表示ですが、-eで環境変数の情報を取得できます。詳しくはpargsのマニュアルを参照してください。

問題40:

以下のコマンド出力があります。


$
id
uid=103(oracle) gid=100(oinstall)
$
crontab -e
crontab: you are not authorized to use cron.  Sorry.

この結果から読み取ることができる情報として正しいものを2つ選択してください。

1.     crontabコマンドはデフォルトではroot権限でしか実行できない。

2.     /etc/cron.d/cron.denyファイルにoracleがエントリされている可能性がある。

3.     /etc/cron.d/cron.allowファイルが存在しない。

4.     /etc/cron.d/cron.allowファイルが存在して、そのファイルにoracleがエントリされていない可能性がある。

5.     PATH変数にcrontabコマンドが格納されているディレクトリが登録されていない。

 

正解:2,4

解説:

1.     デフォルトでは一般ユーザでもcrontabコマンドの実行は可能です。

2.     正解です。crontabコマンドでcrontabファイル(/var/spool/cron/crontabs/*)の作成・変更を制御するには/etc/cron.d/cron.denycron.allowファイルを使用します。デフォルトではcron.denyファイルのみ存在し、このファイルにエントリされているユーザーのみ禁止されます。cron.allowファイルを作成すると動作が変わり、cron.allowファイルに登録されているユーザーのみが許可されるようになります。どちらのファイルも存在しない場合はroot権限でのみ使用可能になります。

3.     上記仕様のため不正解です。

4.     正解です。上記仕様のためです。

5.     PATH変数にコマンドの格納ディレクトリが登録されていない場合は、"command not found"というエラーになります。

6.     ちなみにログのローテーションはrootcrontabsで実行されているlogadmによって行われています。/var/adm/messagesファイルなどのローテーションがデフォルトで行われています。

問題41:

クラッシュダンプの構成が以下のようになっています。
# dumpadm
      Dump content: kernel pages
       Dump device: /dev/zvol/dsk/rpool/dump (dedicated)
Savecore directory: /var/crash
  Savecore enabled: yes
   Save compressed: on

 

検証目的でシステムを動作させたまま、すべてのメモリページを含むクラッシュダンプファイルを取得し、mdbコマンドで解析できるようにvmcore.0unix.0を取り出したいと考えています。どのようなコマンドを実行する必要がありますか。3つ選択してください。

1.     dumpadm -c all

2.     dumpadm -d swap

3.     reboot -d

4.     savecore -L

5.     savecore -f /var/crash/vmdump.0

 

正解:1,4,5

解説:

1.     正解です。dumpadm-cオプションでダンプの内容を指定できます。kernelallcurprocなどの指定が可能です。allの指定ですべてのメモリページを取得できます。

2.     dumpadm-dオプションでダンプデバイスを指定可能です。システムを動作させたままクラッシュダンプを取得する(ライブダンプを行う)場合はダンプデバイスを専用デバイス(dedicated)にする必要があります。swapZFSボリュームの場合は-d swapはエラーになります。

3.     reboot -dでも強制的にリブートしてクラッシュダンプを取得することができますが、「システムを動作させたまま」ではないので不正解です。

4.     正解です。このコマンドでシステムを動作させたままクラッシュダンプを取得できます。

5.     正解です。このコマンドで圧縮されたvmdump.0からunix.0vmcore.0を取り出すことができます。

問題42:

coreadmコマンドの実行結果が以下のようになっています。

# coreadm
     global core file pattern:
     global core file content: default
       init core file pattern: core
       init core file content: default
            global core dumps: disabled
       per-process core dumps: enabled
      global setid core dumps: disabled
 per-process setid core dumps: disabled
     global core dump logging: disabled

コアファイルの管理についての説明として正しいものを3つ選択してください。

1.     coreadm -e globalによりグローバルコアダンプが有効になる。

2.     coreadm -d processによりプロセス単位コアダンプが無効になる。

3.     プロセス単位コアダンプを無効にすると自動的にグローバルコアダンプも無効になる。

4.     プロセス単位コアダンプの保存先は変更できない。

5.     coreadmによるコアファイルの管理は非大域ゾーン内でも設定可能である。

6.     coreadmコマンドで出力される情報は/etc/coreadm.confファイルに格納されている。

7.     coreadm -g /var/cores/core.%f.%p.%z はグローバルコアファイルのコンテンツを指定している。

 

正解:1,2,5

解説:

1.     正解です。-eオプションで有効にしています。なお、グローバルコアダンプファイルの所有者はrootでその他のユーザーには一切のアクセス権がありません。

2.     正解です。-dオプションで無効にしています。なお、プロセス単位コアダンプファイルの所有者はプロセスの所有者になるので、コアファイルをrootのみに限定してアクセスさせるべき環境ではプロセス単位コアダンプを無効化します。

3.     プロセス単位コアダンプとグローバルコアダンプはそれぞれ独立して有効化/無効化できます。

4.     プロセス単位コアダンプの保存先はcoreadm -i initコアのパターンを変更してシステム全体に反映(継承)させるか、coreadm -p で各ユーザーレベルで変更することができます。

5.     正解です。非大域ゾーン内の指定のディレクトリにコアファイルは保存されます。

6.     Solaris11では/etc/coreadm.confファイルは存在しません。coreadmコマンドによる構成変更はすべてcoreadmサービスのプロパティとして管理されます。

7.     グローバルコアファイルのコンテンツの指定には-Gオプションを使用します。-gはグローバルコアファイルのパターンの指定になり、%fは実行ファイル名、%pはプロセスID%zはゾーン名を意味します。