Oracle Solaris 11に向けた最初の一歩を踏み出す

著者:Glynn Foster
2012年10月公開、2014年7月更新

Oracle Solaris 11のインストールの概要(ソフトウェアの新規インストールやその他のシステム構成の管理に関する手順を含む)

Oracle Solaris 11には、ハンズフリーの自動化されたサーバーベースのインストール、サーバーにも適した対話型のテキストベースのインストール、完全なデスクトップ環境を含むインタラクティブなグラフィカル・インストーラなど、複数のインストレーション・オプションがあります。

OTNは、オラクルのテクノロジーについて理解し、十分な情報を得た上で決断を下すために役立ちます。さまざまな記事、ダウンロード可能なソフトウェア、ドキュメントなどが揃っています。ぜひOTNに登録して、業務に必要なテクニカルリソースを入手してください。

この記事では、対話型のグラフィカル・インストーラに焦点を当てていますが、ここで説明する概念の多くは、Oracle Solaris 11の他のインストレーション・オプションにも当てはまります。Oracle Solaris 10を使用しているユーザーは、Oracle Solaris 10からOracle Solaris 11への移行ガイドに目を通すことを強くお勧めします。

グラフィカル・インストーラは、正式には「Live Media」と呼ばれています。これはOracle SolarisをRAMにブートできることを意味しています。つまり、既存のオペレーティング・システムへの影響はまったくありません。ロードされたOracle Solarisを自由に試して、実際にシステムにインストールするかどうかを判断できます。

Oracle Solaris 11 Live Media for x86をダウンロードできます。これは約800 MBのイメージファイルです。イメージファイルをダウンロードしたら、DVDライターでディスクに書き込みます。あるいは、ISOイメージを仮想マシンで直接使用するか、またはOracle Integrated Lights Out Manager(ILOM)リモートコンソールを介して使用することもできます。

Live Mediaは、長期間の使用を目的としたものではありません。たとえば、このシステムに加えた変更は、システムをシャットダウンすると失われます。したがって、必然的に次のステップは、Oracle Solarisをシステムにインストールすることになります。これを簡単にするため、Live Mediaのデスクトップには「Oracle Solarisのインストール」アイコンが配置されています。しかし、Oracle Solarisをシステムにインストールする前に、少し立ち止まってインストレーション・オプションを見てみましょう。

インストレーション・オプション

Oracle Solaris 11をどこにインストールするかについては、次のような選択肢があります。

仮想マシンにインストールする

Oracle Solaris 11の使用を開始する最も簡単な方法は、既存のオペレーティング・システム上の仮想マシンにインストールすることです。図1に、Oracle VM VirtualBoxを使用してApple OS XにインストールされたOracle Solaris 11を示します。

図1

図1. Apple OS X上のOracle Solaris

Oracle Solaris 11は、仮想マシンによって提供される仮想化デバイスを認識することが保証されています。Oracle Solaris 11を全画面モードで実行していると、実際のところ、その下に別のオペレーティング・システムが存在することを忘れてしまうこともあります。

このアプローチの欠点の1つは、2つのオペレーティング・システムを同時に実行できる十分な量のメモリが必要なことです。良好なパフォーマンスを得るため、少なくとも2 GBのメモリを搭載することをお勧めします。また、オペレーティング・システムをインストールするために最低7 GBのディスク領域を確保する必要があります。

Oracle VM VirtualBoxは無料でダウンロードできるハイパーバイザーであり、ホスト・プラットフォームとしてMicrosoft Windows、Apple OS X、Linux、Oracle Solarisをサポートしています。もちろん、Oracle Solarisは、その多くのゲスト・プラットフォームの1つです。オラクルでは、このアプローチを簡単にお試しいただけるように、特定の用途(たとえば、Oracle Solaris 11で使用可能な開発者ツールを評価するなど)に焦点を合わせたOracle VM VirtualBox用のプリインストール済み仮想マシンもいくつかご用意しています。

Live Mediaからブートした後のインストールプロセスは簡単です。デスクトップにあるOracle Solarisのインストールアイコンをクリックするだけで、グラフィカル・インストーラが起動します(図2を参照)。

図2

図2. Oracle Solarisグラフィカル・インストーラ

図2からわかるように、インストールプロセスは単純であり、いくつかの基本的な質問に答えてパッケージを導入するだけです。インストールされるパッケージのセットは固定されています。Oracle Solarisが正常にインストールされた後、パッケージマネージャを使用してインストールを簡単にカスタマイズできます。

インストールプロセスが完了したら、リブートして新しいOracle Solaris環境を起動するか、Oracle Solarisのインストールログを確認します(図3を参照)。

図3

図3. インストールログの確認

ベアメタルにスタンドアロン・システムとしてインストールする

