このマニュアルでは、Solaris 10 オペレーティングシステムに含まれる機能について、新しい機能だけでなく、Solaris 9 OS が 2002 年 5 月にはじめて配布されたあとに拡張されたものも含めて概説します。この章では、現在のリリースである Solaris 10 10/08 リリースで導入された新機能の概要を示します。第 2 章Solaris 10 5/08 リリースの新機能では、前リリースである Solaris 10 5/08 リリースで導入された新機能について説明します。第 3 章Solaris 10 8/07 リリースの新機能では、Solaris 10 8/07 リリースで導入された新機能について説明します。第 4 章Solaris 10 11/06 リリースの新機能では、Solaris 10 11/06 リリースで導入された新機能について説明します。第 5 章Solaris 10 6/06 リリースの新機能では、Solaris 10 6/06 リリースで導入された新機能について説明します。第 6 章Solaris 10 1/06 リリースの概要では、Solaris 10 1/06 リリースで導入された新機能について説明します。第 7 章Solaris 10 3/05 リリースの概要では、Solaris 10 3/05 リリースで導入された新機能について説明します。第 7 章Solaris 10 3/05 リリースの概要には、Software Express リリースで導入された新機能の一覧をリリース別に並べて掲載してあります。
Solaris 10 10/08 リリースでは、次のインストール機能と拡張機能が追加されました。
Solaris 10 10/08 以降のリリースでは、ZFS ルートプールのインストールとブートを行えます。
次の各インストールプログラムは、ZFS ルートプールの初期インストールを実行します。
Solaris テキストインストーラは、ZFS ルートプールの初期インストールを実行します。そのインストール中に、UFS ファイルシステム、ZFS ルートプールのいずれをインストールするかを選択できます。インストール中に 2 つのディスクを選択することで、ミラー化 ZFS ルートプールを設定できます。あるいは、インストール後に別のディスクを接続または追加することによってミラー化 ZFS ルートプールを作成することもできます。ZFS ルートプール内では、ZFS ボリューム上にスワップおよびダンプデバイスが自動的に作成されます。
詳細な手順については、Chapter 3, 「Installing With the Solaris Interactive Text Installer for ZFS Root Pools (Planning and Tasks),」 in 『Solaris 10 Installation Guide: Basic Installations』を参照してください。
カスタム JumpStart では、ZFS ストレージプールの作成と起動 ZFS ファイルシステムの指定を行うプロファイルを作成できます。新しい ZFS プロファイルキーワードを使用すると、初期インストールで ZFS ルートプールがインストールされます。ZFS プロファイルには一連の限られたキーワードが含まれます。
JumpStart と ZFS の詳細については、Chapter 9, 「Installing a ZFS Root Pool With JumpStart,」 in 『Solaris 10 Installation Guide: Custom JumpStart and Advanced Installations』を参照してください。
Solaris Live Upgrade では次の作業を実行できます。
UFS ルート (/) ファイルシステムを ZFS ルートプールに移行する
lucreate コマンドを使って ZFS ブート環境を作成し終わったら、そのブート環境上で、luupgrade コマンドや luactivate コマンドといったほかの Solaris Live Upgrade コマンドを使用することができます。ZFS で Solaris Live Upgrade を使用する方法の詳細については、Chapter 12, 「Solaris Live Upgrade and ZFS (Overview),」 in 『Solaris 10 10/08 Installation Guide: Solaris Live Upgrade and Upgrade Planning』を参照してください。
Solaris 10 10/08 リリースでは、次のシステム管理機能および拡張機能が追加されました。
以降の節では、ZFS ファイルシステムの新機能を概説します。これらの新機能の詳細は、『Solaris ZFS 管理ガイド』を参照してください。
ZFS インストールおよびブートのサポート – Solaris 10 10/08 以降のリリースでは、ZFS ルートファイルシステムのインストールとブートを行えます。ZFS ルートファイルシステムをインストールするには、JumpStart 機能の初期インストールオプションを使用できます。Solaris Live Upgrade 機能を使えば、UFS ルートファイルシステムを ZFS ルートファイルシステムに移行できます。スワップおよびダンプデバイスの ZFS サポートも提供されます。
ZFS データセットをマウント解除しないでロールバックする – Solaris 10 10/08 以降のリリースでは、データセットをマウント解除しないでロールバックすることができます。この機能は、マウント解除処理を強制的に行う zfs rollback -f オプションが不要になったことを意味します。-f オプションは今後はサポートされず、指定しても無視されます。
zfs send コマンドの機能拡張 – Solaris 10 10/08 リリースでは、zfs send コマンドに次の拡張機能が追加されました。
1 つのスナップショットのすべての増分ストリームを累積スナップショットに送信できます。次に例を示します。
# zfs list NAME USED AVAIL REFER MOUNTPOINT pool 428K 16.5G 20K /pool pool/fs 71K 16.5G 21K /pool/fs pool/fs@snapA 16K - 18.5K - pool/fs@snapB 17K - 20K - pool/fs@snapC 17K - 20.5K - pool/fs@snapD 0 - 21K - # zfs send -I pool/fs@snapA pool/fs@snapD > /snaps/fs@combo |
この構文は、fs@snapA から fs@snapD までのすべての増分スナップショットを fs@combo に送信する方法を示しています。
元のスナップショットからの増分ストリームを送信してクローンを作成できます。増分ストリームを受け入れるには、元のスナップショットが受信側にすでに存在している必要があります。次に例を示します。
# zfs send -I pool/fs@snap1 pool/clone@snapA > /snaps/fsclonesnap-I . . # zfs receive -F pool/clone < /snaps/fsclonesnap-I |
指定されたスナップショットまでのすべての下位ファイルシステムの複製ストリームを送信できます。受信時には、すべてのプロパティー、スナップショット、下位ファイルシステム、およびクローンが維持されます。次に例を示します。
# zfs send -R pool/fs@snap > snaps/fs-R |
増分複製ストリームを送信できます。
zfs send -R -[iI] @snapA pool/fs@snapD |
拡張された例については、『Solaris ZFS 管理ガイド』を参照してください。
ファイルシステムデータ専用の ZFS 割り当ておよび予約 – Solaris 10 10/08 以降のリリースでは、データセットの割り当てと予約が提供されます。これらの容量消費計算時には、スナップショットやクローンなどの子孫は含まれません。既存の ZFS 割り当ておよび予約機能は、以前の Solaris リリースのままです。
refquota プロパティーは、1 つのデータセットで消費できる容量を制限します。このプロパティーは、使用可能な容量に強い制限値を適用します。この強い制限値には、スナップショットやクローンなどの下位データで使用される容量は含まれません。
refreservation プロパティーは、1 つのデータセットに対して保証される最小限の容量を設定します。下位データは含まれません。
たとえば、studentA に 10G バイトの refquota を設定すると、「基準」容量として 10G バイトの強い制限値を設定することができます。柔軟性を高めるために、20G バイトの割り当て制限を設定して、studentA のスナップショットを管理することもできます。
# zfs set refquota=10g tank/studentA # zfs set quota=20g tank/studentA |
ZFS ストレージプールのプロパティー – Solaris 10 10/08 リリースでは、ZFS ストレージプールの新しいプロパティー情報が提供されます。
すべてのプール属性の表示 – zpool get all pool コマンドを使えば、プールのすべてのプロパティー情報を表示できます。次に例を示します。
# zpool get all users NAME PROPERTY VALUE SOURCE users size 16.8G - users used 194K - users available 16.7G - users capacity 0% - users altroot - default users health ONLINE - users guid 14526624140147884971 - users version 10 default users bootfs - default users delegation on default users autoreplace off default users cachefile - default users failmode wait default |
cachefile プロパティー – このリリースでは、プール構成の情報をキャッシュする場所を制御する cachefile プロパティーが追加されています。システムの起動時に、キャッシュ内のすべてのプールが自動的にインポートされます。ただし、インストール環境とクラスタ化環境では、プールが自動的にインポートされないようにするために、この情報を別の場所にキャッシュすることが必要になる場合もあります。
プール構成を別の場所にキャッシュするようにこのプロパティーを設定し、あとで zpool import -c コマンドを使用してインポートすることができます。ほとんどの ZFS 構成で、このプロパティーは使用されません。
cachefile プロパティーは持続性を持たず、ディスクには格納されません。このプロパティーは、プール情報をキャッシュしないように指定するために以前の Solaris リリースで使用されていた temporary プロパティーに代わるものです。
failmode プロパティー – このリリースでは、デバイスの接続が失われたことによる壊滅的なプール障害やプールの全デバイスの障害が発生した場合の動作を決定する failmode プロパティーが追加されています。failmode プロパティーの値は、wait、continue、または panic に設定できます。デフォルト値は wait です。これは、デバイスを再接続するか障害の発生したデバイスを交換し、zpool clear コマンドでエラーをクリアーする必要があることを意味します。
failmode プロパティーは、ほかの設定可能な ZFS プロパティーと同様に、プールの作成前または作成後に設定することができます。次に例を示します。
# zpool set failmode=continue tank # zpool get failmode tank NAME PROPERTY VALUE SOURCE tank failmode continue local |
# zpool create -o failmode=continue users mirror c0t1d0 c1t1d0 |
ZFS コマンド履歴の拡張 (zpool history) – Solaris 10 10/08 以降のリリースでは、zpool history コマンドに次の新機能が用意されています。
ZFS ファイルシステムのイベント情報が表示されます。次に例を示します。
# zpool history users History for 'users': 2008-07-10.09:43:05 zpool create users mirror c1t1d0 c1t2d0 2008-07-10.09:43:48 zfs create users/home 2008-07-10.09:43:56 zfs create users/home/markm 2008-07-10.09:44:02 zfs create users/home/marks 2008-07-10.09:44:19 zfs snapshot -r users/home@yesterday |
長形式を表示するための -l オプション。この形式には、ユーザー名、ホスト名、および処理の実行先となったゾーンが含まれます。次に例を示します。
# zpool history -l users History for 'users': 2008-07-10.09:43:05 zpool create users mirror c1t1d0 c1t2d0 [user root on corona:global] 2008-07-10.09:43:13 zfs create users/marks [user root on corona:global] 2008-07-10.09:43:44 zfs destroy users/marks [user root on corona:global] 2008-07-10.09:43:48 zfs create users/home [user root on corona:global] 2008-07-10.09:43:56 zfs create users/home/markm [user root on corona:global] 2008-07-10.09:44:02 zfs create users/home/marks [user root on corona:global] 2008-07-11.10:44:19 zfs snapshot -r users/home@yesterday [user root on corona:global] |
内部イベント情報を表示するための -i オプション。この情報は診断目的で使用できます。次に例を示します。
# zpool history -i users History for 'users': 2008-07-10.09:43:05 zpool create users mirror c1t1d0 c1t2d0 2008-07-10.09:43:13 [internal create txg:6] dataset = 21 2008-07-10.09:43:13 zfs create users/marks 2008-07-10.09:43:48 [internal create txg:12] dataset = 27 2008-07-10.09:43:48 zfs create users/home 2008-07-10.09:43:55 [internal create txg:14] dataset = 33 2008-07-10.09:43:56 zfs create users/home/markm 2008-07-10.09:44:02 [internal create txg:16] dataset = 39 2008-07-10.09:44:02 zfs create users/home/marks 2008-07-10.09:44:19 [internal snapshot txg:21] dataset = 42 2008-07-10.09:44:19 [internal snapshot txg:21] dataset = 44 2008-07-10.09:44:19 [internal snapshot txg:21] dataset = 46 2008-07-10.09:44:19 zfs snapshot -r users/home@yesterday |
ZFS ファイルシステムのアップグレード (zfs upgrade) – Solaris 10 10/08 以降のリリースでは、zfs upgrade コマンドを使用することで、新しいファイルシステム拡張に基づいて既存の ZFS ファイルシステムをアップグレードできます。ZFS ストレージプールには、プール拡張を既存のストレージプールに提供する同様のアップグレード機能が備わっています。
次に例を示します。
# zfs upgrade This system is currently running ZFS filesystem version 2. The following filesystems are out of date, and can be upgraded. After being upgraded, these filesystems (and any 'zfs send' streams generated from subsequent snapshots) will no longer be accessible by older software versions. VER FILESYSTEM --- ------------ 1 datab 1 datab/users 1 datab/users/area51 |
アップグレードされたファイルシステムやそれらのアップグレード済みファイルシステムから zfs send コマンドによって作成されたすべてのストリームは、以前のリリースのソフトウェアが実行されているシステムからはアクセス不可能となります。
ZFS の委任管理 – Solaris 10 10/08 リリース以降、ZFS 管理作業を実行するための細粒度アクセス権を非特権ユーザーに委任できるようになりました。
zfs allow と zfs unallow の各コマンドを使ってアクセス権を付与および削除できます。
委任管理を使用する機能をプールの delegation プロパティーを使って変更できます。次に例を示します。
# zpool get delegation users NAME PROPERTY VALUE SOURCE users delegation on default # zpool set delegation=off users # zpool get delegation users NAME PROPERTY VALUE SOURCE users delegation off local |
デフォルトでは、delegation プロパティーは有効になっています。
別個の ZFS ロギングデバイスの設定 – 同期トランザクションの POSIX 要件を満たすために、ZFS インテントログ (ZIL) が提供されています。たとえば、多くの場合、データベースがシステムコールから戻るときは、そのトランザクションが安定したストレージデバイス上に置かれている必要があります。NFS やその他のアプリケーションでは、データの安定性を確保するために fsync() も使用できます。デフォルトでは、ZIL はメインストレージプール内のブロックから割り当てられます。しかし、NVRAM や専用ディスクなど、別個の ZIL デバイスを ZFS ストレージプール内で使用することにより、Solaris 10 10/08 のパフォーマンスを向上できる可能性があります。
ZIL 用のログデバイスは、データベースのログファイルとは関連がありません。
ZFS ロギングデバイスの設定は、ストレージプールの作成時または作成後に行えます。ログデバイスの設定例については、『Solaris ZFS 管理ガイド』を参照してください。
ZFS 中間データセットの作成 – Solaris 10 10/08 以降のリリースでは、-zfs create、zfs clone、および zfs rename コマンドで p オプションを使用すると、中間データセットがまだ存在しない場合にそれをすばやく作成することができます。
たとえば、ZFS データセット (users/area51) を datab ストレージプールに作成します。
# zfs list NAME USED AVAIL REFER MOUNTPOINT datab 106K 16.5G 18K /datab # zfs create -p -o compression=on datab/users/area51 |
作成処理中に中間データセットが存在していれば、この処理は正常に完了します。
指定したプロパティーは、中間データセットではなく、ターゲットデータセットに適用されます。次に例を示します。
# zfs get mountpoint,compression datab/users/area51 NAME PROPERTY VALUE SOURCE datab/users/area51 mountpoint /datab/users/area51 default datab/users/area51 compression on local |
中間データセットは、デフォルトのマウントポイントで作成されます。中間データセットに対する追加のプロパティーはすべて無効になります。次に例を示します。
# zfs get mountpoint,compression datab/users NAME PROPERTY VALUE SOURCE datab/users mountpoint /datab/users default datab/users compression off default |
詳細は、zfs(1M) のマニュアルページを参照してください。
ZFS ホットプラグの拡張 – Solaris 10 10/08 以降のリリースでは、取り外されたデバイスへの ZFS の応答がより効果的に行われるようになったほか、挿入されたデバイスを自動的に識別する機構が用意されました。
zpool replace コマンドを使用しなくても、既存のデバイスを同等のデバイスに置き換えることができます。
autoreplace プロパティーは、自動デバイス交換を制御します。オフに設定されている場合、管理者が zpool replace コマンドを使ってデバイス交換を開始する必要があります。オンに設定されている場合、そのプールに以前属していたデバイスと物理的に同じ位置にある新しいデバイスは、いずれも自動的にフォーマットされ、置き換えられます。デフォルトの動作は「オフ」です。
システムの実行中にデバイスが物理的に取り外された場合、デバイスやホットスペアが取り外されている間のストレージプールの状態は REMOVED になります。可能であれば、取り外されたデバイスはホットスペアデバイスで置き換えられます。
デバイスをいったん取り外してから挿入すると、デバイスはオンラインになります。デバイスを挿入し直すときにホットスペアがアクティブになっていた場合は、オンライン処理が完了すると、そのホットスペアが取り外されます。
デバイスの着脱時の自動検出はハードウェアに依存しているため、すべてのプラットフォームには対応していない可能性があります。たとえば、USB デバイスは挿入時に自動的に構成されます。これに対し、SATA ドライブを構成する際には、cfgadm -c configure コマンドを使用しなければならない可能性があります。
ホットスペアは、オンラインおよび使用可能かどうか定期的に確認されます。
詳細は、zpool(1M) のマニュアルページを参照してください。
ZFS スナップショットの再帰的な名前変更 ( zfs rename -r) – Solaris 10 10/08 以降のリリースでは、zfs rename -r コマンドを使用することで、すべての子孫 ZFS スナップショットの名前変更を再帰的に行えます。
たとえば、1 組の ZFS ファイルシステムのスナップショットを取ります。
# zfs snapshot -r users/home@today # zfs list NAME USED AVAIL REFER MOUNTPOINT users 216K 16.5G 20K /users users/home 76K 16.5G 22K /users/home users/home@today 0 - 22K - users/home/markm 18K 16.5G 18K /users/home/markm users/home/markm@today 0 - 18K - users/home/marks 18K 16.5G 18K /users/home/marks users/home/marks@today 0 - 18K - users/home/neil 18K 16.5G 18K /users/home/neil users/home/neil@today 0 - 18K - |
そして翌日に、それらのスナップショットの名前を変更します。
# zfs rename -r users/home@today @yesterday # zfs list NAME USED AVAIL REFER MOUNTPOINT users 216K 16.5G 20K /users users/home 76K 16.5G 22K /users/home users/home@yesterday 0 - 22K - users/home/markm 18K 16.5G 18K /users/home/markm users/home/markm@yesterday 0 - 18K - users/home/marks 18K 16.5G 18K /users/home/marks users/home/marks@yesterday 0 - 18K - users/home/neil 18K 16.5G 18K /users/home/neil users/home/neil@yesterday 0 - 18K - |
スナップショットは、再帰的に名前を変更できるデータセットにすぎません。
ZFS で GZIP 圧縮が使用可能になった – Solaris 10 10/08 以降のリリースでは、ZFS ファイルシステム上で、lzjb 圧縮のほかに gzip 圧縮も設定できます。圧縮は、gzip (デフォルト) と指定することも、gzip-N (N は 1 - 9) と指定することもできます。次に例を示します。
# zfs create -o compression=gzip users/home/snapshots # zfs get compression users/home/snapshots NAME PROPERTY VALUE SOURCE users/home/snapshots compression gzip local # zfs create -o compression=gzip-9 users/home/oldfiles # zfs get compression users/home/oldfiles NAME PROPERTY VALUE SOURCE users/home/oldfiles compression gzip-9 local |
ZFS ユーザーデータの複数コピーの格納 – ZFS ファイルシステムは可能であれば自動的に、信頼性機能としてメタデータを異なるディスク上に複数回格納します。この機能は、「ditto ブロック」として知られています。 Solaris 10 10/08 リリース以降、zfs set copies コマンドを使用して、ファイルシステムごとにユーザーデータの複数のコピーも保存されるように指定できます。次に例を示します。
# zfs set copies=2 users/home # zfs get copies users/home NAME PROPERTY VALUE SOURCE users/home copies 2 local |
使用できる値は 1、2、または 3 です。デフォルト値は 1 です。これらのコピーは、ミラー化構成または RAID-Z 構成などのプールレベルの冗長性を補うものです。
このプロパティーの使用方法の詳細については、『Solaris ZFS 管理ガイド』を参照してください。
次の各機能は、Solaris OS の以前のリリースで導入されたものです。
ZFS コマンドの履歴 (zpool history) – Solaris 10 8/07 リリースでは、プール状態の情報を変更する、正常に実行された zfs および zpool コマンドが、ZFS によって自動的に記録されます。この機能によって、ユーザーや Sun のサポート担当者は実行された「正確な」ZFS コマンドを特定し、エラーシナリオのトラブルシューティングを行うことができます。
ストレージプールの状態情報の改善 (zpool status) – Solaris 10 8/07 リリースでは、zpool status -v コマンドを使用して、永続的なエラーが発生しているファイルの一覧を表示できます。以前は、find -inum コマンドを使用して、表示された i ノードの一覧からファイル名を特定する必要がありました。
ZFS および Solaris iSCSI の改善 – Solaris 10 8/07 リリースでは、ZFS ボリュームに shareiscsi プロパティーを設定すれば、ZFS ボリュームを Solaris iSCSI ターゲットデバイスとして作成できます。この方法は、Solaris iSCSI ターゲットをすばやく設定するのに便利です。次に例を示します。
# zfs create -V 2g tank/volumes/v2 # zfs set shareiscsi=on tank/volumes/v2 # iscsitadm list target Target: tank/volumes/v2 iSCSI Name: iqn.1986-03.com.sun:02:984fe301-c412-ccc1-cc80-cf9a72aa062a Connections: 0 |
iSCSI ターゲットが作成されたら、iSCSI イニシエータを設定します。Solaris iSCSI イニシエータの設定方法については、『Solaris のシステム管理 (デバイスとファイルシステム)』の第 14 章「Solaris iSCSI ターゲットおよびイニシエータの構成 (手順)」を参照してください。
ZFS ボリュームを iSCSI ターゲットとして管理する方法の詳細は、『Solaris ZFS 管理ガイド』を参照してください。
ZFS プロパティーの改善
ZFS xattr プロパティー – Solaris 10 8/07 リリースでは、xattr プロパティーを使用して、特定の ZFS ファイルシステムの拡張属性を無効または有効にできます。デフォルト値は on です。
ZFS canmount プロパティー – Solaris 10 8/07 リリースでは、canmount プロパティーを使用して、zfs mount コマンドでデータセットをマウントできるかどうかを指定します。
ZFS ユーザープロパティー – Solaris 10 8/07 リリースでは、ZFS は、内部統計情報をエクスポートしたり ZFS ファイルシステムの動作を制御したりできる標準のネイティブプロパティーに加えて、ユーザープロパティーもサポートします。ユーザープロパティーは ZFS の動作には影響しませんが、これらを使用すると、使用環境内で意味のある情報をデータセットに注釈として付けることができます。
ZFS ファイルシステム作成時のプロパティーの設定 – Solaris 10 8/07 リリースでは、ファイルシステムの作成後だけでなく、ファイルシステムの作成時にもプロパティーを設定できます。
次の 2 つの例は、同等の構文を示しています。
# zfs create tank/home # zfs set mountpoint=/export/zfs tank/home # zfs set sharenfs=on tank/home # zfs set compression=on tank/home |
あるいは、ファイルシステムの作成時にプロパティーを設定します。
# zfs create -o mountpoint=/export/zfs -o sharenfs=on -o compression=on tank/home |
すべての ZFS ファイルシステム情報の表示 – Solaris 10 8/07 リリースでは、さまざまな書式の zfs get コマンドを使用することで、データセットを指定しなくてもすべてのデータセットに関する情報を表示できます。以前のリリースでは、zfs get コマンドですべてのデータセットに関する情報を取得することはできませんでした。
次に例を示します。
# zfs get -s local all tank/home atime off local tank/home/bonwick atime off local tank/home/marks quota 50G local |
新しい zfs receive -F オプション – Solaris 10 8/07 リリースでは、-zfs receive コマンドに新しい F オプションを使用すれば、受信を行う前に強制的にファイルシステムを最新のスナップショットにロールバックできます。このオプションの使用は、ロールバックの発生から受信処理の開始までの間にファイルシステムが変更されるときに必要となる場合があります。
再帰的な ZFS スナップショット – Solaris 10 11/06 リリースでは、再帰的なスナップショットを使用できます。zfs snapshot コマンドを使用してファイルシステムのスナップショットを作成するときに -r オプションを使用すると、その子孫のファイルシステムすべてについてスナップショットを再帰的に作成できます。また、スナップショットを破棄するときに -r オプションを使用すると、すべての子孫スナップショットが再帰的に破棄されます。
ダブルパリティー RAID-Z (raidz2) – Solaris 10 11/06 リリースでは、複製された RAID-Z 構成にシングルパリティーまたはダブルパリティーを使用できます。これは、データを失うことなく、それぞれ 1 つまたは 2 つのデバイスの障害に耐えられることを意味します。raidz2 キーワードを指定すれば、ダブルパリティー RAID-Z 構成にすることができます。また、raidz または raidz1 キーワードを指定すれば、シングルパリティー RAID-Z 構成にすることができます。
ZFS ストレージプールデバイスのホットスペア – Solaris 10 11/06 リリース以降、ZFS のホットスペア機能を使用して、1 つ以上のストレージプールで障害やフォルトの発生したデバイスを置き換えるためのディスクを特定できます。デバイスを「ホットスペア」として指定しておくと、プールのアクティブデバイスで障害が発生した場合に、そのデバイスがホットスペアに自動的に置き換えられます。ストレージプールのデバイスを手動でホットスペアに置き換えることもできます。
ZFS クローンによる ZFS ファイルシステムの置換 (zfs promote) – Solaris 10 11/06 リリースでは、zfs promote コマンドを使用して、既存の ZFS ファイルシステムをそのファイルシステムのクローンで置き換えることができます。この機能は、ファイルシステムの代替バージョンでテストを実行してから、そのファイルシステムの代替バージョンをアクティブファイルシステムに置き換えるときに利用できます。
ZFS とゾーンの改善 – Solaris 10 11/06 リリースでは、ZFS とゾーンの相互関係が改善されました。ゾーンがインストールされている Solaris システムでは、zoneadm clone 機能を使用して、既存のソース ZFS zonepath からユーザーのシステムのターゲット ZFS zonepath にデータをコピーできます。ZFS 複製機能を使用しても、非大域ゾーンは複製できません。zoneadm clone コマンドを使用する必要があります。詳細については、『Solaris のシステム管理 (Solaris コンテナ : 資源管理と Solaris ゾーン)』を参照してください。
ZFS ストレージプールをアップグレードする (zpool upgrade) – Solaris 10 6/06 リリース以降、zpool upgrade コマンドを使用して、ストレージプールを新しいバージョンにアップグレードし、最新機能を最大限に利用できます。また、古いバージョンのプールを実行している場合、zpool status コマンドによって通知されます。
デバイスエラーのクリアー – Solaris 10 6/06 以降のリリースでは、zpool clear コマンドを使用して、デバイスまたはプールに関連するエラー数をクリアーできます。以前は、zpool online コマンドを使ってプール内のデバイスがオンラインになったときに、エラー数がクリアーされていました。
破棄されたプールの回復 – Solaris 10 6/06 リリースでは、zpool import -D コマンドを使用して、以前に zpool destroy コマンドで破棄されたプールを回復できます。
ZFS バックアップコマンドと復元コマンドの名前の変更 – Solaris 10 6/06 リリースでは、zfs backup コマンドと zfs restore コマンドの機能をより正確に表すために、コマンドの名前が zfs send と zfs receive に変更されました。それらの機能は、ZFS データストリーム表現を保存および復元することです。
コンパクト NFSv4 ACL 形式 – Solaris 10 6/06 以降のリリースでは、次の 3 つの NFSv4 ACL 形式を使用できます。 verbose (冗長)、positional (定位置)、compact (コンパクト) です。ACL を設定および表示するときに、新しいコンパクトおよび定位置 ACL 形式を使用できます。3 つの ACL 形式は、chmod コマンドを使ってすべて設定できます。コンパクトおよび定位置の ACL 形式を表示するには、ls -V コマンドを使用します。冗長 ACL 形式を表示するには、ls -v コマンドを使用します。
デバイスを一時的にオフラインにする – Solaris 10 6/06 以降のリリースでは、zpool offline -t コマンドを使用して、デバイスを一時的にオフラインにすることができます。システムを再起動すると、デバイスは自動的に ONLINE 状態に戻ります。
ZFS と障害マネージャーの統合 – Solaris 10 6/06 以降のリリースでは、プールの障害やデバイスの障害を診断して報告できる ZFS 診断エンジンが組み込まれています。プールまたはデバイスの障害に関連するチェックサム、入出力、およびデバイスのエラーも報告されます。診断されたエラー情報は、コンソールと /var/adm/messages ファイルに出力されます。また、報告されたエラーからの回復に関する詳細情報も、zpool status コマンドを使用して表示できます。
これらの改善と変更の詳細は、『Solaris ZFS 管理ガイド』を参照してください。
関連する ZFS 機能については、次の新機能に関する項を参照してください。
Solaris 10 10/08 リリースでは次の Solaris インストールツールが拡張され、ZFS ファイルシステムをサポートするようになりました。
UFS または ZFS ルートファイルシステムをインストールする Solaris 対話式テキストインストーラ。Solaris 10 10/08 リリースのデフォルトのファイルシステムは、これまでと同じ UFS です。
ZFS ストレージプールの作成と起動 ZFS ファイルシステムの指定を行うプロファイルを設定するカスタム JumpStart 機能。
SolarisTM Live Upgrade 機能を使って UFS ルートファイルシステムを ZFS ルートファイルシステムに移行します。lucreate および luactivate コマンドが拡張され、ZFS プールとそのファイルシステムをサポートするようになりました。lustatus および ludelete コマンドの動作は、以前の Solaris リリースと同様です。
インストール中に 2 つのディスクを選択することでミラー化 ZFS ルートプールを設定します。あるいは、インストール後に別のディスクを接続または追加することによってミラー化 ZFS ルートプールを作成することもできます。
ZFS ルートプール内の ZFS ボリューム上で、スワップおよびダンプデバイスを自動的に作成します。
詳細は、『Solaris ZFS 管理ガイド』を参照してください。
以前の Solaris 10 リリースについては、次に示す、Solaris インストールツールの制限された ZFS ファイルシステムサポートを参照してください。
カスタム JumpStart - JumpStart プロファイルには、ZFS ファイルシステムを含めることはできません。ただし、ZFS ストレージプールから次のスクリプトを実行して、インストールサーバーまたはインストールクライアントの設定を行うことは可能です。
setup_install_server
add_install_server
add_install_client
Live Upgrade – 元のブート環境を保持したまま、ZFS ストレージプールを新しい環境へ移行します。現在のところ、ZFS を起動ルートファイルシステムとして使用することはできないため、既存の ZFS ファイルシステムがブート環境内にコピーされることはありません。
Solaris の初期インストール - 初期インストール時には、ZFS ファイルシステムは認識されません。ただし、インストール用として ZFS ストレージプールを持つディスクデバイスを指定しなかった場合は、インストール後、zpool import コマンドを使ってストレージプールを復元することができます。詳細は、zpool(1M) のマニュアルページを参照してください。
再インストールのほとんどのケースでは、ZFS ファイルのバックアップを作成してから初期インストールを行うことをお勧めします。
Solaris のアップグレード – ZFS ファイルシステムおよびストレージプールは保持されます。
SunVTSTM 7.0 Patch Set 3 は従来の 3 層アーキテクチャーモデルに従っており、ブラウザベースのユーザーインタフェース、JavaTM テクノロジベースの中間サーバー、および診断エージェントを含んでいます。SunVTS Patch Set 3 に含まれる拡張機能は次のとおりです。
ディスクおよびネットワークのテストで、デバイスの選択/選択解除機能が提供されています。
ブラウザベースの UI と TTY UI で、論理テスト (LT) オプションのチェックボックスがサポートされています。
fputest とキャッシュテストが x86 プラットフォーム向けに拡張されました。
disktest が更新され、ファイルシステムパーティション上で書き込みテストをまったく実行しなくなりました。
SunVTS の詳細については、http://docs.sun.com/app/docs/prod/test.validate を参照してください。
Solaris 10 10/08 以降のリリースでは、スピンカウント (spins) を表示していた DTrace lockstat プローブが、スピン時間をナノ秒で返すようになりました。lockstat プロバイダのインタフェースと lockstat コマンドのオプションは、変更されていません。
Solaris 10 10/08 リリースでは、次のシステム資源機能と拡張機能が追加されました。
Solaris 10 10/08 リリースには次の Solaris ゾーン拡張機能が含まれています。
接続時に更新 – 新しいホストのゾーン依存パッケージとその関連パッチのバージョンが同じか新しい場合には、zoneadm attach で -u オプションを使用すると、ゾーン内のそれらのパッケージが新しいホストに合わせて更新されます。ソースのホストよりも古いバージョンと新しいバージョンのパッケージとパッチが新しいホスト内で混在している場合、接続処理中の更新は許可されません。また、このオプションを使えば、sun4u から sun4v への移行など、異なるマシンクラス間での自動移行も可能になります。
詳細については、zoneadm(1M) のマニュアルページと『Solaris のシステム管理 (Solaris コンテナ : 資源管理と Solaris ゾーン)』を参照してください。
共有 IP ゾーンのデフォルトルーターを設定する機能 – zonecfg ユーティリティーの net リソースに、共有 IP 非大域ゾーン用の defrouter プロパティーが追加されました。このプロパティーを使えば、ネットワークインタフェースのデフォルトルーターを設定できます。
詳細については、zonecfg(1M) のマニュアルページと『Solaris のシステム管理 (Solaris コンテナ : 資源管理と Solaris ゾーン)』を参照してください。
ZFS ゾーンパスの許可 – Solaris 10 10/08 以降のリリースでは、ZFS 上へのゾーンパスの設定とシステムのアップグレードを行えます。ゾーンパスが ZFS 上に設定されたゾーンの場合、システムのアップグレード時に使用できるのは Solaris Live Upgrade だけです。詳細については、『Solaris のシステム管理 (Solaris コンテナ : 資源管理と Solaris ゾーン)』を参照してください。
Solaris Live Upgrade を含むすべての Solaris インストール方式で、findroot コマンドを使って x86 システムのブート対象ディスクスライスを指定するようになりました。これまで、ブート対象のディスクスライスは、root コマンド root (hd0.0.a) を使って明示的に指定されていました。この情報は、GRUB が使用する menu.lst ファイル内に格納されます。menu.lst ファイル内のエントリのもっとも一般的な形式を、次に示します。
findroot (rootfs0,0,a) kernel$ /platform/i86pc/kernel/$ISADIR/unix module$ /platform/i86pc/$ISADIR/boot_archive |
findroot コマンドはブートデバイスの種類にかかわらず、ターゲットとなるディスクを発見する機能を備えています。さらに、findroot コマンドでは、UFS ルートでのシステムブートに加え、ZFS ルートでのシステムブートのサポートが強化されています。findroot コマンドに加え、スライス上の署名ファイルの名前 (<mysign>, 0, a) も指定するようになりました。ブート署名は、システムの /boot/grub/bootsign ディレクトリ内に格納されます。署名ファイルの名前は、使用するインストール方式に応じて異なります。
詳細については、『Solaris のシステム管理 (基本編)』の「findroot コマンドの実装」を参照してください。
Solaris 10 10/08 以降のリリースの Solaris 64 ビットオペレーティングシステムは、x86 プラットフォーム上で最大 256 基のプロセッサをサポートします。以前のリリースの Solaris OS は 64 ビットモードの場合に、x86 プラットフォーム上で最大 64 基のプロセッサしかサポートしていませんでした。
256 基のプロセッサのサポートは、ユーザーに次の利点を提供します。
最大 256 基のプロセッサが搭載された既存の x86 システム上で、このリリースの Solaris を使用できます。
将来 64 基を超えるプロセッサが搭載されたマシンにアップグレードしても、OS をアップグレードする必要がありません。
このリリースの Solaris を使用するユーザーは、より大規模なマシンを購入しても、オペレーティングシステムを含むソフトウェアスタックの全体を維持できます。
Solaris 10 10/08 リリースでは、次のシステムパフォーマンス機能と拡張機能が追加されました。
Solaris SPARC ブートストラッププロセスの再設計により、Solaris x86 ブートアーキテクチャーとの共通部分が増えました。
改善された Solaris ブートアーキテクチャーにより、直接ブート、RAM ディスクベースのブート、および RAM ディスクミニルートが SPARC プラットフォーム上で可能になります。これらの実現技術がサポートする機能は、次のとおりです。
追加のファイルシステムタイプからのシステムのブート。例: ZFS ファイルシステム。
DVD、NFS、または HTTP からのソフトウェアインストール用の単一ミニルートのブート。
その他の改善点としては、ブート時間の大幅な短縮、柔軟性の向上、保守の必要性の低下などが挙げられます。
このアーキテクチャー再設計の一部として、以前は Solaris x86 プラットフォームでしか使用できなかった Solaris ブートアーカイブと bootadm コマンドが、Solaris SPARC のブートアーキテクチャーの一部として統合化されました。
SPARC と x86 のブートアーキテクチャーの主な違いは、ブート時のブートデバイスとファイルの選択方法にあります。SPARC システムでは引き続き、OpenBoot PROM (OBP) が主要管理インタフェースとして使用され、OBP コマンドを使ってブートオプションが選択されます。x86 プラットフォームでは、BIOS と GRUB (GRand Unified Bootloader) メニュー経由でそれらのオプションが選択されます。
Solaris 10 10/08 リリースでは、UNIX カーネルを直接読み込んでブートする機能を使用できるのは、SPARC プラットフォーム上だけです。x86 プラットフォームでは引き続き、マルチブート形式のブートが使用されます。
Solaris SPARC ブートの実装は変更されましたが、その変更は、SPARC システムをブートするための管理手順には影響を及ぼしません。システム管理者が行うブート作業は、ブートアーキテクチャーの再設計前と同じままです。
詳細については、次を参照してください。
bootadm(1M) および boot(1M) のマニュアルページ
Solaris システムのブート手順については、『Solaris のシステム管理 (基本編)』の第 12 章「Solaris システムのブート (手順)」
カーネルが、既存の Intel SSSE3、SSE4.1、SSE4.2、および AMD SSE4A 命令セットの存在を検出するようになりました。この機能により、これらのハードウェア機能を必要とするプログラムの読み込みと実行が可能となります。dis(1) が、これらの命令セット拡張に含まれる命令の逆アセンブリをサポートするようになりました。
ある特定のバイナリのハードウェア機能要件の一覧については、file(1) コマンドのマニュアルページを参照してください。ある特定のマシンのローダーがサポートするハードウェア機能の一覧については、isainfo(1) のマニュアルページを参照してください。
Solaris 10 10/08 リリースでは、次のネットワーク機能と拡張機能が追加されました。
この機能を使用すると、Solaris 管理コンソール (SMC) 経由でユーザーを管理する際に、2 人以上の人員が必要になります。責務分離は規則によって実現されます。System Administrator 役割は、ユーザーの作成を行いますが、パスワードや権限の割り当ては行えません。Security Administrator 役割は、パスワードや権限の割り当てを行いますが、ユーザーの作成は行えません。
責務分離は、政府関連顧客の認定要件の 1 つになっています。SMC でこの機能がサポートされたため、セキュリティーレベルの証明が実現しやすくなりました。
詳細については、『Solaris Trusted Extensions Configuration Guide』の「Create Rights Profiles That Enforce Separation of Duty」を参照してください。
この機能は、SHA256 および SHA512 ダイジェストアルゴリズムに基づく crypt(3C) プラグインの追加ペアを提供します。このプラグインは、FIPS 140-2 承認済みアルゴリズムを使用する crypt(3C) ハッシュを提供し、MD5 ベースのハッシュの使用を廃止します。
pam_list モジュールは、ユーザーとネットグループのリストに基づいて特定ホスト上のユーザーのアカウントを検証する機能を提供します。このモジュールは、passwd_compat モードによるアカウント検証のすばやい代替手段として使用できます。
詳細については、pam_list(5) のマニュアルページを参照してください。
Solaris 10 10/08 リリースでは、次のデスクトップ機能と拡張機能が追加されました。
Solaris 10 10/08 以降のリリースでは、Adobe® Reader 8.1.2 が Solaris OS に含まれています。この新しいバージョンの Adobe Reader には、大幅に改善されたユーザーインタフェース、共有レビューのサポート、いくつかのセキュリティー修正など、多数の新機能が含まれています。
詳細については、http://blogs.adobe.com/acroread/2008/02/adobe_reader_812_for_linux_and.html を参照してください。
Solaris 10 10/08 以降のリリースでは、Solaris OS に Adobe Flash Player 9.0.124.0 が含まれています。このバージョンの Flash Player の新機能は次のとおりです。
H.264 ビデオおよび HE-AAC オーディオコーデックのサポート
Solaris OS のフルスクリーンモード
マルチコアのサポート、ハードウェアおよびイメージのスケーリング、マルチスレッド対応のビデオデコード、Flash Player キャッシュ、および Flash Media Server バッファリングによるパフォーマンス向上
詳細については、http://www.adobe.com/products/flashplayer/productinfo/features/ を参照してください。
Solaris 10 10/08 リリースでは、次のネットワーク機能と拡張機能が追加されました。
RFC 4566 のセッション記述プロトコル (SDP) は、セッション通知、セッション招待、およびその他の形式のマルチメディアセッション起動を行うためのマルチメディアセッションを記述する際に使用されます。SDP は、タイプやエンコーディング、トランスポートプロトコル、セッション名、目的、所有者、その他のセッション記述メタデータなどのメディア詳細を、参加者に伝えます。
libcommputil(3LIB) ライブラリは、SDP 記述の解析と構文への準拠チェックを行うための公開インタフェースを提供します。このライブラリには、SDP メッセージを生成し、そのメッセージをバイト文字列に変換するためのインタフェースも含まれています。SDP は主に、セッション起動プロトコル (SIP) によって使用されます。libcommputil(3LIB) ライブラリがあれば、Solaris SIP 開発者は、Solaris プラットフォーム上で SIP アプリケーションを開発する際にこれらのインタフェースを活用できます。
詳細は、libcommputil(3LIB) のマニュアルページを参照してください。
Solaris SIP スタックは、SIP アプリケーション開発者に次の 2 つの新機能を提供するようになりました。
エンドツーエンドトラフィックの測定 – エンドツーエンドトラフィック測定機能が追跡するアクティビティーは、次のとおりです。
スタックによって送受信されたバイトの合計数
送受信された SIP 要求および応答の合計数
送受信された SIP 要求の数をメソッド別に集計したもの
送受信された SIP 応答の数を応答コード別に集計したもの
SIP ダイアログまたはトランザクションのロギング – SIP ロギング機能は、ダイアログまたはトランザクションのロギングを有効化および無効化できます。1 つのダイアログまたはトランザクション内で交換されるすべての SIP メッセージがそのダイアログまたはトランザクションの終了時に収集され、アプリケーションによって指定されたログファイル内に格納されます。SIP ロギング機能は、開発者が呼び出し履歴の追跡やデバッグを行う際に役立ちます。
Solaris 10 10/08 リリースでは、次のデバイス管理機能と拡張機能が追加されました。
Solaris 10 10/08 リリース以降、Solaris OS にデバイスのリタイアメント機構が新しく追加され、障害管理アーキテクチャー (FMA) でデバイスを「故障中」として切り離すことができるようになりました。この機能では、障害のあるデバイスを安全な方法で自動的に非アクティブにして、データ消失、データ破壊、パニック、およびシステムのダウンタイムを回避できます。リタイアメント処理は、デバイスのリタイア後のシステムの安定性を考慮して、安全な方法で実行されます。
重要なデバイスがリタイアされることはありません。リタイア済みのデバイスを手動で交換する必要がある場合は、手動交換の手順に加え、デバイスの交換後に fmadm repair コマンドを使用して、デバイスが交換されたことをシステムに認識させます。
fmadm による修復手順は次のとおりです。
fmadm faulty -a コマンドで、障害のあるデバイスを特定します。
# fmadm faulty STATE RESOURCE / UUID -------- --------------------------------------------------------------------- faulty <fmri> |
fmadm repair コマンドを使用して障害をクリアーします。
# fmadm repair <fmri> |
fmadm faulty コマンドを再度実行して、障害がクリアーされたことを確認します。
# fmadm faulty -a STATE RESOURCE / UUID |
詳細は、fmadm(1M) のマニュアルページを参照してください。
デバイスのリタイアメントに関してユーザーに通知するための一般的なメッセージが、コンソールに表示され、/var/adm/messages ファイルにも書き込まれます。次に例を示します。
Aug 9 18:14 starbug genunix: [ID 751201 kern.notice] NOTICE: One or more I/O devices have been retired |
prtconf コマンドを使用して、特定のリタイア済みデバイスを確認することもできます。次に例を示します。
# prtconf . . . pci, instance #2 scsi, instance #0 disk (driver not attached) tape (driver not attached) sd, instance #3 sd, instance #0 (retired) scsi, instance #1 (retired) disk (retired) tape (retired) pci, instance #3 network, instance #2 (driver not attached) network, instance #3 (driver not attached) os-io (driver not attached) iscsi, instance #0 pseudo, instance #0 . . . |
Solaris 10 10/08 以降のリリースでは、Hitachi Adaptable Modular Storage (AMS) および Hitachi Workgroup Modular Storage システムが MPxIO と統合されています。デュアルコントローラの Adaptable Modular Storage および Workgroup Modular Storage モデルは、MPxIO 環境内の複数のパスを完全に活用できます。さらにこのサポートにより、Sun Cluster 環境内の Hitachi ストレージシステムで MPxIO のフル機能が使えるようになります。
Solaris 10 10/08 リリースでは、次のドライバ機能と拡張機能が追加されました。
nv_sata は、NVIDIA ck804/mcp55 とその互換 SATA コントローラ用の、ホットプラグ機能に対応した SATA HBA ドライバです。
詳細は、nv_sata(7D) のマニュアルページを参照してください。
新しい LSI mega_sas ドライバがサポートするコントローラは、次のとおりです。
Dell PERC 5/E、5/i、6/E、および 6/i RAID コントローラ
IBM ServeRAID-MR10k SAS/SATA コントローラ
LSI MegaRAID SAS 8308ELP、8344ELP、84016E、8408ELP、8480ELP、8704ELP、8704EM2、8708ELP、8708EM2、8880EM2、および 8888ELP コントローラ
mega_sas ドライバがサポートする RAID 機能は、次のとおりです。
RAID レベル 0、1、5、および 6、および RAID スパン 10、50、および 60
オンライン容量拡張 (OCE)
オンライン RAID レベル移行 (RLM)
アレイ再構築 (OCE/RLM) 中に発生したシステム電源断後の自動再開
最大 1M バイトの構成可能ストライプサイズ
バックグラウンドデータ完全性の整合性検査
メディアを走査して修復するための巡回読み取り
64 台の論理ドライブのサポート
最大 64T バイトの論理ユニット番号 (LUN) のサポート
自動再構築
グローバルかつ専用のホットスペアのサポート
LSI MegaRAID 製品の詳細については、Web サイト http://www.lsi.com/storage_home/products_home/internal_raid/megaraid_sas/index.html を参照してください。
Solaris 10 10/08 以降のリリースでは、ixgbe ドライバが Solaris OS に統合されています。ixgbe は 10 ギガビット PCI Express Ethernet ドライバであり、Intel 82598 10 ギガビット Ethernet コントローラをサポートします。
Solaris 10 10/08 以降のリリースでは、Adaptec Advanced RAID コントローラ用の HBA ドライバ aac が、SPARC プラットフォームをサポートするようになりました。
詳細は、aac(7D) のマニュアルページを参照してください。
Solaris 10 10/08 リリースでは、次の追加ソフトウェア機能と拡張機能が追加されました。
Perl データベースインタフェース (DBI) は、特定のデータベースバックエンドと対話するための汎用データベースインタフェースです。DBD::Pg は、Perl アプリケーションが DBI を介して PostgreSQL データベースと対話できるようにする PostgreSQL ドライバです。
詳細については、次を参照してください。
PostgreSQL は、オープンソースの高度なリレーショナルデータベース管理システム (RDBMS) です。PostgreSQL 8.3 Version の重要な機能は、統合されたテキスト検索、XML サポート、および各種領域でのパフォーマンス向上です。
詳細については、コミュニティーの Web サイト http://www.postgresql.org/ を参照してください。
Solaris 10 10/08 リリースでは、次の言語サポート機能が追加されました。
ハングル LE (Language Engine) は、ユーザー体験の向上をもたらす新しい韓国語入力方式です。ハングル LE の機能は次のとおりです。
ユーザーフレンドリな GUI
より便利になったハングルまたは Hanja 入力機能
詳細については、ハングル LE のヘルプを参照してください。
Solaris 10 10/08 リリースでは、次のフリーウェア機能と拡張機能が追加されました。
C-URL は、HTTP、FTP、TFTP、SFTP、TELNET などのもっとも一般的なインターネットプロトコルをプログラムによって使用できるようにするユーティリティーライブラリです。C-URL は、各種アプリケーションでも広く使用されています。
詳細は、http://curl.haxx.se/ を参照してください。
Libidn は、Stringprep (RFC 3454)、Nameprep (RFC 3491)、Punycode (RFC 3492)、および IDNA (RFC 3490) 仕様の実装を提供します。このライブラリは、新しい機能性と利便性を Solaris OS に提供します。
詳細は、次のリソースを参照してください。
LibGD は、グラフィックス変換および操作ユーティリティーライブラリです。このライブラリは、Web ベースのアプリケーションフレームワークで広く使用されます。LibGD のコマンド行ユーティリティーは、使いやすいグラフィックス変換機能を提供します。
詳細は、http://www.libgd.org/ を参照してください。
TIDY は、HTML パーサーです。このパーサーは、HTML の lint(1) に相当します。TIDY は、静的および動的な HTML ページの正確さを検査する際に役立ちます。
詳細は、http://tidy.sourceforge.net/ を参照してください。