Oracle Solaris 11専用のx86システムがある場合、このインストールプロセスは、OSを仮想マシンにインストールする場合と実際には同じです。Live Mediaをブートし、グラフィカル・インストーラを起動するだけです。

このアプローチの最大の問題は、使用するハードウェアデバイス用の適切なドライバがOracle Solaris 11に存在するかどうかです。Live Mediaを実行すると、デバイスがどの程度サポートされているかを簡単に判断できます。Live Mediaのデスクトップにデバイスドライバ・ユーティリティのアイコンがあります(図4を参照)。このアイコンをダブルクリックして、スキャンが完了するまで待ちます。

Live Mediaからブートするとき、デフォルトユーザーのログイン名とパスワードはjackです。rootユーザーになる必要がある場合は、パスワードとしてsolarisを使用できます。Oracle Solarisのインストール中に初期ユーザーがどのように設定されるかについては、後で詳しく説明します。

図4

図4. Oracle Solarisのデバイスドライバ・ユーティリティ

ドライバが見つからない場合、ヘルプを探す場所を示すポインタがユーティリティに表示されます。ここではGoogleも役立ちますが、本当に行き詰まった場合は、必要なドライバが提供されるか、またはドライバ問題の解決に必要な新しいシステムやコンポーネントを購入するまでの間、Oracle VM VirtualBoxを使用する方が得策となることもあります。

Oracle Solaris 11をSPARCベースのシステムにインストールする場合は、対話型テキストインストーラを使用する必要があります。Live Mediaとは異なり、このインストール方法では、サーバー指向の環境に適した一連のソフトウェアがインストールされます。これにはデスクトップ環境は含まれていません。初期インストールの後、パッケージマネージャを使用してsolaris-desktopパッケージをインストールすれば、完全なデスクトップ環境が得られます。

マルチブートシナリオでベアメタルにインストールする

マルチブートシナリオでは、Oracle Solaris 11を既存のオペレーティング・システムとともにベアメタルにインストールします。このシナリオは最も複雑で、いくつかの準備が必要です。

Oracle Solaris 11 Live MediaにはGNOMEパーティション・エディタのGPartedが含まれており、これを使用してハードディスクのパーティションを作成できます。「Linuxスワップ」タイプのパーティションを作成する必要があります。Oracle Solarisインストーラはこのタイプのパーティションを認識します。

既存のOSがWindowsの場合、Oracle Solarisブートローダーは問題なくWindowsを認識します。既存のOSがLinuxの場合は、GRUB構成ファイルを必ずバックアップしてください。これは、そのエントリをOracle SolarisのGRUBメニューに追加しなければならないためです。詳細については、Oracle Solaris 11.2システムのインストールを参照してください。

ユーザー

これでOracle Solaris 11がインストールされたので、次に、インストール中に作成したユーザーIDに割り当てられた権限を使用してシステムをどのように管理できるかについて説明します。

インストール中に、図5のようにユーザーアカウントを作成したことを思い出してください。

図5

図5. Oracle Solarisグラフィカル・インストーラでのユーザーの構成

インストーラに入力したパスワードは1つだけでした。このパスワードが、rootアカウントと初期ユーザーアカウントの両方のパスワードとして使用されます。ただし、rootパスワードはすぐに期限切れになります。これは、次のようにrootに切り替えようとするとわかります。

 larry@solaris:~$ su Password: su: Password for user 'root' has expired New Password: Re-enter new Password: su: password successfully changed for root 

管理者権限を必要とするGUIツールでも、最初にrootパスワードを入力するよう求められます。図6に示すように、rootユーザーのパスワードの有効期限が切れており、新しいパスワードを入力する必要があります。

図6

図6. 新しいrootパスワードの入力を求めるプロンプト

rootの役割

/etc/passwdファイルを見ると、rootが定義されています。

 larry@solaris:~$ cat /etc/passwd  root:x:0:0:Super-User:/root:/usr/bin/bash daemon:x:1:1::/: bin:x:2:2::/usr/bin: sys:x:3:3::/: adm:x:4:4:Admin:/var/adm: lp:x:71:8:Line Printer Admin:/: ... 

ただし、rootとしてログインする際は苛立ちを感じるかもしれません。セキュリティ上の理由から、Oracle Solaris 11ではrootが従来のユーザーアカウントとして定義されていません。/etc/user_attrファイルを見ると、rootは役割として定義されています(リスト1を参照)。

 larry@solaris:~$ cat /etc/user_attr # # The system provided entries are stored in different files # under "/etc/user_attr.d". They should not be copied to this file. # # Only local changes should be stored in this file. # This line should be kept in this file or it will be overwritten. # root::::type=role larry::::lock_after_retries=no;profiles=System Administrator;roles=root 

リスト1. rootが役割として定義されていることの確認

また、インストーラによって作成されたユーザーIDにも、rootの役割がデフォルトで割り当てられています。したがって、rootとしてログインすることはできませんが、root役割に切り替えることはできます。そうすると、rootのパスワードを入力するよう求められます。

suを使用する際のデフォルトのユーザー名はrootであり、「root」と入力する必要はありません。前述のデフォルトパスワードを変更したときの例を参照してください。

 larry@solaris:~$ su root Password: root@solaris:~# 

sudoコマンド

root役割が割り当てられることに加えて、インストール時に作成されたユーザーは/etc/sudoersファイルにも追加されます。/etc/sudoersファイルは詳細に文書化されており、特定のユーザーが何を実行できるかについてきめ細かいルールを定義できます。インストール中に作成されたユーザーの例では、そのユーザーは(あたかもrootであるかのように)すべてのことを実行できるように設定されています。インストール中に作成されたユーザーのエントリは次のとおりです。

 larry ALL=(ALL) ALL 

上記のエントリは、ユーザーlarryが任意のホストで任意のユーザーとして任意のコマンドを実行できることを意味します。ユーザーの権限を微調整する方法の詳細については、sudoersのmanページを参照してください。

したがって、理論的には、特権操作(たとえば、ファイルシステムのルートにファイルを書き込むなど)を行うためにroot役割に切り替える必要はありません。

 larry@solaris:~$ touch /file1 touch: cannot touch `/file1': Permission denied 

ただし、同じコマンドの前にsudoを付けると、この操作を完了するために必要な適切な権限が与えられます。

 larry@solaris:~$ sudo touch /file1 Password: 

sudoによって要求されるパスワードは、rootのパスワードではなく、自分自身のユーザーアカウントのパスワードであることに注意してください。

ここで重要なのは、Oracle Solaris 11のデフォルトのインストールでは、すべてが「そのまますぐに使用できる状態」にセットアップされるということです。インストール時に作成したユーザーIDを使用してシステムを完全に管理できます。最初から適切な権限が設定されているため、システムサービスの管理などのシステム管理作業を適切に行うことができます。これについて、次のセクションで説明します。

Service Management Facility(SMF)

Oracle Solaris 11は、Service Management Facility(SMF)を通じてシステムサービスを管理します。GUIも用意されてはいますが、サービスを管理するためのより一般的で強力な方法は、コマンドラインから次のコマンドを使用することです。svcsはサービスのステータスを報告し、svcadmはサービスインスタンスを操作します。たとえば、svcsを実行すると現在動作中のサービスが一覧表示されます(リスト2を参照)。

 larry@solaris:~$ svcs |more STATE STIME FMRI legacy_run 19:20:46 lrc:/etc/rc2_d/S47pppd legacy_run 19:20:46 lrc:/etc/rc2_d/S89PRESERVE disabled 19:21:28 svc:/system/ocm:default online 19:12:50 svc:/system/early-manifest-import:default online 19:12:50 svc:/system/svc/restarter:default online 19:13:00 svc:/network/tcp/congestion-control:vegas online 19:13:01 svc:/network/sctp/congestion-control:cubic online 19:13:01 svc:/network/sctp/congestion-control:newreno online 19:13:01 svc:/network/sctp/congestion-control:vegas ... online 19:25:48 svc:/network/smtp:sendmail online 19:25:51 svc:/network/location:default online 19:25:52 svc:/system/filesystem/autofs:default online 19:25:53 svc:/system/name-service/cache:default 

リスト2. 現在動作中のサービスの一覧表示

SMFには、起動スクリプトを通じてUNIXサービスを使用するという従来の方法と比較して多くの利点があります。主な利点は、マニフェストファイルで各サービスに関するメタデータを指定できることです。これにより、サービス間の依存関係を指定できるため、独立したサービスを並行して起動できるようになり、システムのブート時間が短縮されます。また、サービスに障害が発生した場合、互いに正しい順序でサービスを再起動できます。たとえば、-lオプションを付けてsendmailサービスを見ると、使用可能なすべての情報が表示されます(リスト3を参照)。

 larry@solaris:~$ svcs -l sendmail fmri svc:/network/smtp:sendmail name sendmail SMTP mail transfer agent enabled true state online next_state none state_time September 11, 2012 07:25:48 PM UTC logfile /var/svc/log/network-smtp:sendmail.log restarter svc:/system/svc/restarter:default contract_id 289 manifest /lib/svc/manifest/network/smtp-sendmail.xml manifest /etc/svc/profile/generic.xml dependency require_all/refresh file://localhost/etc/mail/sendmail.cf (online) dependency require_all/refresh file://localhost/etc/nsswitch.conf (online) dependency optional_all/none svc:/system/filesystem/autofs (online) dependency require_all/none svc:/system/filesystem/local (online) dependency require_all/none svc:/network/service (online) dependency require_all/refresh svc:/milestone/name-services (online) dependency optional_all/refresh svc:/system/identity:domain (online) dependency optional_all/none svc:/system/system-log (online) 

リスト3. サービスに関する情報の表示

リスト3の最後に、sendmailが依存しているサービスが列挙されています。sendmailが依存しているいずれかのサービスが何らかの理由で起動に失敗した場合、sendmailは起動の試行さえ行われません。

また、svcadmコマンドを使用すれば、サービスの無効化、有効化、再起動も簡単です。たとえば、このコマンドを使用してsendmailサービスを無効にするには、次のようにします。

 larry@solaris:~$ sudo svcadm disable sendmail  larry@solaris:~$ svcs -x sendmail svc:/network/smtp:sendmail (sendmail SMTP mail transfer agent) State: disabled since September 11, 2012 08:32:29 PM UTC Reason: Disabled by an administrator. See: http://support.oracle.com/msg/SMF-8000-05 See: sendmail(1M) See: /var/svc/log/network-smtp:sendmail.log Impact: This service is not running. 

svcsコマンドに-xオプションを付けると、サービス状態の説明が表示されます。

 larry@solaris:~$ svcs -x sendmail svc:/network/smtp:sendmail (sendmail SMTP mail transfer agent) State: disabled since October 5, 2011 01:52:39 AM NZDT Reason: Disabled by an administrator. See: http://sun.com/msg/SMF-8000-05 See: sendmail(1M) See: /var/svc/log/network-smtp:sendmail.log Impact: This service is not running. 

この出力には、サービス状態とサービスログファイル(/var/svc/log/network-smtp:sendmail.log)に関する詳細情報へのリンクも含まれていることに注意してください。どちらもサービス障害の追跡に非常に役立ちます。

同様に、デスクトップパネルの「管理」メニューからSMFサービスのグラフィカル・インタフェースを使用することもできます。このインタフェースでは、システムサービスの無効化、更新、再起動や各サービスインスタンスのログの確認など、コマンドラインと同じ機能の一部を実行できます(図7を参照)。

図7

図7. Oracle Solaris SMFサービスインスペクタ

Oracle Solaris 11は、デフォルトで安全な状態になっています。つまり、必須でないネットワークサービスはすべて無効になっているか、ローカルシステム自体からの接続のみをリッスンするように構成されているため、ネットワークベースの攻撃を受けるリスクが軽減されます。実際、有効になっているのはSSH(リモートログインを許可するサービス)のみです。

ネットワークの管理

最初に管理しなければならないサービスの1つは、ネットワークです。Oracle Solaris 11は、ネットワーク構成プロファイル(NCP)を使用してネットワーク構成をシステムに適用します。デフォルトでは、Live Mediaを使用しているときは自動NCPが使用されます。これは、DHCPを使用してネットワークへの接続を自動的に試行します。有線ネットワークが使用可能な場合は、常に有線ネットワークに接続します。有線ネットワークが使用できない場合は、ワイヤレス・ネットワークへの接続を試みます。

最初に見る場所は、デスクトップのトップパネルにあるネットワーク・ステータス・アイコンです。このアイコンは、有線ネットワークまたはワイヤレス・ネットワークに接続しているか、またはオフラインであるかを示します(図8を参照)。

図8a:Oracle Solarisのネットワーク・ステータス:有線接続

図8b:Oracle Solarisのネットワーク・ステータス:ワイヤレス接続

図8c:Oracle Solarisのネットワーク・ステータス:接続なし

図8. ネットワーク・ステータス・アイコンの3つの状態

このアイコンをクリックすると、「ネットワーク設定」ダイアログボックスが表示されます(図9を参照)。

図9

図9. Oracle Solarisの「ネットワーク設定」ダイアログボックス

「ネットワーク設定」ダイアログボックスから、IPバージョン4とバージョン6のアドレスや、構成されているネットワークリンク(この例では有線インタフェース)のネットワーク速度を確認できます。Oracle Solaris 11のすべてのネットワーク・インタフェースにはバニティ識別子(この例ではnet0)が割り当てられています。この識別子は、どの基盤ネットワークドライバが使用されているかを反映しなくなりました。この変更はOracle Solaris 11で新しく導入されたものです。

インストール先がノートパソコンで、ワイヤレス・ネットワークがある場合は、ステータスアイコンを右クリックすると、使用可能なワイヤレス・ネットワークのリストが表示されます(図10を参照)。

図10

図10. Oracle Solarisのワイヤレス・ネットワーク・オプション

ネットワーク構成は、SMFサービスのsvc:/network/physical:defaultを使用して管理されます。他のSMFサービスと同様に、このサービスもコマンドラインからステータスを表示できます(リスト4を参照)。

 larry@solaris:~$ svcs -l network/physical:default fmri svc:/network/physical:default name physical network interface configuration enabled true state online next_state none state_time September 11, 2012 07:17:34 PM UTC logfile /var/svc/log/network-physical:default.log restarter svc:/system/svc/restarter:default contract_id 69 manifest /lib/svc/manifest/milestone/config.xml manifest /lib/svc/manifest/network/dlmgmt.xml manifest /lib/svc/manifest/network/network-physical.xml manifest /lib/svc/manifest/network/network-ipmp.xml manifest /lib/svc/manifest/network/network-install.xml manifest /lib/svc/manifest/network/network-ipmgmt.xml manifest /lib/svc/manifest/system/name-service/upgrade.xml manifest /etc/svc/profile/site/sc_profile.xml dependency optional_all/none svc:/milestone/config (online) dependency require_all/none svc:/network/datalink-management:default (online) dependency require_all/none svc:/network/loopback (online) dependency require_all/none svc:/network/physical:upgrade (online) dependency require_all/none svc:/network/location:upgrade (online) dependency optional_all/none svc:/network/ipmp (online) dependency optional_all/none svc:/network/install (disabled) dependency require_all/none svc:/network/ip-interface-management:default (online) dependency require_all/none svc:/system/name-service/upgrade (online) dependency require_all/none svc:/network/netcfg:default (online) dependency optional_all/none svc:/system/manifest-import (online) 

リスト4. SMFサービスのステータスの表示

ネットワークを手動で管理する場合は、次のようにDefaultFixedネットワーク構成プロファイルを有効にする必要があります。

 larry@solaris:~$ sudo netadm enable -p ncp DefaultFixed Password: Enabling ncp 'DefaultFixed' 

これで、ネットワーク構成を完全に手動で制御できるようになり、管理コマンドのdladmipadmを使用してネットワークを構成できます(リスト5を参照)。

 larry@solaris:~$ dladm show-phys LINK MEDIA STATE SPEED DUPLEX DEVICE net0 Ethernet unknown 1000 full e1000g0 larry@solaris:~$ ipadm show-if IFNAME CLASS STATE ACTIVE OVER lo0 loopback ok yes -- larry@solaris:~$ sudo ipadm create-ip net0 larry@solaris:~$ ipadm show-if IFNAME CLASS STATE ACTIVE OVER lo0 loopback ok yes -- net0 ip down no -- larry@solaris:~$ sudo ipadm create-addr -T static -a 10.0.2.18/24 net0/v4static larry@solaris:~$ sudo ipadm show-if IFNAME CLASS STATE ACTIVE OVER lo0 loopback ok yes -- net0 ip ok yes -- larry@solaris:~$ ipadm show-addr ADDROBJ TYPE STATE ADDR lo0/v4 static ok 127.0.0.1/8 net0/v4static static ok 10.0.2.18/24 lo0/v6 static ok ::1/128 

リスト5. ネットワークの手動での管理

この記事では、手動でのネットワーク構成、ネットワーク構成プロファイル、ネーミングサービスの管理については説明しません。手動でのネットワーク構成の詳細については、Oracle Solaris 11製品ドキュメントを参照してください。

Oracle Solarisのファイルシステム構造

では、Oracle Solaris 11のファイルシステム構造はどのようになっているのでしょうか。ルートディレクトリ(/)は、Windowsオペレーティング・システムに慣れている人にとって理解するのは難しくありません。これはドライブの最上位ディレクトリ(C:\\)のようなものです。主な違いは、Oracle Solarisのディレクトリ構造は/で始まる単一の階層であるという点です。したがって、Windowsとは異なり、ファイル名を指定するときにデバイス(C:\\D:\\など)を指定する必要はありません

Oracle Solarisは、デフォルトのルート・ファイルシステムとしてZFSを使用しています。ZFSはデータ整合性が非常に高く、データのバックアップや暗号化などのさまざまなタスクを実行できるユーティリティが数多く含まれています。

表1に、各種コマンドが格納されたOracle Solarisのディレクトリを示します。これらのディレクトリは、環境変数$PATHの値によって指定されています。

表1. ディレクトリとその内容

ディレクトリ 内容 デフォルトパス
/usr/bin 必須ではないコマンドバイナリ(シングルユーザー・モードでは不要)。すべてのユーザー向け。
/usr/gnu/bin よく使われるコマンドのGNU版。GNU版と競合していないコマンドは/usr/binに含まれています。Linuxユーザーは、$PATHの先頭に/usr/gnu/binを設定すると、使い慣れた環境に近くなります。 ×
/usr/sbin 必須ではないシステムバイナリ。各種ネットワークサービスのデーモンなど。

表2に、Oracle Solaris 11で注意すべきその他のディレクトリを示します。

表2. Oracle Solaris 11のその他のディレクトリとその内容

ディレクトリ 内容
/opt オプションのアプリケーション・ソフトウェア・パッケージ。
/usr/local このホストに固有の、ローカルデータ用の3次階層。通常は、/usr/local/bin//usr/local/lib//usr/local/share/などのサブディレクトリがあります。
/etc 静的なシステム構成データ。
/var システムの通常の運用中にその内容が継続的に変更される可変ファイル(ログ、スプールファイル、一時的な電子メールファイルなど)。
/home ユーザーのホームディレクトリ。保存されたファイルや個人設定などが含まれます。

ホームディレクトリは、実際には/export/homeから自動マウントされます。詳細については、自動マウントされたホームディレクトリのブログを参照してください。

Image Packaging System(IPS)

Oracle Solaris 11はCDに収まるように設計されているため、追加のソフトウェアをインストールしなければならない場合があります。Oracle Solaris 10との主な違いは、Oracle Solaris 11で新しく導入されたImage Packaging System(IPS)です。IPSの主な目標の1つは、アプリストアのようなネットワーク・リポジトリ・ベースの配信メカニズムを提供することにあります。Oracle Solarisでは、1つのリポジトリが事前構成されており、リポジトリをさらに増やすのも簡単です。このリポジトリから、グラフィカル・クライアントまたはコマンドライン・クライアントを使用して、デフォルトのインストールに含まれていない他の数多くのソフトウェア・コンポーネントを簡単にインストールできます。

IPSの重要な機能は、ソフトウェア依存関係の自動チェックです。インストールするパッケージを選択すると、IPSによって他の必要なパッケージがすべて特定され、それらもインストールされます。一般的なソフトウェア群(デスクトップ環境やWeb AMPスタックなど)のインストールに使用できるグループパッケージがいくつかあります。

パッケージの検索とインストール

パッケージは、パッケージマネージャGUI(「システム」>「管理」メニューにある)(図11を参照)またはコマンドラインを使用して管理できます。

図11

図11. Oracle Solarisパッケージマネージャ

コマンドラインで使用する主なコマンドは、pkgです。pkgコマンドは常に、listsearchinfoinstallなどのサブコマンドと組み合わせて実行します。

たとえば、pkg listコマンドは、システムに現在インストールされているパッケージのリストを表示します。現在インストールされているパッケージは、IFOの最初の列がiになっています(リスト6を参照)。2列目がfのパッケージは凍結されていることを示し、3列目がrまたはoのパッケージは名前が変更されたか廃止されたことを示します。

 larry@solaris:~$ pkg list NAME (PUBLISHER) VERSION IFO archiver/gnu-tar 1.26-0.175.1.0.0.24.0 i-- audio/audio-utilities 0.5.11-0.175.1.0.0.24.0 i-- codec/flac 1.2.1-0.175.0.0.0.0.0 i-- codec/libtheora 1.1.1-0.175.1.0.0.15.0 i-- codec/ogg-vorbis 2.30.0-0.175.1.0.0.12.0 i-- codec/speex 1.2-0.175.1.0.0.15.0 i-- communication/im/pidgin 2.10.5-0.175.1.0.0.24.0 i-- compress/bzip2 1.0.6-0.175.1.0.0.24.0 i-- compress/gzip 1.4-0.175.1.0.0.24.0 i-- compress/p7zip 9.20.1-0.175.1.0.0.24.0 i-- compress/unzip 6.0-0.175.1.0.0.24.0 i-- compress/xz 5.0.1-0.175.1.0.0.24.0 i-- ... x11/xkill 1.0.3-0.175.1.0.0.24.1317 i-- x11/xlock 0.5.11-0.175.1.0.0.24.1317 i-- x11/xmag 1.0.4-0.175.1.0.0.24.1317 i-- x11/xvidtune 1.0.2-0.175.1.0.0.24.1317 i-- 

リスト6. インストールされているパッケージの確認

パッケージを検索するには、searchサブコマンドを使用します。たとえば、wiresharkというグラフィカルなネットワーク・プロトコル・アナライザを探す場合は、pkg searchを使用します。-pフラグを指定すると、パッケージ名のみが出力されます。このフラグを省略すると、検索文字列を含むパッケージ内のすべてのもの(ファイル、ディレクトリ、リンクなど)が一覧表示されます。

 larry@solaris:~$ pkg search -p wireshark PACKAGE PUBLISHER pkg:/diagnostic/wireshark/wireshark-common@1.8.2-0.175.1.0.0.24.0 solaris pkg:/diagnostic/wireshark@1.8.2-0.175.1.0.0.24.0 solaris 

特定のパッケージに関する詳細情報を取得するには、pkg infoを取得します。ローカル・ファイルシステムにインストールされていないパッケージを照会する場合は、-r(remote)フラグを付ける必要があります(リスト7を参照)。

 larry@solaris:~$ pkg info -r wireshark Name: diagnostic/wireshark Summary: Graphical network protocol analyzer Category: Applications/Internet State: Not installed Publisher: solaris Version: 1.8.2 Build Release: 5.11 Branch: 0.175.1.0.0.24.0 Packaging Date: September 4, 2012 05:18:59 PM Size: 3.33 MB FMRI: pkg://solaris/diagnostic/wireshark@1.8.2,5.11-0.175.1.0.0.24.0:20120904T171859Z 

リスト7. パッケージの詳細情報の取得

wiresharkパッケージの内容を見るには、pkg contentsコマンドを使用します(リスト8を参照)。このコマンドは、パッケージの内容がどこにインストールされているかを確認するときに役立ちます。

 larry@solaris:~$ pkg contents -r wireshark PATH etc etc/security etc/security/exec_attr.d etc/security/exec_attr.d/diagnostic:wireshark usr usr/sbin usr/sbin/wireshark usr/share usr/share/applications usr/share/applications/wireshark.desktop usr/share/man usr/share/man/man1 usr/share/man/man1/wireshark.1 usr/share/pixmaps usr/share/pixmaps/wireshark.png 

リスト8. パッケージの内容の一覧表示

パッケージが持つ依存関係を表示するには、リスト9に示すように、少し複雑なコマンドが必要です。

 larry@solaris:~$ pkg contents -r -o fmri -t depend wireshark FMRI pkg:/diagnostic/wireshark/wireshark-common@1.8.2-0.175.1.0.0.24.0 pkg:/library/desktop/cairo@1.8.10-0.175.0.0.0.0.0 pkg:/library/desktop/gtk2@2.20.1-0.175.1.0.0.19.0 pkg:/library/desktop/pango@1.28.3-0.175.0.0.0.0.0 pkg:/library/glib2@2.28.6-0.175.1.0.0.19.0 pkg:/library/zlib@1.2.3-0.175.1.0.0.23.0 pkg:/system/library/libpcap@1.1.1-0.175.1.0.0.23.0 pkg:/system/library/math@0.5.11-0.175.1.0.0.19.0 pkg:/system/library@0.5.11-0.175.1.0.0.23.0 pkg:/x11/library/libx11@1.5.0-0.175.1.0.0.23.1314 pkg:/x11/library/libxcursor@1.1.13-0.175.1.0.0.23.1314 

リスト9. パッケージの依存関係の確認

この例では、パッケージをFMRI(Fault Management Resource Indicator)形式で出力しています。これは、特定のバージョンのパッケージを記述する正式な方法です。また、-tオプションを使用して、dependタイプのパッケージ依存関係を出力するよう指定しています。

これは、wiresharkが依存しているパッケージを特定し、それらの依存パッケージがまだインストールされていない場合はインストールすることを意味します。

最後に、パッケージをインストールする準備ができたら、pkg installコマンドを使用します(リスト10を参照)。

 larry@solaris:~$ sudo pkg install wireshark Packages to install: 3 Create boot environment: No Create backup boot environment: No Services to change: 2  DOWNLOAD PKGS FILES XFER (MB) SPEED Completed 3/3 294/294 17.5/17.5 228k/s  PHASE ITEMS Installing new actions 389/389 Updating package state database Done Updating image state Done Creating fast lookup database Done 

リスト10. パッケージのインストール

:許可されたユーザーのみがパッケージをシステムにインストールできます。そのため、pkg installコマンドの前にsudoを付ける必要があります。復習のために「ユーザー」セクションを参照してください。

パッケージリポジトリ

Oracle Solaris 11では、単一のソフトウェア・リポジトリ(http://pkg.oracle.com/solaris/release)が事前構成されています。ソフトウェア・リポジトリ全体をダウンロードすることもできるため、ダウンロードしたソフトウェア・リポジトリをお客様の社内ネットワークに設定して、ご使用の環境でネットワークが制限されている場合や、ソフトウェア・パッケージをローカルで入手できるようにしてパフォーマンスを向上させたい場合に対処できます。追加のソフトウェア・リポジトリを構成することも可能です。今後、メインのOracle Solarisリポジトリの他に、サードパーティのソフトウェア・プロバイダーが独自のリポジトリを作成して公開することが期待されます。

オラクルでは、pkg.oracle.comにあるデフォルトのreleaseリポジトリに加えて、Oracleサポート契約をご購入いただいたお客様のためにsupportリポジトリもご用意しています。supportリポジトリは平均で月1回更新されており、Oracle Solaris 11のバグ修正やセキュリティパッチを公開しています。サポートの詳細については、Oracle Premier Support for Operating Systemsを参照してください。

ワンクリックでのインストール

リポジトリを見ると、「インストール」というリンクが用意されています。図12にパッケージカタログを示します。これは、Oracle Solaris 11で使用可能なすべてのパッケージのリストです。

図12

図12. Webブラウザで見たOracle Solarisリポジトリ

「インストール」リンクをクリックすると、パッケージマネージャが起動し、インストールが開始されます。ご使用のシステムでリポジトリが構成されていない場合は、パッケージをインストールする前に必要な構成が追加されます。これは、誰でもパッケージの普及を促進できる優れた機能です。たとえば、wiresharkはこちらのリンクからインストールできます(:この記事をOracle Solarisシステム以外から読んでいる場合、Webブラウザでこのリンクをクリックしても何も起こりません)。

ブート環境

ブート環境(BE)は、Oracle Solarisの操作に不可欠なファイルおよびファイルシステムのクローンです。インストールの直後はブート環境は1つしかありませんが、時間が経つにつれて新しいブート環境が増えていきます。これはユーザーが手動で作成できるほか、パッケージマネージャによって自動的に作成されることもあります。

ブート環境とは本質的に、現在のブート環境で何らかの問題が発生した場合にOracle Solaris 11の以前のスナップショットにロールバックできるようにするものです。ブート環境は、通常はルートデータセットで構成されていますが、必要に応じて他のデータセットを含めることもできます。一部のデータセットは複数のブート環境の間で共有されます(/exportなど)。図13に、パッケージマネージャの「ブート環境の管理」ダイアログボックスを示します。

図13

図13. 「ブート環境の管理」ダイアログボックス

システム構成ファイルの変更など、システムに危険を及ぼす可能性のある作業を行うときは、何か問題が発生しても元に戻せるようにするため、事前に新しいブート環境を作成することを検討してください。新しいブート環境はbeadmユーティリティを使用して作成します。次に、be-prior-to-changesという新しいブート環境を作成する例を示します。

 larry@solaris:~$ sudo beadm create be-prior-to-changes 

この単純なコマンドを使用することが、変更を元に戻すために数時間のダウンタイムが生じるか、ほんの数秒で古いブート環境に戻せるかの分かれ目となります。したがって、Oracle Solaris 11システムを管理するためのベスト・プラクティスの一環としてブート環境を使用することをお勧めします。

Update Manager

IPSパッケージのアップデートが入手可能になると、トップパネルのアイコンでそれが通知されます(図14を参照)。

図14

図14. Oracle Solaris Update Managerの通知アイコン

このアイコンをクリックするとUpdate Managerが起動し、新しいブート環境が作成されてアップデートがインストールされます(図15を参照)。更新されたシステムは、次回のブート時にアクティブになります。システムの更新中に予期しないことが発生した場合は、古いブート環境に安全に戻してシステムを復元できます。

図15

図15. Oracle Solaris Update Manager

Solaris旧バージョンのパッケージマネージャ

長年の間、Oracle Solarisオペレーティング・システムではSVR4パッケージング・システムが使用されてきました。この名称は、これがUNIXのSystem Vリリース4バージョンに含まれていたことに由来します。Oracle Solaris 11はSVR4パッケージのインストールをサポートしており、SVR4パッケージのインストールと削除に必要なコマンドが含まれています。また、SVR4パッケージで宣言されたパッケージ依存関係を満たせるように、いくつかの互換性がシステムに追加されました。

SVR4パッケージをインストールするときは、コンソールに出力される警告に注意を払い、パッケージの内容がIPSを使用してインストールされた既存のファイルやディレクトリと競合していないことを確認する必要があります。この問題を回避する優れた方法の1つとして、Oracle Solaris 10ゾーンを利用することが挙げられます。Oracle Solaris 10ゾーンは、レガシー・アプリケーションを実行できるように配慮された互換性のある仮想環境です。

最後に

Oracle Solaris 11への移行は魅力的であると同時に、以前のバージョンとの違いにフラストレーションを覚えることもあるかもしれません。この記事の内容が、Oracle Solaris 11への移行を成功させる最初の一歩としてお役に立てば幸いです。

移行後のシステムを使用していくうちに、新たな疑問が生まれてくることと思います。そういうときは、経験豊富なOracle Solarisコミュニティが頼りになります。OTNディスカッション・フォーラムのOracle Solaris 11 for SysAdminsにぜひご参加ください。通常、回答は数時間のうちに届きます。また、Oracle Solaris 11ハウツーガイドも参考になります。これらのガイドは、オペレーティング・システムにアプリケーションを導入するときに直面する一般的な管理タスクをカバーしています。

Oracle Solaris 11をご活用いただけることを期待しています。

関連情報

Revision 1.2, 07/26/2014